]> code.delx.au - gnu-emacs/blob - src/ChangeLog
(Fconstrain_to_field): Fix behaviour on field boundaries.
[gnu-emacs] / src / ChangeLog
1 2006-01-26 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2
3 * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
4 (find_field): Set before_field to after_field when pos is at BEGV.
5 (Fline_beginning_position, Fline_end_position): Clarify
6 confusing doc string.
7
8 * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
9 string.
10
11 2006-01-26 Kenichi Handa <handa@m17n.org>
12
13 * callproc.c (Fcall_process): GCPRO error_file. Encode infile,
14 current_dir, and error_file. On reporting an error, decode them
15 back.
16
17 2006-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
18
19 * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well.
20 (re_match_2_internal) <on_failure_jump, on_failure_jump_smart>:
21 Don't check for quit, since any loop will go through fail or jump.
22
23 2006-01-24 Chong Yidong <cyd@stupidchicken.com>
24
25 * alloc.c (allocate_string_data): Update next_free immediately, to
26 reduce risk of memory clobberage.
27
28 2006-01-24 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
29
30 * xdisp.c (handle_invisible_prop): Set it->position to fix cursor
31 display when point moves across an ellipsis. If there are
32 adjacent invisible texts, don't lose the second one's ellipsis.
33 (x_produce_glyphs): Doc fix.
34
35 2006-01-23 Stefan Monnier <monnier@iro.umontreal.ca>
36
37 * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup.
38
39 2006-01-23 Kim F. Storm <storm@cua.dk>
40
41 * xdisp.c (handle_single_display_spec): Fix handling of space
42 property on char from string: set *position rather than
43 it->current.pos.
44 (produce_stretch_glyph): Reduce width of stretch glyphs so they
45 don't get wider than the window (unless truncate-lines is on).
46
47 2006-01-22 Stefan Monnier <monnier@iro.umontreal.ca>
48
49 * xterm.c: Avoid allocating Lisp data from a signal handler.
50 (x_error_message): New var to replace x_error_message_string.
51 (x_error_catcher, x_catch_errors, x_catch_errors_unwind)
52 (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler)
53 (syms_of_xterm): Use it instead of x_error_message_string.
54
55 * alloc.c (lisp_align_free): Add an assertion.
56 (make_interval, allocate_string, make_float, Fcons, Fmake_symbol)
57 (allocate_misc): If ENABLE_CHECKING is on, check we're not called from
58 a signal handler.
59
60 2006-01-21 Luc Teirlinck <teirllm@auburn.edu>
61
62 * dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix.
63
64 2006-01-21 Romain Francoise <romain@orebokech.com>
65
66 * xdisp.c (get_window_cursor_type): Fix last change.
67 Update copyright year.
68
69 2006-01-20 Eli Zaretskii <eliz@gnu.org>
70
71 * lread.c (Fload): Don't leak the file descriptor returned by
72 openp if we are going to signal an error.
73
74 * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it
75 directly to _close.
76 (sys_dup): Protect against new_fd larger than fd_info[] can handle.
77 (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly
78 to _read.
79 (sys_write): If FD is outside [0..MAXDESC) limits, pass it
80 directly to _write.
81
82 * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer
83 if it is NULL.
84
85 2006-01-20 Kenichi Handa <handa@m17n.org>
86
87 * puresize.h (BASE_PURESIZE): Increment to 1190000.
88
89 2006-01-19 Chong Yidong <cyd@stupidchicken.com>
90
91 * xdisp.c (get_window_cursor_type): Use cursor type specified by
92 the selected buffer for the echo area too.
93
94 2006-01-19 Richard M. Stallman <rms@gnu.org>
95
96 * keymap.c (Fmap_keymap): Doc fix.
97
98 * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions.
99
100 * keyboard.c (echo_char): Don't omit the space between first two
101 echoed chars.
102
103 * minibuf.c (read_minibuf): Fix previous change.
104
105 2006-01-19 Kenichi Handa <handa@m17n.org>
106
107 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
108
109 2006-01-17 Richard M. Stallman <rms@gnu.org>
110
111 * frame.c (x_frame_get_and_record_arg): Don't record Qunbound
112 value in f->param_alist.
113
114 2006-01-15 Andreas Schwab <schwab@suse.de>
115
116 * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP.
117
118 2006-01-13 Richard M. Stallman <rms@gnu.org>
119
120 * Makefile.in: Define new macro WINDOW_SUPPORT.
121 (lisp): Use it.
122 (SOME_MACHINE_LISP): Add conditionally loaded files.
123
124 2006-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
125
126 * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
127 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering.
128 (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in
129 decomposed form.
130
131 * process.c [HAVE_INTTYPES_H]: Include inttypes.h.
132 (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
133 (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
134 macro. Also try member ifr_addr when getting netmask.
135
136 2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
137
138 * fileio.c (Fexpand_file_name): Remove redundant tests.
139 Fix elimination of // so that it doesn't prevent elimination of an
140 immediately following /. or /..
141
142 2006-01-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
143
144 * gtkutil.c (xg_toggle_notify_cb): New function.
145 (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to
146 xg_toggle_notify_cb.
147 (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when
148 parameter value changes so the toggle button gets updated.
149
150 2006-01-06 Nick Roberts <nickrob@snap.net.nz>
151
152 * .gdbinit: Fix typo.
153
154 2006-01-05 Eli Zaretskii <eliz@gnu.org>
155
156 * .gdbinit: Fix last change.
157
158 2006-01-05 Kim F. Storm <storm@cua.dk>
159
160 * process.c (Fmake_network_process): Use AF_INET instead of
161 AF_UNSPEC when AF_INET6 is not defined.
162
163 2006-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
164
165 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc):
166 Don't check that the other type is known file-related one.
167
168 * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor,
169 gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac
170 OS X 10.4 and later.
171
172 2006-01-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
173
174 * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file,
175 let GTK do all image processing. Importing Emacs own pixmaps to GTK
176 looks bad for inactive tool bar items with some Gnome themes.
177
178 2006-01-04 Eli Zaretskii <eliz@gnu.org>
179
180 * .gdbinit: Avoid a warning message when x_error_quitter is not
181 compiled in.
182
183 * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support
184 for w32.
185
186 2006-01-04 Kim F. Storm <storm@cua.dk>
187
188 * process.c: Add IPv6 support.
189 (Qipv4, Qipv6): New vars.
190 (syms_of_process): Intern and staticpro them.
191 (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
192 with or without port number. Handle 4 element vector as IPv4 address
193 without port number.
194 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
195 (conv_lisp_to_sockaddr): Handle IPv6 addresses.
196 (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
197 request that address family only. :family nil or omitted means to
198 determine address family from the specified :host and :service.
199 (ifflag_table): Add missing OpenBSD IFF_ flags.
200 (server_accept_connection): Handle IPv6 addresses.
201 (init_process): Add (:family ipv4) and (:family ipv6) sub-features.
202
203 * .gdbinit: Undo last change. Instead, look at Vsystem_type to
204 determine which breakpoints to set.
205
206 2006-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
207
208 * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup.
209
210 * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c).
211
212 2006-01-03 Romain Francoise <romain@orebokech.com>
213
214 * emacs.c (main): Update copyright year.
215
216 2006-01-03 Ken Raeburn <raeburn@gnu.org>
217
218 * callproc.c (delete_temp_file): Bind file-name-handler-alist to
219 nil for the call to internal_delete_file.
220
221 2006-01-01 Ken Raeburn <raeburn@gnu.org>
222
223 * callproc.c (Fcall_process_region): Bind file-name-handler-alist
224 to nil for the call to Fwrite_region.
225
226 2005-12-31 Richard M. Stallman <rms@gnu.org>
227
228 * minibuf.c (read_minibuf): Clear out all other minibuffer windows.
229
230 2005-12-31 Eli Zaretskii <eliz@gnu.org>
231
232 * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake.
233
234 2005-12-30 Luc Teirlinck <teirllm@auburn.edu>
235
236 * textprop.c (set_text_properties): Reword description of return value.
237 Return Qnil if caller wants to remove all text properties from a
238 string and the string already has no intervals.
239
240 2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca>
241
242 * term.c (visible_cursor): New boolean var.
243 (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
244 visible_cursor.
245 (syms_of_term): Export the new var as "visible-cursor".
246
247 2005-12-30 Eli Zaretskii <eliz@gnu.org>
248
249 * .gdbinit: Tell users not to worry about GDB warnings that some
250 functions do not exist in the binary.
251
252 2005-12-30 Andreas Schwab <schwab@suse.de>
253
254 * process.c (Fnetwork_interface_info): Correctly terminate the
255 loop over ifflag_table.
256
257 2005-12-29 Richard M. Stallman <rms@gnu.org>
258
259 * lread.c (readevalloop): Test for reading a whole buffer
260 before actually reading anything. Handle all cases, including
261 START = END = nil and an already-narrowed buffer.
262 Convert END to a marker if it is a number.
263
264 * keymap.c (describe_map): Put sparse map elements into an array,
265 sort them, then output a sequence of identical bindings on one line.
266 (struct describe_map_elt): New data type.
267 (describe_map_compare): New function.
268
269 2005-12-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
270
271 * gtkutil.c (xg_get_file_with_chooser): Change message shown
272 in file chooser.
273
274 2005-12-27 Richard M. Stallman <rms@gnu.org>
275
276 * lread.c (readevalloop): Set PT and ZV in the proper buffer,
277 not the current one.
278
279 * minibuf.c (Fminibuffer_message): Doc fix.
280 (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
281
282 * eval.c (do_autoload): Ignore elements of Vautoload_queue
283 where car is not symbol.
284
285 2005-12-27 Kenichi Handa <handa@m17n.org>
286
287 * charset.c (lisp_string_width): Check multibyteness of STRING.
288
289 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
290
291 * xfns.c: x_show_hidden_files, new variable.
292 (syms_of_xfns): Defvar it.
293
294 * gtkutil.c (xg_toggle_visibility_cb): New function.
295 (xg_get_file_with_chooser): Add toggle hidden files and a message
296 to the new file chooser dialog. Show hidden files if
297 x_show_hidden_files is non-zero.
298
299 2005-12-26 Richard M. Stallman <rms@gnu.org>
300
301 * keyboard.h: Undo previous change.
302
303 * Makefile.in (undo.o): Undo previous change.
304
305 * undo.c: Undo previous change.
306
307 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
308
309 * keyboard.h: extern last_point_position_window.
310
311 * undo.c: include keyboard.h.
312
313 * Makefile.in (undo.o): Depend on keyboard.h.
314
315 2005-12-26 Richard M. Stallman <rms@gnu.org>
316
317 * commands.h (last_point_position_window): Declare.
318
319 * undo.c: Depend on window.h.
320 (record_point): Save old point from the correct window.
321
322 * keyboard.c (last_point_position_window): New variable.
323 (command_loop_1): Set last_point_position_window.
324 (syms_of_keyboard): Init it.
325
326 * Makefile.in (undo.o): Depend on window.h.
327
328 2005-12-25 Richard M. Stallman <rms@gnu.org>
329
330 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
331 to undo a `provide'.
332
333 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
334
335 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
336
337 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
338 define for FreeBSD on this platform.
339
340 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
341
342 * macterm.h (TYPE_FILE_NAME): New define.
343 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
344
345 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname):
346 Add prototypes. Make static.
347 (mac_aedesc_to_lisp): Initialize err to noErr.
348 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
349 (init_coercion_handler): New functions.
350 (Fmac_coerce_ae_data): Use coercion of Apple event data for
351 translation from/to file names.
352
353 * macterm.c: Don't include sys/param.h.
354 (init_coercion_handler): Add extern.
355 [MAC_OS8] (main): Call init_coercion_handler.
356 (mac_initialize) [MAC_OSX]: Likewise.
357 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
358 Apple event data for translation from/to file names.
359
360 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
361
362 * image.c [MAC_OS] (find_image_fsspec): Likewise.
363
364 2005-12-23 Martin Rudalics <rudalics@gmx.at> (tiny change)
365
366 * insdel.c (insert, insert_and_inherit, insert_before_markers)
367 (insert_before_markers_and_inherit): Make sure FROM is correct
368 when `after-change-functions' are called.
369
370 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
371
372 * xfns.c (Fx_uses_old_gtk_dialog): New function.
373
374 * gtkutil.c (xg_uses_old_file_dialog): New function.
375 (xg_get_file_name): Use xg_uses_old_file_dialog.
376
377 * gtkutil.h: Declare xg_uses_old_file_dialog.
378
379 2005-12-22 Richard M. Stallman <rms@gnu.org>
380
381 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
382
383 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
384
385 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
386
387 * macgui.h (XCharStruct): Remove member `valid_p'.
388 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
389 (XCharStructRow): New typedef.
390 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID):
391 New macros.
392 (struct MacFontStruct): Add member `bounds'. Remove member
393 `per_char'. All uses for QuichDraw Text fonts are changed to
394 `bounds.per_char'. ATSUI font bounds are represented as an array
395 `bounds.rows' of XCharStructRow's, each of which consists of a
396 bitmap of valid entries and an array of char bounds.
397
398 * macterm.c (mac_per_char_metric): Add prototype.
399 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
400 (mac_query_char_extents): New function.
401 (x_per_char_metric): Use it.
402 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
403 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg):
404 Use mac_per_char_metric instead of x_per_char_metric.
405 (mac_text_extents_16): New function.
406 (mac_compute_glyph_string_overhangs): Use it.
407 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
408
409 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
410
411 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
412 (Fminibuffer_completion_help): Remove duplicates before display.
413
414 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
415
416 * print.c (print_preprocess): Don't lose print_depth levels while
417 iterating.
418
419 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
420
421 * macmenu.c (Qmac_apple_event): Add extern.
422 (set_frame_menubar, mac_menu_show keymp_panes)
423 (single_keymap_panes, list_of_panes, list_of_item)
424 (single_menu_item): Add argument types to prototypes.
425 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
426 (struct skp): New struct (from xmenu.c).
427 (single_keymap_panes, single_menu_item, list_of_panes)
428 (list_of_item): Sync with xmenu.c.
429 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
430 POSITION if it is mac-apple-event event.
431 (menubar_selection_callback): Don't use menu_command_in_progress.
432 (set_frame_menubar): First parse all submenus, then make
433 widget_value trees from them. Don't allocate any widget_value
434 objects until we are done with the parsing.
435 (parse_single_submenu, digest_single_submenu): New functions.
436 (single_submenu): Function deleted, replaced by those two.
437 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
438 create or dispose of EventHandlerUPP. Install hander to all submenus.
439 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
440 instead of ENCODE_SYSTEM.
441 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
442 integer values.
443 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
444 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
445 format menu item string. Don't use NULL for integer value.
446
447 * macterm.h (struct mac_output): Remove unused member
448 menu_command_in_progress.
449
450 2005-12-20 Juri Linkov <juri@jurta.org>
451
452 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
453 position is non-nil, else set it to nil.
454
455 * macmenu.c (Fx_popup_menu): Add `else' to set
456 Vmenu_updating_frame to nil only if position is nil.
457
458 * w32menu.c (Fx_popup_menu): Add `else' to set
459 Vmenu_updating_frame to nil only if position is nil.
460
461 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
462
463 * keyboard.c (make_lispy_event): Drag-and-drop items are now
464 stored in member `args' of struct input_event.
465
466 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
467
468 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
469 stored in member `args' of struct input_event.
470
471 * w32term.c (construct_drag_n_drop): Likewise.
472
473 * macterm.c (mac_do_receive_drag): Likewise.
474 (x_use_underline_position_properties): Undo 2005-07-13 change.
475 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
476 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
477 (mac_pass_command_to_system, mac_pass_control_to_system):
478 New boolean variables renamed from Lisp_Object ones
479 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
480 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
481 All uses changed.
482 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
483 Make them user options.
484 (mac_handle_command_event, mac_store_services_event):
485 Call create_apple_event_from_event_ref without 5th argument.
486 (backtranslate_modified_keycode): Mask off modifier keys that are
487 mapped to some Emacs modifiers before passing it to KeyTranslate.
488 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
489 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
490 Fix docstrings of `mac-*-modifier'.
491
492 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
493 (do_applescript): Change argument types to Lisp_Object.
494 All uses changed.
495
496 * macterm.h (create_apple_event_from_event_ref): Remove 5th
497 argument from extern.
498
499 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
500
501 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
502 the answer, return `lambda', not nil.
503
504 2005-12-17 Eli Zaretskii <eliz@gnu.org>
505
506 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
507 enclosed in $(ARGQUOTE)s should not be split between two lines, as
508 that will break with GNU Make >3.80, when sh.exe is used and
509 arg quoting is with '..'.
510
511 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
512
513 * print.c (print_preprocess): Just signal an error if print_depth
514 is exceeded.
515
516 2005-12-17 Eli Zaretskii <eliz@gnu.org>
517
518 * .gdbinit: Set a breakpoint on w32_abort.
519
520 2005-12-16 Juri Linkov <juri@jurta.org>
521
522 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
523 created from minibuffer_completion_contents.
524 (minibuffer_completion_contents): Remove.
525 (do_completion, Fminibuffer_complete_word)
526 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
527 with Fminibuffer_completion_contents.
528 (syms_of_minibuf): Add Sminibuffer_completion_contents.
529 (Fdisplay_completion_list): Doc fix.
530 (display_completion_list_1): Use `nil' for second arg of
531 `Fdisplay_completion_list'.
532
533 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
534
535 * xfns.c (compute_tip_xy): Handle negative dx and dy.
536
537 * w32fns.c (compute_tip_xy): Ditto.
538
539 * macfns.c (compute_tip_xy): Ditto.
540
541 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
542
543 * print.c (print_preprocess): Go to a deeper print_depth to avoid
544 print_object loop.
545
546 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
547
548 * coding.c (code_convert_region_unwind): GCPRO arg.
549
550 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
551
552 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
553 i.e. dy is offset from top of frame instead of bottom.
554
555 * macfns.c (compute_tip_xy): Ditto.
556
557 * w32fns.c (compute_tip_xy): Ditto.
558
559 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
560 (xg_get_image_for_pixmap, xg_create_frame_widgets)
561 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
562
563 * xmenu.c (menubar_selection_callback): Do nothing if the callback
564 is for an unselected radio menu item.
565
566 2005-12-11 Richard M. Stallman <rms@gnu.org>
567
568 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
569
570 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
571
572 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
573 (Flookup_key): Doc fix.
574 (syms_of_keymap) <function-key-map>: Doc fix.
575
576 * fns.c (Frequire): Treat evaluating from a source file
577 like loading the file.
578
579 * floatfns.c (Flog): Doc fix.
580
581 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
582 when we change the buffer.
583
584 2005-12-11 Juri Linkov <juri@jurta.org>
585
586 * minibuf.c (display_completion_list_1):
587 Call `minibuffer_completion_contents' instead of using `nil' as
588 second arg of `Fdisplay_completion_list'.
589 (keys_of_minibuf): Unbind SPC in
590 Vminibuffer_local_filename_completion_map (see also related
591 change on 2005-12-06).
592
593 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
594
595 * emacs.c (main) [MAC_OS8]: Undo previous change.
596
597 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
598 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
599
600 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
601
602 * Makefile.in (macselect.o): Depend on keymap.h.
603
604 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
605 syms_of_macselect.
606
607 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
608 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
609
610 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
611 (syms_of_keyboard) [MAC_OS]: Initialize it.
612 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
613
614 * mac.c (Qundecoded_file_name): New variable.
615 (syms_of_mac): Initialize it.
616 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
617 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
618 (Fmac_coerce_ae_data): New defun.
619 (syms_of_mac): Defsubr it.
620
621 * macselect.c: Include keymap.h.
622 (mac_ready_for_apple_events): New variable.
623 (Vmac_apple_event_map, Qmac_apple_event_class)
624 (Qmac_apple_event_id): New variables.
625 (syms_of_macselect): Initialize them.
626 (Qundefined, mac_store_apple_event): Add externs.
627 (struct apple_event_binding): New struct.
628 (find_event_binding_fun, find_event_binding)
629 (mac_find_apple_event_spec, defer_apple_events)
630 (mac_handle_apple_event, init_apple_event_handler)
631 (copy_scrap_flavor_data): New functions.
632 (Fmac_process_deferred_apple_events): New defun.
633 (syms_of_macselect): Defsubr it.
634 (mac_store_services_event): Fix extern.
635 (mac_handle_service_event): Don't allocate Lisp objects during
636 asynchronous input processing. Use mac_store_services_event
637 instead of mac_store_application_menu_event.
638
639 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
640 (Qpreferences): Remove variables.
641 (syms_of_macterm) : Don't initialize them.
642 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
643 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
644 (init_required_apple_events, do_ae_open_application)
645 (do_ae_print_documents, do_ae_open_documents)
646 (do_ae_quit_application): Remove functions and prototypes.
647 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
648 (mac_find_apple_event_spec): Add externs.
649 (mac_store_application_menu_event): Remove function.
650 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
651 (mac_handle_command_event): Create Apple event from Carbon event.
652 Use mac_store_apple_event instead of mac_store_application_menu_event.
653 [MAC_OSX] (mac_store_services_event): Likewise.
654 (struct SelectionRange, SelectionRange): Remove struct and typedef.
655 [MAC_OS8] (main): Call init_apple_event_handler instead of
656 init_required_apple_events.
657 (mac_initialize) [MAC_OSX]: Likewise.
658 [!USE_CARBON_EVENTS] (mac_wait_next_event):
659 Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
660
661 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp):
662 Add externs.
663 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
664 (Fmac_get_preference): Add EXFUN.
665
666 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
667 event.
668
669 2005-12-09 Richard M. Stallman <rms@gnu.org>
670
671 * xfns.c (Fx_create_frame): Reinstate previous change.
672
673 2005-12-09 Eli Zaretskii <eliz@gnu.org>
674
675 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
676 GDB to the abort dialog.
677
678 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
679
680 * indent.c (Fvertical_motion): Force move if starting on
681 stretch glyph.
682
683 2005-12-08 Richard M. Stallman <rms@gnu.org>
684
685 * lread.c (read_escape) <\s>: Don't treat strings specially.
686
687 * xfns.c (Fx_create_frame): Comment out previous change.
688
689 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
690
691 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
692 when needed.
693
694 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
695
696 * minibuf.c (keys_of_minibuf): Just unbind SPC in
697 Vminibuffer_local_filename_completion_map rather than forcing it
698 explicitly to the same binding as the global map.
699
700 2005-12-06 Ken Raeburn <raeburn@gnu.org>
701
702 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args.
703 * bytecode.c (Fbyte_code): Likewise.
704 * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise.
705 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
706 * undo.c (truncate_undo_list): Likewise.
707
708 2005-12-05 Richard M. Stallman <rms@gnu.org>
709
710 * window.c (enlarge_window): Eliminate arg preserve_before.
711 Assume it is 0. All callers changed.
712 (Fenlarge_window, Fshrink_window): Likewise.
713
714 2005-12-02 Eli Zaretskii <eliz@gnu.org>
715
716 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
717 fit below.
718
719 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
720
721 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
722
723 * xfns.c (x_real_positions): int ign => unsigned int.
724 (xg_set_icon_from_xpm_data): Remove unused variable err.
725 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
726 to remove compiler warning.
727 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
728
729 2005-12-02 David Reitter <david.reitter@gmail.com>
730
731 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
732 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
733 and Vminibuffer_local_must_match_filename_map keymaps.
734 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
735
736 * keymap.c (Vminibuffer_local_filename_completion_map)
737 (Vminibuffer_local_must_match_filename_map): New variables.
738 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
739 parent to be Vminibuffer_local_completion_map and
740 Vminibuffer_local_must_match_map, respectively.
741
742 * commands.h (Vminibuffer_local_filename_completion_map)
743 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
744
745 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
746
747 * window.c (Fset_window_configuration): Don't accidentally copy the
748 window-point of one window to another.
749
750 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
751
752 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
753
754 2005-11-30 Kim F. Storm <storm@cua.dk>
755
756 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
757 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
758 passing it to `emacs_write'.
759
760 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
761
762 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
763
764 2005-11-27 Richard M. Stallman <rms@gnu.org>
765
766 * window.c (adjust_window_trailing_edge): New function.
767 (Fadjust_window_trailing_edge): New function.
768 (syms_of_window): Defsubr it.
769 (window_deletion_count): New variable.
770 (delete_window): Update window_deletion_count.
771
772 2005-11-26 Eli Zaretskii <eliz@gnu.org>
773
774 * minibuf.c (syms_of_minibuf): Mention the extension of
775 `completion-auto-help's meaning by complete.el.
776
777 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
778
779 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
780 Handle :inherit property as a lisp expression.
781
782 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
783
784 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
785 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
786 Qsuper, and Qmodifier_value.
787 (Vmac_control_modifier, Vmac_option_modifier)
788 (Vmac_command_modifier, Vmac_function_modifier)
789 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
790 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
791 (Vmac_charset_info_alist): Doc fixes.
792
793 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
794
795 * emacs.c (main) [MAC_OSX]: Change working directory to home
796 directory if `-psn_*' option is specified.
797
798 * mac.c (DECODE_UTF_8): Remove macro.
799 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
800 created from cfstring_to_lisp.
801 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
802 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
803
804 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
805 Add prototype.
806
807 2005-11-21 Ken Raeburn <raeburn@gnu.org>
808
809 * keymap.c (shadow_lookup): Use make_number to pass a number to
810 Fsubstring.
811
812 2005-11-21 Juri Linkov <juri@jurta.org>
813
814 * puresize.h (BASE_PURESIZE): Increment to 1180000.
815
816 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
817
818 * xfaces.c (Finternal_set_lisp_face_attribute):
819 Use :ignore-defface for new frame defaults when `unspecified' is
820 supplied.
821 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
822 (merge_face_vectors): Don't do :ignore-defface overwriting here.
823 (Finternal_merge_in_global_face): Do it here.
824
825 2005-11-20 Juri Linkov <juri@jurta.org>
826
827 * charset.c (invalid_character): Use Lisp-readable syntax
828 for octal and hex. Reorder decimal, octal and hex values.
829
830 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
831
832 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
833 this type is recognised when debugging.
834
835 2005-11-19 Andreas Schwab <schwab@suse.de>
836
837 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
838 Lisp_Cons and Lisp_Float.
839
840 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
841
842 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
843 New variable.
844 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
845 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
846 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
847 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
848
849 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
850
851 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
852
853 * xfaces.c (Qignore_defface): New variable.
854 (syms_of_xfaces): Provide `:ignore-defface'.
855 (IGNORE_DEFFACE_P): New macro.
856 (check_lface_attrs, lface_fully_specified_p)
857 (Finternal_set_lisp_face_attribute)
858 (Fface_attribute_relative_p, Fmerge_face_attribute):
859 Handle Qignore_defface as a possible value.
860 (merge_face_vectors): The merged face is `unspecified' if the
861 mergee specifies `:ignore-defface'.
862
863 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
864
865 * lread.c (readevalloop): Add missing GCPROs.
866
867 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
868
869 * xfns.c (xg_set_icon_from_xpm_data): New function.
870
871 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
872 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
873
874 * xterm.c (x_bitmap_icon): Use the xpm if available.
875
876 * image.c (x_create_bitmap_from_xpm_data): New function.
877 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
878
879 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
880
881 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
882
883 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
884
885 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
886
887 2005-11-15 Andreas Schwab <schwab@suse.de>
888
889 * lisp.h (struct Lisp_Cons): Make cdr a union.
890 (XCDR_AS_LVALUE): Adjust.
891 (struct Lisp_Float): Make data a union.
892 (XFLOAT_DATA): Adjust.
893
894 * alloc.c (free_float): Make free list chaining aliasing-safe.
895 (make_float): Likewise.
896 (free_cons): Likewise.
897 (Fcons): Likewise.
898 (check_cons_list): Likewise.
899 (Fmake_symbol): Likewise.
900 (allocate_misc): Likewise.
901 (free_misc): Likewise.
902 (gc_sweep): Likewise.
903
904 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
905
906 * mac.c (HASHKEY_QUERY_CACHE): New define.
907 (xrm_create_database, xrm_q_put_resource): Empty query cache.
908 (xrm_get_resource): Use query cache.
909
910 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
911 inhibit_window_system is set.
912
913 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
914
915 * macgui.h (USE_CG_TEXT_DRAWING): New define.
916 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
917 and cg_glyphs.
918
919 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
920 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
921 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
922 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
923 not used and font substitution never occurs for ASCII and Latin-1
924 characters.
925 (XLoadQueryFont): Maximum and minimum metrics are now those among
926 ASCII characters.
927 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
928 height adjustments for Courier, Helvetica, and Times.
929
930 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
931
932 2005-11-11 David Reitter <david.reitter@gmail.com>
933
934 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
935 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
936 Vmac_control_modifier / mac-control-modifier,
937 Vmac_option_modifier / mac-option-modifier,
938 Vmac_command_modifier / mac-command-modifier.
939 (mac_to_emacs_modifiers): Use the new style modifier
940 variables. Return UInt32 (modifiers are longs now.)
941 (backtranslate_modified_keycode): New function (refactoring).
942 (XTread_socket): Use new modifier variables and refactored function.
943 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
944 no dedicated meta key. Not in use anyway.)
945 (convert_fn_keycode): Map Fn-keys to their original keycode
946 using a table (english keyboard only).
947
948 2005-11-11 Kim F. Storm <storm@cua.dk>
949
950 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
951 Add post hook to "backtrace" to always dump lisp call stack to
952 increase chance of people sending it to us when reporting bugs.
953
954 * doc.c (Fsubstitute_command_keys): Doc fix.
955
956 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
957
958 * xdisp.c (handle_stop): Skip overlay string handling if
959 ignore_overlay_strings_at_pos_p is set.
960 (set_iterator_to_next): At end of display vector, set
961 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
962 string, so we skip those overlay strings at current pos.
963
964 2005-11-10 Lars Hansen <larsh@soem.dk>
965
966 * fileio.c (file-regular-p): Doc fix.
967
968 2005-11-10 Kim F. Storm <storm@cua.dk>
969
970 * alloc.c (valid_lisp_object_p): New function to validate that
971 an object is really a valid Lisp_Object.
972
973 * lisp.h (valid_lisp_object_p): Add prototype.
974
975 * print.c (safe_debug_print): New function to be called from gdb
976 to print Lisp objects; use valid_lisp_object_p to avoid crashing
977 if user tries to print something which is not a Lisp object.
978
979 * .gdbinit (pp, pp1): Use safe_debug_print.
980 (pv, pv1): New commands to print value of a lisp variable.
981
982 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
983
984 * .gdbinit (pp1): New user-defined function.
985
986 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
987
988 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
989
990 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
991 related variables for dumped executable.
992
993 * unexmacosx.c (unexec_write_zero): New function.
994 (copy_data_segment): Clear uninitialized local variables in
995 statically linked libraries.
996
997 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
998
999 2005-11-09 Juri Linkov <juri@jurta.org>
1000
1001 * keymap.c (shadow_lookup): If Flookup_key returns a number,
1002 call it again with a sub-key-sequence, and if its return value
1003 is non-nil (sub-key is bound), return nil.
1004
1005 2005-11-08 Kim F. Storm <storm@cua.dk>
1006
1007 * process.c (Fsignal_process): Recognize signal names with and
1008 without SIG prefix, e.g. SIGHUP and HUP.
1009
1010 * search.c (search_buffer): No need to initialize base_pat.
1011
1012 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
1013
1014 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
1015 Don't abuse the `mini' arg. Use the `obj' arg instead.
1016
1017 2005-11-04 Kim F. Storm <storm@cua.dk>
1018
1019 * xdisp.c (show_mouse_face): Clear mouse face to eol.
1020
1021 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
1022
1023 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
1024 font-lock.elc and jit-lock.elc.
1025
1026 2005-11-03 Richard M. Stallman <rms@gnu.org>
1027
1028 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
1029 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
1030 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
1031
1032 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
1033
1034 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
1035
1036 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
1037
1038 * window.c (Fdisplay_buffer): Fix last change to not use
1039 a dedicated window.
1040
1041 2005-11-01 Kim F. Storm <storm@cua.dk>
1042
1043 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
1044 Instead, rotate the bottom angle bitmap 180 degrees to indicate
1045 that the bottom row does not end in a newline.
1046
1047 2005-11-01 Andreas Schwab <schwab@suse.de>
1048
1049 * unexelf.c (unexec): Handle .plt section in BSS segment.
1050
1051 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
1052
1053 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
1054
1055 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
1056 determine whether to consider dedicated windows as well.
1057 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
1058 (Fdisplay_buffer): Do consider dedicated windows in those cases where
1059 we will split the window rather than reuse it.
1060 Don't try to use windows on other displays.
1061
1062 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
1063
1064 * puresize.h (BASE_PURESIZE): Increment to 1170000.
1065
1066 2005-10-31 Romain Francoise <romain@orebokech.com>
1067
1068 * macfns.c: Update copyright year.
1069 * m/gould.h: Likewise.
1070
1071 2005-10-30 Kim F. Storm <storm@cua.dk>
1072
1073 * xdisp.c (display_line): Restore it->current_x and call
1074 extend_face_to_end_of_line when last glyph doesn't fit on line.
1075 (set_glyph_string_background_width): Remove specific tests here
1076 to see if face background should extend to end of line. Simplify.
1077
1078 2005-10-30 Richard M. Stallman <rms@gnu.org>
1079
1080 * alloc.c (BYTES_USED): Use uordblks, not arena.
1081 (bytes_used_when_reconsidered): New variable.
1082 (emacs_blocked_free): Set that.
1083
1084 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
1085
1086 * alloc.c (emacs_blocked_free): Fix typo.
1087
1088 2005-10-29 Richard M. Stallman <rms@gnu.org>
1089
1090 * data.c (Fmake_variable_frame_local): Doc fix.
1091
1092 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
1093 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
1094 controls whether to save and restore mode_line_proptrans_alist.
1095 Callers changed.
1096 (unwind_format_mode_line): Work with that feature.
1097 (redisplay_internal): Don't call prepare_menu_bars if memory full.
1098 (move_elt_to_front): New function.
1099 (display_mode_element): Use move_elt_to_front.
1100 Don't bother munging text props on a null string.
1101 Delete obsolete elts from mode_line_proptrans_alist.
1102 (decode_mode_spec): Test Vmemory_full, not spare_memory.
1103 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
1104
1105 * lisp.h (memory_full_cons_threshold): Declare.
1106 (internal_lisp_condition_case): Declare.
1107
1108 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
1109 (Fmemory_full_p): Function deleted.
1110 (syms_of_alloc): Don't defsubr it.
1111 (memory_full_cons_threshold): New variable.
1112 (spare_memory): Now a vector of 7 elts.
1113 (buffer_memory_full): Don't set Vmemory_full here.
1114 (xfree): Don't try to refill here.
1115 (emacs_blocked_free): Record BYTES_USED in local var.
1116 (memory_full): Now free all the slots in spare_memory.
1117 (refill_memory_reserve): Allocate each slot in spare_memory.
1118 (init_alloc_once): Call refill_memory_reserve.
1119
1120 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
1121
1122 * eval.c (internal_lisp_condition_case): New function.
1123 (Fcondition_case): Use internal_lisp_condition_case.
1124 (Feval): Test Vmemory_full and memory_full_cons_threshold.
1125 (Ffuncall): Likewise.
1126
1127 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
1128
1129 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
1130
1131 * syntax.c (Fparse_partial_sexp): Fix docstring.
1132
1133 2005-10-28 Romain Francoise <romain@orebokech.com>
1134
1135 * puresize.h (BASE_PURESIZE): Increment to 1130000.
1136
1137 2005-10-28 Richard M. Stallman <rms@gnu.org>
1138
1139 * xfns.c (syms_of_xfns): Provide `x' as feature.
1140
1141 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
1142
1143 * editfns.c (Fformat): Don't include string padding
1144 between info[n].start and info[n].end.
1145
1146 * alloc.c (spare_memory): No longer static.
1147 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
1148
1149 * puresize.h (BASE_PURESIZE): Increment to 1120000.
1150
1151 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
1152
1153 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
1154
1155 * fringe.c (update_window_fringes): Handle case where buffer ends
1156 with a newline.
1157
1158 2005-10-27 Kenichi Handa <handa@m17n.org>
1159
1160 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
1161
1162 2005-10-24 Kenichi Handa <handa@m17n.org>
1163
1164 * charset.h (charset_mule_unicode_0100_24ff)
1165 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
1166 Extern them.
1167
1168 * charset.c (charset_mule_unicode_0100_24ff)
1169 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
1170 New variables.
1171 (Fsetup_special_charsets): Initialize them.
1172
1173 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
1174 supported Unicode characters.
1175
1176 2005-10-25 Jason Rumney <jasonr@gnu.org>
1177
1178 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
1179
1180 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1181
1182 * image.c [MAC_OS] (image_load_qt_1): Check image size.
1183 Use GraphicsImportGetImageDescription instead of
1184 GraphicsImportGetNaturalBounds.
1185 [MAC_OSX] (image_load_quartz2d): Check image size.
1186 [MAC_OS] (xpm_load_image): Likewise.
1187
1188 * macterm.c (last_mouse_glyph_frame): New var.
1189 (note_mouse_movement): Say mouse moved if current frame differs
1190 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
1191 (XTmouse_position): Set last_mouse_glyph_frame.
1192 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
1193 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
1194 Use EndianU16_BtoN.
1195 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
1196 (x_per_char_metric, XLoadQueryFont)
1197 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
1198 glyph bounds.
1199 (mac_to_x_fontname, mac_do_list_fonts)
1200 (mac_initialize_display_info): Change screen resolutions to 72dpi.
1201
1202 2005-10-25 Masatake YAMATO <jet@gyve.org>
1203
1204 * minibuf.c (Fdisplay_completion_list): Small doc fix.
1205
1206 2005-10-24 Kim F. Storm <storm@cua.dk>
1207
1208 * xterm.c: Undo 2005-10-23 change.
1209 (last_mouse_glyph_frame): New var.
1210 (note_mouse_movement): Say mouse moved if current frame differs
1211 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
1212 (XTmouse_position): Set last_mouse_glyph_frame.
1213 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
1214 last_mouse_glyph] on mouse up/down event.
1215
1216 * editfns.c (Fcompare_buffer_substrings): Fix last change.
1217
1218 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
1219
1220 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
1221
1222 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1223
1224 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
1225 so tool tips don't interfere with press on tool bar button.
1226
1227 2005-10-23 Richard M. Stallman <rms@gnu.org>
1228
1229 * casetab.c (Fset_case_table): Doc fix.
1230
1231 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
1232 (readevalloop): Compute ENTIRE properly.
1233 (syms_of_lread) <load-history>: Doc fix.
1234
1235 2005-10-21 Richard M. Stallman <rms@gnu.org>
1236
1237 * lread.c (Fload): Simplify gcpro structure.
1238 Gcpro FOUND as well as FILE, but not EFOUND.
1239 Unless preloading, record FOUND instead of FILE in Vload_history.
1240 Rename repeat local FILE to MSG_FILE.
1241 (syms_of_lread) <load-history>: Doc fix.
1242
1243 2005-10-21 Kenichi Handa <handa@m17n.org>
1244
1245 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
1246
1247 2005-10-20 Kim F. Storm <storm@cua.dk>
1248
1249 * buffer.c (clone_per_buffer_values): Remove unused var tem.
1250 (init_buffer): Remove unused vars dotstat, pwdstat.
1251
1252 * ccl.c (check_ccl_update): Remove unused var vp.
1253
1254 * fileio.c (auto_save_error): Call SAFE_FREE.
1255
1256 * fns.c (Fchar_table_range): Remove unused var i.
1257
1258 * minibuf.c (display_completion_list_1): New wrapper function
1259 for Fdisplay_completion_list.
1260 (Fminibuffer_completion_help): Use it.
1261
1262 * term.c (encode_terminal_code): Remove unused var src_start.
1263
1264 * window.c (Fwindow_tree): Remove unused var alist.
1265
1266 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
1267
1268 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
1269
1270 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
1271
1272 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
1273
1274 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
1275
1276 2005-10-20 Andreas Schwab <schwab@suse.de>
1277
1278 * minibuf.c (Fdisplay_completion_list): Doc fix.
1279
1280 2005-10-19 Kim F. Storm <storm@cua.dk>
1281
1282 * image.c (check_image_size): Handle integer Vmax_image_size value
1283 directly as max pixel value. Use default frame size for null frame.
1284 (syms_of_image) <max-image-size>: Describe integer value.
1285
1286 2005-10-19 Romain Francoise <romain@orebokech.com>
1287
1288 * emacs.c (main): Update copyright year.
1289
1290 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
1291
1292 * image.c (Vmax_image_size): New variable.
1293 (check_image_size): New function.
1294 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
1295 (gif_load, gs_load): Use it.
1296 (lookup_image): Try loading again if previous load failed.
1297 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
1298 to display in, NULL if none.
1299 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
1300 argument.
1301
1302 2005-10-18 Richard M. Stallman <rms@gnu.org>
1303
1304 * search.c (Fstring_match): Doc fix.
1305
1306 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1307
1308 * macterm.c (note_mouse_movement): Use PtInRect.
1309 (XTread_socket): Also ignore mouse motion just before a button
1310 release event. Don't process button release event when mouse is
1311 not grabbed.
1312
1313 2005-10-16 Masatake YAMATO <jet@gyve.org>
1314
1315 * minibuf.c (Fdisplay_completion_list): Add new optional
1316 argument COMMON_SUBSTRING. Bind `completion-common-substring'
1317 to the optional argument during running `completion-setup-hook'.
1318
1319 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1320
1321 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
1322 Allow nil as argument.
1323 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
1324 for encoding arguments as UTF-16 in native byte order, no BOM.
1325
1326 * macfns.c (Fx_create_frame): Add debugging code.
1327 (Fx_show_tip): Set frame pixel width and height.
1328
1329 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
1330 (FRAME_NORMAL_GC): New macro.
1331 (mac_draw_line, mac_clear_area, mac_clear_window)
1332 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
1333 (mac_draw_image_string, mac_draw_image_string_16): Rename from
1334 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
1335 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
1336 All uses changed.
1337 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
1338 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
1339 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
1340 (mac_draw_string_16, mac_draw_image_string)
1341 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
1342 (mac_scroll_area): Drawing functions now take frame as destination.
1343 All uses changed.
1344 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
1345 (x_draw_fringe_bitmap): Set clipping area in face->gc.
1346
1347 * macterm.h (mac_clear_area): Add extern.
1348
1349 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1350
1351 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
1352 changes for xterm.c.
1353
1354 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
1355
1356 2005-10-14 Kenichi Handa <handa@m17n.org>
1357
1358 * search.c (search_buffer): Give up BM search on case-fold-search
1359 if one of a target character has a case-equivalence of different
1360 charset even if that target charcter is an ASCII.
1361
1362 * casefiddle.c (casify_object): Fix for the case that case
1363 conversion change the byte length.
1364
1365 2005-10-14 Kim F. Storm <storm@cua.dk>
1366
1367 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
1368 (handle_one_xevent): Only clear help_echo_string; restore it if
1369 note_mouse_movement didn't record any mouse movement.
1370
1371 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
1372 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
1373
1374 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
1375 (Fposn_at_x_y): Fix calculation of x coordinate.
1376 (Fposn_at_point): Return nil if point is hscrolled out of view.
1377
1378 2005-10-13 Andreas Schwab <schwab@suse.de>
1379
1380 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
1381 non-interactive mode.
1382
1383 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1384
1385 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
1386
1387 2005-10-12 Kim F. Storm <storm@cua.dk>
1388
1389 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
1390
1391 2005-10-12 Romain Francoise <romain@orebokech.com>
1392
1393 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
1394
1395 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1396
1397 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
1398 get end of text rows. Obtain header-line/mode-line rows directly.
1399
1400 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
1401 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
1402
1403 2005-10-12 Kim F. Storm <storm@cua.dk>
1404
1405 * xdisp.c (remember_mouse_glyph): New generic version based on
1406 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
1407 properly handle all different window areas.
1408
1409 * dispextern.h (remember_mouse_glyph): Add prototype.
1410
1411 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
1412 (note_mouse_movement, XTmouse_position): Use generic
1413 remember_mouse_glyph, add last_mouse_glyph arg.
1414
1415 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
1416 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
1417 (note_mouse_movement, w32_mouse_position): Use generic
1418 remember_mouse_glyph, add last_mouse_glyph arg.
1419
1420 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
1421 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
1422 (XTmouse_position): Adapt to use generic remember_mouse_glyph
1423 instead of pixel_to_glyph_coords.
1424
1425 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
1426 Fix x position for ON_TEXT when left margin width > 0.
1427
1428 2005-10-11 Kim F. Storm <storm@cua.dk>
1429
1430 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
1431
1432 * keyboard.c (make_lispy_position): Fix buffer calculations for
1433 mouse click or movement in right fringe and the margins.
1434
1435 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
1436
1437 * image.c (fn_jpeg_stdio_src): Don't define it.
1438 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
1439 (our_common_init_source): Rename from `our_init_source'.
1440 (our_common_term_source): Rename from `our_term_source'.
1441 (our_memory_fill_input_buffer): Rename from
1442 `our_fill_input_buffer'.
1443 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
1444 (jpeg_memory_src): Use the new names.
1445 (struct jpeg_stdio_mgr): New struct.
1446 (JPEG_STDIO_BUFFER_SIZE): New constant.
1447 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
1448 (jpeg_file_src): New functions.
1449 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
1450
1451 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1452
1453 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
1454 (fm_font_family_alist): New variable.
1455 (syms_of_macterm): Initialize and staticpro it.
1456 (decode_mac_font_name): Replace '-' in family name with '_' if it
1457 occurs just once. Lower family name.
1458 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
1459 All uses changed. Remove argument MF and code conversion for it.
1460 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
1461 to CHARSET. Parse font size. Lower family name. Return integer
1462 value for status of parsing.
1463 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
1464 Don't use Fdowncase because family name is already lowered by
1465 decode_mac_font_name.
1466 (init_font_name_table): Always call decode_mac_font_name.
1467 Add pair of family name and its reference to fm_font_family_alist.
1468 (mac_clear_font_name_table): Clear fm_font_family_alist.
1469 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
1470 Lookup fm_font_family_alist to get font family reference.
1471 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
1472 name is already lowered by parse_x_font_name.
1473
1474 2005-10-11 Kim F. Storm <storm@cua.dk>
1475
1476 * xterm.c (glyph_rect): Return 0 if position is outside text area.
1477
1478 * keyboard.c (make_lispy_position): Fix buffer position calculation for
1479 mouse click or movement in fringe.
1480
1481 2005-10-10 Jason Rumney <jasonr@gnu.org>
1482
1483 * xterm.c (remember_mouse_glyph): New function.
1484 (note_mouse_movement): Use it to remember the current glyph if changed.
1485 (XTmouse_position): Fix calculation of fake glyph under mouse.
1486 Move code to calculate glyph under mouse into remember_mouse_glyph.
1487
1488 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1489
1490 * emacs.c (USAGE3, standard_args): -nb => -nbi.
1491
1492 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
1493
1494 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
1495 (next_frame, prev_frame, set_term_frame_name): Make static.
1496
1497 * window.c (Fwindow_tree): Fix spelling.
1498
1499 2005-10-09 Romain Francoise <romain@orebokech.com>
1500
1501 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
1502
1503 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1504
1505 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
1506 Add options -nb, --no-bitmap-icon.
1507
1508 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
1509
1510 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1511
1512 * macgui.h (MAX_CLIP_RECTS): New define.
1513 (struct _XGC): New member clip_region.
1514 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
1515 clip_rects.
1516
1517 * macterm.c (GC_CLIP_REGION): New macro.
1518 (saved_port_clip_region): New variable.
1519 (mac_begin_clip, mac_end_clip): New functions.
1520 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
1521 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
1522 (mac_copy_area_with_mask, mac_scroll_area): Use them.
1523 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
1524 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1525 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
1526 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
1527 rectangles stored in gc.
1528 (XFreeGC): Dispose of clipping region.
1529 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
1530 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
1531 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
1532 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
1533 (x_draw_bar_cursor): Use them.
1534 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
1535 get multiple clipping rectangles.
1536
1537 * macterm.h (mac_term_init): Add types to extern.
1538 (struct mac_output): Remove members mWP and pending_menu_activation.
1539 Put members scroll_bar_foreground_pixel and
1540 scroll_bar_background_pixel in #if 0.
1541 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
1542
1543 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
1544 Add debugging code.
1545
1546 2005-10-08 Kim F. Storm <storm@cua.dk>
1547
1548 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
1549
1550 2005-10-07 Kim F. Storm <storm@cua.dk>
1551
1552 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
1553 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
1554 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
1555
1556 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1557
1558 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
1559 to for_overlaps. Now occupy 3 bits.
1560 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
1561 (OVERLAPS_ERASED_CURSOR): New defines.
1562 (struct redisplay_interface): Add new OVERLAPS arg to member
1563 fix_overlapping_area.
1564 (x_fix_overlapping_area): Add new OVERLAPS arg.
1565 (get_glyph_string_clip_rects): Add extern.
1566
1567 * dispnew.c (redraw_overlapping_rows):
1568 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
1569
1570 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
1571 for_overlaps.
1572 (get_glyph_string_clip_rects): New function created from
1573 get_glyph_string_clip_rect. Set clipping rectangles according to the
1574 value of for_overlaps. Enable to store multiple clipping rectangles.
1575 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
1576 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
1577 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
1578 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
1579 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
1580 calculating clipping rectangles later. Call x_fix_overlapping_area
1581 with new OVERLAPS arg to draw only erased cursor area.
1582 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
1583 to draw overlaps in both preceding and succeeding rows.
1584
1585 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
1586 struct glyph_string to for_overlaps.
1587
1588 2005-10-04 Richard M. Stallman <rms@gnu.org>
1589
1590 * alloc.c (refill_memory_reserve): Conditionalize the body,
1591 not the function's existence.
1592
1593 2005-10-04 Kim F. Storm <storm@cua.dk>
1594
1595 * window.c (window_split_tree): New function.
1596 (Fwindow_split_tree): New defun.
1597 (syms_of_window): Defsubr it.
1598
1599 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1600
1601 * macterm.c (mac_invert_rectangle): New function.
1602 (XTflash): Use it.
1603
1604 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
1605
1606 * regex.h (re_char): Don't expose it in the interface.
1607 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
1608
1609 * regex.c (re_char): Move it back here.
1610 (re_set_whitespace_regexp): Change the arg's type to not use it.
1611
1612 * keyboard.c (make_lispy_event): If point has moved between down and up
1613 event, make it a drag, not a click, to mirror what
1614 mouse-drag-region expects.
1615
1616 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1617
1618 * lisp.h (fatal): Undo previous change.
1619 * term.c (fatal): Undo previous change.
1620
1621 2005-10-01 Richard M. Stallman <rms@gnu.org>
1622
1623 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
1624
1625 2005-10-01 Kim F. Storm <storm@cua.dk>
1626
1627 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
1628
1629 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1630
1631 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
1632
1633 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
1634 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
1635 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
1636 Try ATSUI-compatible 12pt Monaco font first.
1637
1638 * macgui.h (struct _XCharStruct): New member valid_p.
1639 (STORE_XCHARSTRUCT): Set valid_p.
1640 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
1641
1642 * macterm.c (mac_draw_string_common, x_per_char_metric)
1643 (mac_compute_glyph_string_overhangs, init_font_name_table)
1644 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
1645 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
1646 (x_draw_glyph_string_background)
1647 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
1648 XDrawImageString. Always draw background and foreground separately.
1649 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
1650 functions for one-byte chars when using ATSUI-compatible fonts.
1651 (atsu_font_id_hash) [USE_ATSUI]: New variable.
1652 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
1653 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
1654 max_char_or_byte2 more in detail.
1655 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
1656
1657 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
1658
1659 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
1660 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
1661
1662 * unexelf.c (fatal): Fix prototype.
1663
1664 * term.c (fatal): Implement using varargs.
1665
1666 * regex.c (re_char): Move typedef ...
1667 * regex.h (re_char): ... here.
1668 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
1669
1670 * emacs.c (malloc_set_state): Fix return type.
1671 (endif): Fix type.
1672
1673 * lisp.h (fatal): Add argument types.
1674
1675 * dispextern.h (fatal): Delete prototype.
1676
1677 * systime.h (make_time): Prototype moved from ...
1678 * editfns.c (make_time): ... here.
1679
1680 * editfns.c: Move systime.h include after lisp.h.
1681 * dired.c:
1682 * xsmfns.c:
1683 * process.c: Likewise.
1684
1685 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
1686 Add parameter types.
1687 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
1688 (emacs_blocked_free): Change definition to match __free_hook.
1689 (emacs_blocked_malloc): Change definition to match __malloc_hook.
1690 (emacs_blocked_realloc): Change definition to match __realloc_hook.
1691
1692 2005-09-30 Romain Francoise <romain@orebokech.com>
1693
1694 * minibuf.c (Fread_buffer): Follow convention for reading from the
1695 minibuffer with a default value. Doc fix.
1696
1697 2005-09-29 Juri Linkov <juri@jurta.org>
1698
1699 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
1700 Rename argument name `string' to `format-string'.
1701 (Fformat): Doc fix.
1702
1703 2005-09-28 Kim F. Storm <storm@cua.dk>
1704
1705 * image.c (gif_load): Fix size of allocated image buffer
1706 for images where a sub-image may be larger than the image's
1707 total height/width specifications.
1708
1709 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1710
1711 * macgui.h (struct _XCharStruct): Each member now takes short value.
1712
1713 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
1714
1715 * xfaces.c (lookup_derived_face): Add parameter type.
1716
1717 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
1718
1719 * marker.c (verify_bytepos): Add parameter type.
1720
1721 * process.c (get_operating_system_release): Move prototype ...
1722
1723 * systime.h (get_operating_system_release): ... here.
1724
1725 * xterm.c (handle_one_xevent): Refer to union field to match the
1726 type required by the function definition.
1727 (set_vertical_scroll_bar): Move prototype ...
1728
1729 * xterm.h: ... here.
1730
1731 * fns.c (internal_equal, seed_random): Fix prototypes.
1732 (internal_equal): Add missing parameter.
1733
1734 2005-09-25 Richard M. Stallman <rms@gnu.org>
1735
1736 * keyboard.c (update_menu_bindings): Variable deleted.
1737 (syms_of_keyboard): Don't defvar it.
1738 (parse_menu_item): Don't test it.
1739
1740 2005-09-23 Richard M. Stallman <rms@gnu.org>
1741
1742 * editfns.c (Fformat): Explicitly test for end of format string
1743 and don't use `index'.
1744
1745 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
1746
1747 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
1748 Define BROKEN_GET_CURRENT_DIR_NAME.
1749
1750 * sysdep.c (get_current_dir_name): Also define if
1751 BROKEN_GET_CURRENT_DIR_NAME.
1752
1753 * m/ibmrs6000.h: Test for USG5, not USG5_4.
1754
1755 2005-09-22 Kim F. Storm <storm@cua.dk>
1756
1757 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
1758 (message2): Fix commentary. Ok to use alloca'ed memory.
1759 Still not ok to use Lisp string data (because of GC).
1760 (set_message): Add comment why GC cannot happen.
1761
1762 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1763
1764 * macterm.c (xlfdpat_block_match_1): Fix assertion.
1765 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
1766 variants for a scalable font multiple times.
1767
1768 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1769
1770 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
1771 Setup slave tty options before forking.
1772
1773 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1774
1775 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1776 positions have been set for the frame (as is done for frames in
1777 special-display-buffer-names).
1778
1779 2005-09-19 Kim F. Storm <storm@cua.dk>
1780
1781 * editfns.c (Fformat): Don't scan past end of format string that
1782 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1783
1784 2005-09-18 Andreas Schwab <schwab@suse.de>
1785
1786 * window.h (struct window): Remove height_fixed_p, no longer set.
1787
1788 * window.c (make_window): Don't initialize height_fixed_p.
1789 (window_fixed_size_p): Don't use it.
1790
1791 2005-09-18 John Paul Wallington <jpw@pobox.com>
1792
1793 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1794
1795 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1796
1797 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1798
1799 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1800 New variables.
1801 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1802 file selection.
1803
1804 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1805
1806 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1807
1808 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1809 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1810
1811 2005-09-16 Romain Francoise <romain@orebokech.com>
1812
1813 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1814
1815 2005-09-15 Richard M. Stallman <rms@gnu.org>
1816
1817 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1818 (display_mode_element): Instead of `lisp_string' and `this',
1819 record `offset' and increment that.
1820 `last_offset' replaces `last'.
1821
1822 * Makefile.in (XMENU_OBJ): Variable deleted.
1823 (obj): Use xmenu.o unconditionally.
1824 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1825
1826 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1827
1828 2005-09-15 Kim F. Storm <storm@cua.dk>
1829
1830 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1831 (reseat_at_next_visible_line_start): Likewise (in xassert).
1832
1833 2005-09-14 Romain Francoise <romain@orebokech.com>
1834
1835 * fileio.c (write_region_inhibit_fsync): New variable.
1836 (Fwrite_region): Use it to skip call to fsync.
1837 (syms_of_fileio): Initialize it.
1838
1839 2005-09-14 Kenichi Handa <handa@m17n.org>
1840
1841 * coding.c (code_convert_region_unwind): Argument format changed.
1842 (run_pre_post_conversion_on_str): If pre-write-conversion function
1843 changed the current buffer, delete the new buffer.
1844 (run_pre_write_conversin_on_c_str): Likewise.
1845
1846 * fileio.c (Fexpand_file_name): Check multibyteness of
1847 default_directory.
1848
1849 2005-09-13 Kenichi Handa <handa@m17n.org>
1850
1851 * composite.c (compose_chars_in_text): Delete it.
1852
1853 * composite.h (compose_chars_in_text): Delete extern.
1854
1855 2005-09-13 Kim F. Storm <storm@cua.dk>
1856
1857 * print.c (print_error_message): Fix last change.
1858
1859 2005-09-12 Kim F. Storm <storm@cua.dk>
1860
1861 * composite.c (compose_chars_in_text): Fix setup of `pend'.
1862 Unconditionally reload `ptr' and `pend' after eval.
1863
1864 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
1865
1866 * print.c (print_error_message): Pass copy of caller name to
1867 message_dolog.
1868
1869 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
1870
1871 2005-09-12 Kenichi Handa <handa@m17n.org>
1872
1873 * xdisp.c (display_mode_element): Be sure to make variables THIS
1874 and LISP_STRING point into a string data of ELT.
1875
1876 2005-09-12 Kim F. Storm <storm@cua.dk>
1877
1878 * editfns.c (Ftranslate_region_internal): Reload `tt' after
1879 signal_after_change that may have GC'ed.
1880 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
1881
1882 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
1883 after insert while runs signal_after_change.
1884
1885 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
1886 declaration to where it is used.
1887
1888 * w32.c (check_windows_init_file): Fix allocation of error buffer.
1889
1890 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
1891 (x_set_name_internal): Call x_encode_text with new FREEP arg to
1892 know if xfree is needed instead of guessing.
1893
1894 * xterm.h (x_encode_text): Remove prototype.
1895
1896 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
1897
1898 * w32term.c (x_bitmap_icon): Load small icons too.
1899
1900 2005-09-10 Romain Francoise <romain@orebokech.com>
1901
1902 * buffer.c (init_buffer): Grow buffer to add directory separator
1903 and terminal zero. Fix typos.
1904
1905 2005-09-10 Eli Zaretskii <eliz@gnu.org>
1906
1907 * buffer.c (init_buffer): Fix error message for failed call to
1908 get_current_dir_name.
1909 (get_current_dir_name): Remove prototype.
1910
1911 * xsmfns.c (get_current_dir_name): Remove prototype.
1912
1913 * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1914 Add prototype.
1915
1916 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
1917 Don't #undef NULL after including blockinput.h.
1918
1919 * config.in: Regenerated.
1920
1921 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
1922
1923 Remove the MAXPATHLEN limitations:
1924
1925 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1926 New function.
1927
1928 * buffer.c (init_buffer): Use it.
1929
1930 * xsmfns.c (smc_save_yourself_CB): Ditto.
1931
1932 2005-09-09 Kim F. Storm <storm@cua.dk>
1933
1934 * doc.c (Fsubstitute_command_keys): Lookup key binding for
1935 commands that are remapped from some other command.
1936
1937 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
1938 flag in disabled rows below the window.
1939
1940 * frame.h (struct frame): New member updated_p.
1941
1942 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
1943 member. Remove local `updated' array and associated variables.
1944
1945 2005-09-07 Kim F. Storm <storm@cua.dk>
1946
1947 * xdisp.c (handle_display_prop): Respect overlay window property.
1948
1949 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
1950 Fixes crash reported by YAMAMOTO Mitsuharu.
1951
1952 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1953
1954 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
1955 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
1956 (xlfdpat_block_match_1, xlfdpat_match): New functions.
1957 (xlfdpat_block_match): New macro.
1958 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
1959 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
1960 (add_font_name_table_entry): Increase font_name_table_size more
1961 rapidly.
1962 (mac_c_string_match): Remove function.
1963 (mac_do_list_fonts): Use XLFD pattern match instead of regular
1964 expression match.
1965
1966 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
1967
1968 2005-09-03 Richard M. Stallman <rms@gnu.org>
1969
1970 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
1971 (move_it_in_display_line_to): Stop after last char on line even
1972 on a windowing terminal, if that's the specified stop position.
1973
1974 * fns.c (Fsort): Doc fix.
1975
1976 * editfns.c (Fpropertize): Don't insist that properties be symbols.
1977
1978 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
1979
1980 * dired.c (directory_files_internal_unwind, directory_files_internal)
1981 (file_name_completion): Use a Save_Value object rather than a cons of
1982 two 16bit ints to store the DIR*.
1983 (directory_files_internal, file_name_completion): Handle both EINTR and
1984 EAGAIN consistently after `readdir'.
1985
1986 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
1987
1988 * intervals.c (update_interval): Add position info in error.
1989
1990 * dispnew.c (window_to_frame_hpos, update_window):
1991 Avoid gcc warning about unused variable `f'.
1992
1993 2005-08-31 Jason Rumney <jasonr@gnu.org>
1994
1995 * w32menu.c (add_menu_item): If unicode_append_menu returns an
1996 error, revert to using AppendMenu.
1997
1998 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1999
2000 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
2001 All uses changed.
2002 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
2003 cases.
2004 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
2005 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
2006 Use posix_pathname_to_fsspec.
2007 [MAC_OS] (xpm_load_image): Fill in background_transparent field
2008 while we have mask.
2009
2010 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
2011
2012 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
2013
2014 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
2015
2016 * syntax.c (update_syntax_table): Properly reproduce the special +1
2017 setting of e_property at the end of the buffer when bumping into the
2018 INTERVALS_AT_ONCE limit.
2019
2020 2005-08-27 Eli Zaretskii <eliz@gnu.org>
2021
2022 * emacs.c (USAGE1): Fix the description of the -Q option.
2023
2024 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
2025
2026 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
2027
2028 2005-08-26 Kim F. Storm <storm@cua.dk>
2029
2030 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
2031 Don't move PT to new window start.
2032
2033 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2034
2035 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
2036 ICONIFY/DEICONIFY_EVENT.
2037
2038 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
2039 Restore background color.
2040 (mac_handle_visibility_change): New function.
2041 (x_make_frame_invisible, x_iconify_frame)
2042 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
2043 [USE_CARBON_EVENTS] (mac_handle_window_event)
2044 (install_window_handler): Handle visibility change events.
2045 (x_make_frame_visible): Don't reposition window if it is iconified
2046 or asked for visible before. Select and uncollapse window when it
2047 is made visible.
2048 (x_make_frame_invisible): Don't reset x_highlight_frame.
2049 (x_iconify_frame): Likewise. Make invisible frame visible before
2050 it is iconified.
2051 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
2052 (do_window_update): Don't change visibility of invisible frame.
2053
2054 2005-08-22 Juri Linkov <juri@jurta.org>
2055
2056 * term.c (turn_on_face): Check for TS_set_foreground and
2057 TS_set_background depending on standout_mode. Simplify.
2058
2059 2005-08-21 Kim F. Storm <storm@cua.dk>
2060
2061 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
2062 bitmaps on fully visible rows.
2063
2064 * fringe.c (update_window_fringes): Replace FORCE_P arg with
2065 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
2066 and return 0.
2067
2068 * xdisp.c (redisplay_window): Call update_window_fringes with
2069 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
2070
2071 2005-08-20 Richard M. Stallman <rms@gnu.org>
2072
2073 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
2074 (resize_mini_window): Set w->start, and PT, so as to display the tail
2075 end of the buffer, if it doesn't all fit.
2076
2077 2005-08-18 Kim F. Storm <storm@cua.dk>
2078
2079 * xdisp.c (calc_pixel_width_or_height): Use actual display
2080 resolution when available instead of Vdisplay_pixels_per_inch.
2081
2082 2005-08-17 Kim F. Storm <storm@cua.dk>
2083
2084 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
2085
2086 * dispnew.c (buffer_posn_from_coords): Check that target row is
2087 within matrix.
2088
2089 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2090
2091 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
2092 xg_set_frame_icon and call it.
2093
2094 * gtkutil.c (xg_set_frame_icon): New function.
2095
2096 * gtkutil.h (xg_set_frame_icon): Declare it.
2097
2098 2005-08-16 Kim F. Storm <storm@cua.dk>
2099
2100 * dispnew.c (increment_row_positions): Skip non-enabled rows.
2101
2102 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
2103 (Fcurrent_window_configuration): Use VECSIZE macro instead.
2104
2105 2005-08-15 Richard M. Stallman <rms@gnu.org>
2106
2107 * xdisp.c (message3_nolog): Clear echo_message_buffer.
2108
2109 2005-08-15 Kim F. Storm <storm@cua.dk>
2110
2111 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
2112
2113 * process.c (deactivate_process, status_notify, read_process_output)
2114 (update_status, status_convert, decode_status, allocate_pty)
2115 (make_process, remove_process, list_processes_1)
2116 (create_process_1, unwind_request_sigio, read_process_output)
2117 (send_process, keyboard_bit_set): Declare static.
2118 (Fdelete_process): Simplify. Pass process to status_notify, so we
2119 don't try to read output from it.
2120 (status_notify): New arg deleting_process--don't try to read
2121 output from that process.
2122
2123 * lisp.h (deactivate_process, status_notify, read_process_output):
2124 Remove prototypes.
2125
2126 2005-08-14 Richard M. Stallman <rms@gnu.org>
2127
2128 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
2129 define_image_type.
2130
2131 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2132
2133 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
2134 (xg_get_image_for_pixmap): Move some code to
2135 xg_get_pixbuf_from_pix_and_mask, and call it.
2136
2137 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
2138
2139 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
2140 to get an GTK icon and set it with GTK functions to avoid having GTK
2141 override an icon set with just X functions.
2142
2143 2005-08-11 Richard M. Stallman <rms@gnu.org>
2144
2145 * image.c (syms_of_image): Init image_types here, and call
2146 define_image_type.
2147 (init_image): Not here.
2148
2149 2005-08-09 Richard M. Stallman <rms@gnu.org>
2150
2151 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
2152
2153 * lisp.h (QUIT): Throw t to Vthrow_on_input.
2154
2155 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
2156
2157 * floatfns.c (Fexpt): Use floats for negative exponent.
2158
2159 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2160
2161 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
2162 should not be there, causing menu display errors with GTK 2.6.9.
2163
2164 2005-08-07 Richard M. Stallman <rms@gnu.org>
2165
2166 * floatfns.c (Fexpt): Undo previous change.
2167
2168 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
2169 so it can be used with various state vectors.
2170
2171 * emacs.c (endif): Convert -script into -scriptload.
2172 (standard_args): Add -scriptload. Allow -basic-display with one dash.
2173
2174 * fns.c (syms_of_fns): Add `emacs' to features.
2175
2176 * term.c (set_terminal_modes): If no TS_termcap_modes string,
2177 output newlines to scroll the old screen contents off the screen.
2178
2179 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
2180
2181 * floatfns.c (Fexpt): Use floats for negative exponent.
2182 Reported by D Goel.
2183
2184 2005-08-02 Richard M. Stallman <rms@gnu.org>
2185
2186 * frame.c (Fframe_char_width): Doc fix.
2187
2188 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
2189
2190 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
2191 Defvar it.
2192
2193 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
2194
2195 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
2196 (my_create_window, my_create_tip_window): Make static.
2197
2198 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
2199 (my_set_foreground_window, my_destroy_window): Make static.
2200
2201 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
2202
2203 Merge gnulib getopt implementation into Emacs.
2204
2205 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
2206 now part of lib-src.
2207
2208 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
2209
2210 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
2211
2212 2005-07-25 Jason Rumney <jasonr@gnu.org>
2213
2214 * w32menu.c (w32_menu_display_help): Suppress tooltip when
2215 navigating menus with the keyboard.
2216
2217 2005-07-23 Richard M. Stallman <rms@gnu.org>
2218
2219 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
2220
2221 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
2222 gc_relative_threshold, one by one.
2223
2224 * keyboard.c (read_char): Test gc_cons_threshold.
2225 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
2226
2227 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
2228 gc_relative_threshold, one by one.
2229
2230 * alloc.c (gc_cons_threshold): Not static.
2231 (gc_cons_combined_threshold): Var deleted.
2232 (gc_relative_threshold): New variable.
2233 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
2234 instead of gc_cons_combined_threshold.
2235
2236 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
2237 (gc_cons_combined_threshold): Declaration deleted.
2238
2239 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2240
2241 * mac.c: Don't include stdlib.h or string.h.
2242 (Fdo_applescript, Fmac_file_name_to_posix)
2243 (Fmac_file_name_to_posix): Doc fixes.
2244 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
2245 (Fmac_code_convert_string): Likewise.
2246 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
2247 if the executable is not contained in a bundle.
2248
2249 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
2250 (gray_width, gray_height): Remove defines.
2251 (gray_bits, gray_bitmap_width, gray_bitmap_height)
2252 (gray_bitmap_bits): Remove variables.
2253 (lispy_function_keys): Remove extern.
2254 (free_frame_menubar): Add extern.
2255 (x_window_to_frame): Remove function.
2256 (unwind_create_tip_frame): Add declaration.
2257 (x_set_name_internal): New function.
2258 (x_set_name, x_set_title): Use it.
2259 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
2260 (Fx_display_pixel_height, Fx_display_planes)
2261 (Fx_display_color_cells, Fx_server_max_request_size)
2262 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2263 (Fx_display_mm_height, Fx_display_mm_width)
2264 (Fx_display_backing_store, Fx_display_visual_class)
2265 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
2266
2267 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2268
2269 * macselect.c (Fx_own_selection_internal): Follow error conventions.
2270 (Fx_get_selection_internal, Fx_selection_owner_p)
2271 (Fx_selection_exists_p): Doc fixes.
2272 (syms_of_macselect) <selection-converter-alist>: Likewise.
2273
2274 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
2275
2276 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2277
2278 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
2279 (Fccl_execute_on_string): Likewise; add usage info.
2280
2281 * composite.c (Fcompose_region_internal)
2282 (Fcompose_string_internal):
2283 Improve argument/docstring consistency.
2284
2285 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
2286 Fix typos in docstrings.
2287
2288 * textprop.c (Fnext_char_property_change)
2289 (Fprevious_char_property_change): Doc fixes.
2290
2291 * window.c (Fset_window_margins, Fset_window_fringes):
2292 Improve argument/docstring consistency.
2293
2294 * xfaces.c (Finternal_lisp_face_p): Doc fix.
2295
2296 2005-07-21 Andreas Schwab <schwab@suse.de>
2297
2298 * eval.c (restore_stack_limits): Return a value.
2299
2300 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
2301
2302 * eval.c (Fdefvar): Doc fix.
2303
2304 2005-07-20 Kim F. Storm <storm@cua.dk>
2305
2306 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
2307 Use make_save_value to unwind protect stream.
2308
2309 * lread.c (Fload, load_unwind):
2310 Use make_save_value to unwind protect stream.
2311
2312 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
2313
2314 * eval.c (Fprog2, Fcalled_interactively_p),
2315 (syms_of_eval) <debug-on-quit>: Doc fixes.
2316 (syms_of_eval) <max-specpdl-size>:
2317 (Finteractive_p): Fix typos in docstrings.
2318
2319 2005-07-19 Kim F. Storm <storm@cua.dk>
2320
2321 * w32fns.c (Vx_hand_shape): Variable removed.
2322 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
2323
2324 2005-07-19 Kenichi Handa <handa@m17n.org>
2325
2326 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
2327
2328 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
2329
2330 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
2331
2332 2005-07-18 Kim F. Storm <storm@cua.dk>
2333
2334 * frame.h (struct frame): New member already_hscrolled_p.
2335
2336 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
2337 to avoid redisplay looping hscrolling back and forth ad infinitum.
2338
2339 2005-07-18 Juri Linkov <juri@jurta.org>
2340
2341 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
2342 * keymap.c (Fminor_mode_key_binding):
2343 * macterm.c (mac-emulate-three-button-mouse):
2344 Delete duplicate duplicate words.
2345
2346 2005-07-18 Ken Raeburn <raeburn@gnu.org>
2347
2348 * minibuf.c (Ftest_completion): Fix odd syntax in test.
2349
2350 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2351
2352 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
2353
2354 * macgui.h (struct _XGC): New struct.
2355 (GC): Use it.
2356 (GCForeground, GCBackground, GCFont): Use X11 mask values.
2357 (XCreateGC, XParseGeometry): Move externs to macterm.h.
2358
2359 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
2360 (XSetFont): Add declaration.
2361 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
2362 Remove functions.
2363 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
2364 New defines.
2365 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
2366 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
2367 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
2368 Use them.
2369 (mac_erase_rectangle): New function.
2370 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
2371 (x_draw_stretch_glyph_string): Use it.
2372 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
2373 (XSetBackground, XSetFont): Adjust for new GC implementation.
2374 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
2375 (XTset_vertical_scroll_bar): Clear area under scroll bar.
2376
2377 * macterm.h (struct mac_display_info): Change types of
2378 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
2379 (XCreateGC, XParseGeometry): Move externs from macgui.h.
2380
2381 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
2382
2383 2005-07-16 Richard M. Stallman <rms@gnu.org>
2384
2385 * buffer.c (Fmake_overlay): Doc fix.
2386
2387 2005-07-16 Eli Zaretskii <eliz@gnu.org>
2388
2389 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
2390 Vw32_valid_locale_ids, and Vw32_valid_codepages.
2391
2392 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2393
2394 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
2395 Use Fstring_as_unibyte instead of string_make_unibyte.
2396
2397 2005-07-15 Richard M. Stallman <rms@gnu.org>
2398
2399 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
2400
2401 2005-07-15 Kim F. Storm <storm@cua.dk>
2402
2403 * xdisp.c: Fix redisplay loop in last change.
2404 (IT_POS_VALID_AFTER_MOVE_P): New macro.
2405 (move_it_vertically_backward, move_it_by_lines): Use it.
2406
2407 2005-07-14 Jason Rumney <jasonr@gnu.org>
2408
2409 * w32.c (init_environment): Default HOME directory to user's
2410 appdata directory if possible.
2411
2412 2005-07-14 Kim F. Storm <storm@cua.dk>
2413
2414 * .gdbinit (pitx): Fix output format. Print string charpos.
2415
2416 * lread.c (syms_of_lread): Initialize seen_list.
2417
2418 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
2419
2420 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
2421 Staticpro re_match_object.
2422
2423 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2424
2425 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
2426 dereference.
2427
2428 * macterm.c (mac_window_to_frame): Remove duplicate define.
2429
2430 2005-07-14 Kenichi Handa <handa@m17n.org>
2431
2432 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
2433 (code_convert_region): Adjust for the above change.
2434 (set_conversion_work_buffer): If the work buffer is already in
2435 use, generate a new buffer and return it. Otherwise return Qnil.
2436 (run_pre_post_conversion_on_str): Adjust for the above change.
2437 (run_pre_write_conversin_on_c_str): Likewise.
2438
2439 2005-07-13 Kim F. Storm <storm@cua.dk>
2440
2441 * xdisp.c (start_display): Don't reseat to next visible line start
2442 if current start position is in a string or image.
2443 (move_it_vertically_backward): Be sure to move out of strings and
2444 images when moving it2 forward.
2445 (move_it_by_lines): When moving forward, move to next buffer
2446 position if we end up in a string or image. When moving backward,
2447 count rows moved over when moving to start of current row in case
2448 row starts in middle of a string or image. Also move further
2449 backward if we end up in a string or image.
2450 (try_cursor_movement): If overlay string spans multiple lines,
2451 move backward to set cursor on start of an overlay string.
2452 (cursor_row_p): Row is ok if cursor is at newline from string, but
2453 string starts on this line (so we always position cursor at start
2454 of string).
2455
2456 * indent.c (Fvertical_motion): If start position is on an image,
2457 don't move back if we move too far (that's almost certain to happen).
2458
2459 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
2460 row in minibuffer windows.
2461 (try_window): Don't check margins in minibuffer windows.
2462
2463 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2464
2465 * macterm.c: Don't include stdlib.h or composite.h.
2466 (x_use_underline_position_properties, last_mouse_press_frame)
2467 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
2468 (syms_of_macterm, mac_initialize): Don't initialize them.
2469 (waiting_for_input, initial_argv, initial_argc)
2470 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
2471 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
2472 (extra_keyboard_modifiers): Fix type in extern.
2473 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
2474 (x_scroll_bar_report_motion): Add argument types to declaration.
2475 (mac_compute_glyph_string_overhangs): Add declaration.
2476 (disable_mouse_highlight): Remove unused variable.
2477 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
2478 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
2479 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
2480 All callers changed.
2481 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
2482 timestamp.
2483 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
2484 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
2485 only when its width is less than the height.
2486 (XTredeem_scroll_bar): Sync with xterm.c.
2487 (font_name_table, font_name_table_size, font_name_count):
2488 Make static.
2489 (drag_and_drop_file_list): Remove variable. Previous use is now
2490 local to function.
2491 (do_ae_open_documents): Move DRAG_N_DROP event construction part
2492 from XTread_socket.
2493 (XTread_socket): Consolidate setting of event timestamp.
2494 Move DRAG_N_DROP event construction part to do_ae_open_documents.
2495 Support extra_keyboard_modifiers.
2496
2497 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
2498 beginning with that for ASCII.
2499
2500 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
2501
2502 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
2503 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
2504 (syms_of_alloc): Declare gc-cons-percentage.
2505
2506 * eval.c (Feval, Ffuncall):
2507 * keyboard.c (read_char):
2508 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
2509
2510 * lisp.h (gc_cons_combined_threshold): Declare.
2511
2512 2005-07-12 Kim F. Storm <storm@cua.dk>
2513
2514 * coding.c (Qprocess_argument):
2515 * coding.h (Qprocess_argument): Remove unused var.
2516
2517 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
2518
2519 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2520
2521 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
2522 Endian.h.
2523 [!MAC_OSX] (fchmod, fchown): New functions.
2524 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
2525 Use SBYTES and EndianU32_BtoN.
2526 (mac_get_object_from_code): Return 4 byte string even if argument
2527 is 0. Use make_unibyte_string and EndianU32_NtoB.
2528 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
2529 (Fmac_set_file_type): Fix documents and argument declarations.
2530 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
2531
2532 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
2533
2534 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
2535
2536 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2537
2538 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
2539 Lucid if X_I18N, font otherwise.
2540
2541 2005-07-10 Steven Tamm <steventamm@mac.com>
2542
2543 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
2544 (Fmac_set_file_type, Fmac_set_file_creator): Add.
2545 (mac_get_object_from_code, mac_get_code_from_arg): Add.
2546
2547 2005-07-10 Richard M. Stallman <rms@gnu.org>
2548
2549 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
2550 (syms_of_lread): Set up eval-buffer-list.
2551 (Feval_buffer, Feval_region): Bind eval-buffer-list.
2552
2553 2005-07-08 Richard M. Stallman <rms@gnu.org>
2554
2555 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
2556
2557 2005-07-08 Kim F. Storm <storm@cua.dk>
2558
2559 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
2560 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
2561
2562 2005-07-07 Kim F. Storm <storm@cua.dk>
2563
2564 * window.c (Frecenter): Fix last change (set iarg before use).
2565
2566 2005-07-06 Richard M. Stallman <rms@gnu.org>
2567
2568 * window.c (Frecenter): When arg is inside the scroll margin,
2569 move it out of the margin.
2570
2571 2005-07-06 Jason Rumney <jasonr@gnu.org>
2572
2573 * w32console.c (initialize_w32_display): Detect when the console
2574 dimensions are insane, and default to 80x25 instead.
2575 (w32_use_full_screen_buffer): Default to NIL.
2576
2577 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2578
2579 * macterm.c (mac_draw_vertical_window_border): Use foreground of
2580 VERTICAL_BORDER_FACE_ID for vertical border line.
2581 (mac_encode_char): Call check_ccl_update in advance.
2582 (mac_to_x_fontname, x_font_name_to_mac_font_name)
2583 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
2584 Don't assume that font family length is less than 32.
2585 (x_compute_min_glyph_bounds): Make static.
2586 (x_load_font): Never set fonts_changed_p to zero.
2587
2588 2005-07-04 Lute Kamstra <lute@gnu.org>
2589
2590 * Update FSF's address in GPL notices.
2591
2592 2005-07-03 Richard M. Stallman <rms@gnu.org>
2593
2594 * xdisp.c (try_window): Fix previous change in how it handles
2595 a partially-visible line or one only partly past the margin.
2596
2597 * window.c (window_scroll_pixel_based): Take account
2598 of this_scroll_margin when finding point when scrolling up.
2599
2600 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
2601
2602 * window.c (window_scroll_pixel_based, window_scroll_line_based):
2603 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
2604 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
2605
2606 2005-07-02 Juri Linkov <juri@jurta.org>
2607
2608 * w32term.c (w32_draw_vertical_window_border): Use foreground of
2609 VERTICAL_BORDER_FACE_ID for vertical border line.
2610
2611 2005-07-02 Eli Zaretskii <eliz@gnu.org>
2612
2613 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
2614 fchmod so that chmod doesn't get called on MSDOS before the file
2615 is closed.
2616
2617 2005-07-01 Jason Rumney <jasonr@gnu.org>
2618
2619 * w32term.c (cleartype_active): New flag for enabling sub-pixel
2620 workaround.
2621 (w32_initialize): Initialize it.
2622 (w32_native_per_char_metric): Allow a couple of extra pixels when
2623 Cleartype is active.
2624
2625 * w32term.c (w32_initialize): Move check for screen reader here
2626 from syms_of_w32term.
2627
2628 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2629
2630 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
2631 is not zero.
2632
2633 2005-07-01 Masatake YAMATO <jet@gyve.org>
2634
2635 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
2636
2637 2005-06-30 Juri Linkov <juri@jurta.org>
2638
2639 * xdisp.c (x_draw_vertical_border): If left fringe is not present
2640 decrease x coord of vertical border by 1 pixel to not occupy text
2641 area of the right window.
2642
2643 * xterm.c (x_draw_vertical_window_border): Use foreground of
2644 VERTICAL_BORDER_FACE_ID for vertical border line.
2645
2646 * term.c (turn_on_face): In standout mode apply specified
2647 fg to bg, and specified bg to fg (this makes the logic of
2648 inversion on terminal consistent with X).
2649
2650 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
2651
2652 * eval.c (user_variable_p_eh): New function.
2653 (Fuser_variable_p): Use it. Clarify docstring.
2654 Return t for aliases of user options, nil for alias loops.
2655
2656 2005-06-27 Richard M. Stallman <rms@gnu.org>
2657
2658 * eval.c (Fdefvar): Improve error message.
2659
2660 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2661
2662 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
2663 change.
2664
2665 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
2666
2667 * eval.c (Fdefvar): Don't try to set constant symbols.
2668
2669 2005-06-25 Richard M. Stallman <rms@gnu.org>
2670
2671 * macfns.c (Fx_show_tip): Pass new arg to try_window.
2672
2673 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
2674
2675 * xfns.c (Fx_show_tip): Pass new arg to try_window.
2676
2677 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
2678 (redisplay_window): Handle try_window reporting point in scroll margin.
2679
2680 * dispextern.h (try_window): Declare new arg.
2681
2682 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
2683 Use fchmod to copy the file modes.
2684 (Frename_file): Don't copy UID and GID here;
2685 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
2686
2687 * eval.c (call_debugger): Take full care of extending stack limits
2688 to make space for the debugger, and restore the change afterward.
2689 Bind debug-on-error to nil.
2690 (restore_stack_limits): New subroutine.
2691 (Fsignal): Extend specpdl bound along with eval depth bound,
2692 for calling edebug. Don't do either one, for calling debugger.
2693 (find_handler_clause): Don't bind debug-on-error here.
2694 Don't unbind anything either.
2695 Temporarily advance max_specpdl_size for calling
2696 internal_with_output_to_temp_buffer.
2697 (grow_specpdl): Don't alter max_specpdl_size before signaling
2698 an error.
2699 (syms_of_eval) <max-specpdl-size>: Doc fix.
2700
2701 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
2702
2703 2005-06-24 Eli Zaretskii <eliz@gnu.org>
2704
2705 * fileio.c (Frename_file): Undo last change: no need to ifdef away
2706 chown on DOS_NT platforms.
2707
2708 * w32.c (sys_chown): New function.
2709
2710 * s/ms-w32.h (chown): New; define to sys_chown.
2711
2712 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
2713
2714 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
2715 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
2716
2717 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
2718
2719 2005-06-23 Richard M. Stallman <rms@gnu.org>
2720
2721 * xdisp.c (get_next_display_element): Finish reversing the tests of
2722 Vnobreak_char_display.
2723
2724 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
2725 All uses changed.
2726 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
2727 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
2728
2729 * fileio.c (Frename_file): Preserve owner and group, if possible,
2730 when copying.
2731
2732 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
2733
2734 * abbrev.c (Funexpand_abbrev):
2735 * category.c (Fmake_category_set):
2736 * dispnew.c (Fsleep_for, Fsit_for):
2737 * editfns.c (Fsubst_char_in_region):
2738 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
2739 * frame.c (make_frame_without_minibuffer):
2740 * lread.c (read_vector):
2741 * macfns.c (check_x_frame):
2742 * process.c (Fstop_process, Fcontinue_process):
2743 * search.c (Freplace_match):
2744 * syntax.c (Fstring_to_syntax):
2745 * w32fns.c (check_x_frame, check_x_display_info):
2746 * xfaces.c (x_supports_face_attributes_p):
2747 * xselect.c (Fx_own_selection_internal): Follow error conventions.
2748
2749 * image.c (fn_png_init_io): Don't define it.
2750 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
2751 (png_read_from_file): New function, based on png_read_from_memory.
2752 (png_load): Use it, instead of fn_png_init_io.
2753
2754 2005-06-23 Kim F. Storm <storm@cua.dk>
2755
2756 * search.c (Fmatch_data): Remove evaporate option.
2757 (Fset_match_data): Do not mention evaporate option in doc string.
2758 Add commentary explaining evaporate arg (for internal use only).
2759 (unwind_set_match_data): Add comment on evaporate use.
2760
2761 2005-06-22 Miles Bader <miles@gnu.org>
2762
2763 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
2764 (realize_basic_faces, syms_of_xfaces): Update references to it.
2765 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
2766 to `VERTICAL_BORDER_FACE_ID'.
2767 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2768
2769 2005-06-21 Juri Linkov <juri@jurta.org>
2770
2771 * dispextern.h: Add extern Qframe_set_background_mode.
2772
2773 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2774 Qframe_set_background_mode.
2775
2776 * frame.c (Fmodify_frame_parameters):
2777 Call frame-set-background-mode after changing the background color
2778 on non-window non-dos branch.
2779
2780 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2781
2782 * fns.c (Fchar_table_range):
2783 * process.c (Fmake_network_process): Fix spellings.
2784
2785 2005-06-20 Kim F. Storm <storm@cua.dk>
2786
2787 * fns.c (Fsort): Doc fix.
2788
2789 2005-06-20 Miles Bader <miles@gnu.org>
2790
2791 * xfaces.c (Qvertical_divider): New variable.
2792 (realize_basic_faces): Realize its face.
2793 (syms_of_xfaces): Initialize it.
2794
2795 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2796
2797 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2798 window-separator on ttys using `vertical-divider' face by default.
2799
2800 2005-06-17 Richard M. Stallman <rms@gnu.org>
2801
2802 * xdisp.c (get_next_display_element):
2803 Reverse test of Vshow_nonbreak_escape.
2804
2805 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2806 (Ftty_no_underline): New function.
2807 (syms_of_term): defsubr it.
2808
2809 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2810
2811 * dispnew.c (spec_glyph_lookup_face): New function.
2812 (build_frame_matrix_from_leaf_window): Use it.
2813
2814 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2815
2816 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2817
2818 2005-06-12 Richard M. Stallman <rms@gnu.org>
2819
2820 * keyboard.c (read_char): After catching a longjmp,
2821 call restore_getcjmp.
2822
2823 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2824
2825 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2826
2827 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2828
2829 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2830 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2831 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2832 events.
2833 (XTread_socket): Don't pass keyboard events with the option
2834 modifier to the system when Vmac_command_key_is_meta is nil or
2835 Vmac_option_modifier is non-nil.
2836 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
2837 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
2838 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
2839 handler function.
2840 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
2841 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
2842 handler part to mac_handle_mouse_event.
2843
2844 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
2845
2846 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
2847 NEW-ALIAS and BASE-VARIABLE, respectively.
2848
2849 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2850
2851 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2852 (get_phys_cursor_geometry, format_mode_line_unwind_data)
2853 (get_line_height_property, x_produce_glyphs): Remove unused vars.
2854
2855 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
2856
2857 2005-06-13 Eli Zaretskii <eliz@gnu.org>
2858
2859 * w32term.c (x_use_underline_position_properties): New variable.
2860 (x_draw_glyph_string): Remind in a comment to change doc string of
2861 x-use-underline-position-properties if/when underline positioning
2862 is implemented.
2863 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
2864 and initialize it to nil.
2865
2866 2005-06-12 Jason Rumney <jasonr@gnu.org>
2867
2868 * w32fns.c (NEWOPENFILENAME): New struct.
2869 (Fx_file_dialog): Use it to trick the system into giving us up to
2870 date dialogs on systems that are documented to support it.
2871 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
2872
2873 2005-06-12 Eli Zaretskii <eliz@gnu.org>
2874
2875 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
2876 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
2877
2878 2005-06-11 Eli Zaretskii <eliz@gnu.org>
2879
2880 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
2881 to CreateDIBSection to avoid a compiler warning.
2882 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
2883 warning.
2884 (png_load): Cast return values of fn_png_create_read_struct and
2885 fn_png_create_info_struct, to avoid compiler warnings on W32.
2886 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
2887 to avoid compiler warnings.
2888 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
2889 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
2890 avoid a compiler warning.
2891 (tiff_load): Cast return values of fn_TIFFOpen and
2892 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
2893 to IMAGE_BACKGROUND to avoid a compiler warning.
2894 (gif_load): Cast return values of fn_DGifOpenFileName and
2895 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
2896 IMAGE_BACKGROUND to avoid a compiler warning.
2897 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
2898 before redefining.
2899
2900 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
2901 the call to CreateDIBSection, to avoid a compiler warning.
2902
2903 2005-06-11 Jason Rumney <jasonr@gnu.org>
2904
2905 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
2906 minibuffer.
2907 * macfns.c (Fx_file_dialog): Likewise.
2908
2909 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2910
2911 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
2912
2913 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2914
2915 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
2916 * w32fns.c (syms_of_w32fns): Fix spellings.
2917
2918 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2919
2920 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
2921 `verbose'; print diagnostic messages only if it is non-zero.
2922 All callers changed to pass a zero value unless DEBUG_DUMP is defined
2923 in the environment.
2924 (copy_executable_and_dump_data): Print section names with %.8s.
2925
2926 2005-06-10 Masatake YAMATO <jet@gyve.org>
2927
2928 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
2929 when mouse_face is not given.
2930
2931 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
2932
2933 * window.c (Fselect_window): Adapt call to Fselect_frame.
2934
2935 * lisp.h: Update EXFUN of Fselect_frame.
2936
2937 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
2938
2939 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
2940 no_enter.
2941 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
2942 Adapt to above change.
2943
2944 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2945
2946 * fns.c (Fmemq, Fmaphash): Doc fixes.
2947
2948 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2949
2950 * xfaces.c (Fdisplay_supports_face_attributes_p):
2951 Fix typo in docstring.
2952
2953 2005-06-08 Steven Tamm <steventamm@mac.com>
2954
2955 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
2956 used by gcc4 on intel mac.
2957
2958 2005-06-09 Kim F. Storm <storm@cua.dk>
2959
2960 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
2961 in REUSE list if non-nil; free them if equal to evaporate.
2962 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
2963 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
2964 (restore_search_regs): Rename from restore_match_data. Uses changed.
2965 (unwind_set_match_data): New function.
2966 (record_unwind_save_match_data): New function like save-match-data.
2967
2968 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
2969 (record_unwind_save_match_data): Add prototype.
2970 (restore_search_regs): Rename from restore_match_data.
2971
2972 * composite.c (compose_chars_in_text):
2973 * eval.c (do_autoload):
2974 * macmenu.c (set_frame_menubar):
2975 * process.c (read_process_output, exec_sentinel):
2976 * xmenu.c (set_frame_menubar):
2977 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
2978 * w32menu.c (set_frame_menubar):
2979 Use record_unwind_save_match_data.
2980
2981 2005-06-08 Richard M. Stallman <rms@gnu.org>
2982
2983 * xdisp.c (get_next_display_element): Alter previous change:
2984 Distinguish Vshow_nonbreak_escape = t or not t.
2985 For t, use escape_glyph once again, as before previous change.
2986 Use space or hyphen for display, instead of the non-ASCII char.
2987 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
2988
2989 * process.c (Fstart_process): Don't touch command_channel_p slot.
2990
2991 * process.h (struct process): Delete command_channel_p.
2992
2993 2005-06-07 Masatake YAMATO <jet@gyve.org>
2994
2995 * xdisp.c (note_mode_line_or_margin_highlight):
2996 Check the overlapping of re-rendering area to avoid flickering.
2997 (note_mouse_highlight): Call clear_mouse_face if PART
2998 is not ON_MODE_LINE nor ON_HEADER_LINE.
2999
3000 2005-06-07 Kim F. Storm <storm@cua.dk>
3001
3002 * process.c: Improve commentary for adaptive read buffering.
3003
3004 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
3005
3006 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
3007 if available.
3008
3009 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3010
3011 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
3012 New functions for popping down menus on C-g.
3013 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
3014
3015 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
3016 non-static.
3017
3018 * config.in: Add HAVE_CANCELMENUTRACKING.
3019
3020 2005-06-06 Eli Zaretskii <eliz@gnu.org>
3021
3022 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
3023
3024 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
3025
3026 * w32proc.c (RVA_TO_PTR): New macro.
3027
3028 * w32heap.c (RVA_TO_PTR): No need to #undef now.
3029
3030 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
3031 Depend on w32heap.h.
3032
3033 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
3034
3035 * keyboard.c (command_loop_1): Update Vthis_original_command.
3036
3037 2005-06-06 Richard M. Stallman <rms@gnu.org>
3038
3039 * xmenu.c (popup_get_selection): Undo previous change.
3040
3041 2005-06-06 Juri Linkov <juri@jurta.org>
3042
3043 * xdisp.c (Qno_break_space): New variable.
3044 (syms_of_xdisp): Initialize it.
3045 (get_next_display_element): Add no-break space and soft hypen
3046 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
3047 Use `no-break-space' face for no-break spaces.
3048
3049 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3050
3051 * window.c (delete_window): Handle the case where a h/vchild has
3052 a h/vchild.
3053
3054 2005-06-05 Eli Zaretskii <eliz@gnu.org>
3055
3056 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
3057 call to pfn_setsockopt, cast optval to `const char *'.
3058
3059 2005-06-04 Eli Zaretskii <eliz@gnu.org>
3060
3061 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
3062 (open_unc_volume): Cast return value of map_w32_filename, to avoid
3063 compiler warnings.
3064
3065 * s/ms-w32.h (fileno): Don't define if already defined.
3066
3067 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
3068
3069 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
3070
3071 2005-06-04 Richard M. Stallman <rms@gnu.org>
3072
3073 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
3074
3075 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3076
3077 * macmenu.c (cleanup_popup_menu): New function.
3078 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
3079 mac_menu_show Quit:s.
3080 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
3081 a dialog).
3082
3083 2005-06-04 Kim F. Storm <storm@cua.dk>
3084
3085 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
3086
3087 * callproc.c (Fcall_process): Don't use alloca to gradually
3088 increase size of buf, as it effectively uses twice the necessary
3089 space on the stack. Instead, pre-allocate buf of full size, and
3090 gradually increase the read size.
3091
3092 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
3093
3094 * eval.c (unbind_to): Preserve value of Vquit_flag.
3095
3096 * xterm.c (handle_one_xevent): Also ignore mouse motion just
3097 before a button release event.
3098
3099 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
3100
3101 * xfaces.c (Finternal_lisp_face_equal_p): Really report
3102 on faces in a frame, if the argument FRAME is non-nil.
3103 Improve argument/docstring consistency.
3104
3105 2005-06-02 Kim F. Storm <storm@cua.dk>
3106
3107 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
3108 (x_consider_frame_title, Fformat_mode_line): Save offset into
3109 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
3110
3111 2005-06-01 Kim F. Storm <storm@cua.dk>
3112
3113 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
3114
3115 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3116
3117 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
3118 resolution fields for scalable fonts to 0.
3119
3120 * xfaces.c (build_scalable_font_name): Round pixel size to the
3121 nearest integer.
3122
3123 2005-06-01 Kim F. Storm <storm@cua.dk>
3124
3125 * xdisp.c (display_mode_line): Support nested calls to redisplay
3126 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
3127
3128 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
3129
3130 * fileio.c (Finsert_file_contents):
3131 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
3132
3133 2005-05-31 Kim F. Storm <storm@cua.dk>
3134
3135 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
3136 (mode_line_noprop_ptr): Rename from frame_title_*.
3137 (store_mode_line_noprop_char): Rename from store_frame_title_char.
3138 (store_mode_line_noprop): Rename from store_frame_title.
3139 (mode_line_target): New enum to specify current output target
3140 for mode line formatting.
3141 (display_mode_element): Test it rather than frame_title_ptr and
3142 mode_line_string_list to determine where output should go.
3143 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
3144 (Vmode_line_unwind_vector): New variable.
3145 (format_mode_line_unwind_data, unwind_format_mode_line):
3146 New functions for unwind protection in mode line formatting.
3147 (x_consider_frame_title): Use them and new local var 'title_start'
3148 to support nested calls to format-mode-line and redisplay.
3149 Set mode_line_target to MODE_LINE_TITLE.
3150 (Fformat_mode_line): Use them and new local var 'string_start' to
3151 support nested calls to format-mode-line and redisplay.
3152 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
3153 Don't trim trailing dashes.
3154 (decode_mode_spec): Don't make infinite number of trailing dashes
3155 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
3156 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
3157 mode_line_string_face_prop, and Vmode_line_unwind_vector.
3158 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
3159 Initialize mode_line_target to MODE_LINE_DISPLAY.
3160
3161 2005-05-29 Richard M. Stallman <rms@gnu.org>
3162
3163 * buffer.c (Fbuffer_local_value): Call indirect_variable.
3164
3165 2005-05-28 Masatake YAMATO <jet@gyve.org>
3166
3167 * xdisp.c (note_mode_line_or_margin_highlight): Change the
3168 pointer to a hand cursor when hoovering over a mouse-face.
3169
3170 2005-05-27 Kenichi Handa <handa@m17n.org>
3171
3172 * xterm.c (x_encode_char): Call check_ccl_update in advance.
3173
3174 * ccl.c: Now an element of Vccl_program_table is a vector of
3175 length 4, not 3.
3176 (ccl_get_compiled_code): New arg idx. Caller changed.
3177 Adjust for the change of Vccl_program_table.
3178 (setup_ccl_program): Adjust for the change of Vccl_program_table.
3179 (check_ccl_update): New function.
3180 (Fregister_ccl_program): Use ASET to set an element of a vector.
3181 Adjusted for the change of Vccl_program_table.
3182
3183 * ccl.h (struct ccl_program): New member idx.
3184 (check_ccl_update): Extern it.
3185
3186 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
3187
3188 * image.c (Vimage_library_alist): Move from image.el.
3189 (syms_of_image): Defvar it.
3190 (lookup_image_type): Use it.
3191
3192 * buffer.c (Fbuffer_local_value): Make argument name match its use
3193 in docstring.
3194
3195 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
3196
3197 * keyboard.c (Frecursive_edit): Fix typo in docstring.
3198 (Fposn_at_x_y): Make argument name match its use in docstring.
3199
3200 2005-05-26 Lute Kamstra <lute@gnu.org>
3201
3202 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
3203
3204 2005-05-24 Masatake YAMATO <jet@gyve.org>
3205
3206 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
3207 as loop sentinels.
3208
3209 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
3210
3211 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
3212 select frame title ("Question"/"Information").
3213 (xdialog_show): Use it.
3214
3215 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
3216
3217 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
3218
3219 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
3220 a third argument (Qnil).
3221
3222 * lisp.h: x-popup-dialog can have three arguments.
3223
3224 * editfns.c (Fmessage_box): Use "Information" for frame title.
3225
3226 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
3227
3228 * termcap.c [VMS]: Include <starlet.h>.
3229
3230 2005-05-23 Masatake YAMATO <jet@gyve.org>
3231
3232 * xdisp.c (note_mode_line_or_margin_highlight): Add code
3233 for mouse-face. Change the type of the first argument from `window'
3234 to `Lisp_Object'.
3235 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
3236 window instead of w.
3237
3238 2005-05-22 Andreas Schwab <schwab@suse.de>
3239
3240 * process.c (send_process): Move misplaced volatile.
3241
3242 2005-05-21 Richard M. Stallman <rms@gnu.org>
3243
3244 * xdisp.c (display_mode_element): If we're processing a list and
3245 padding is specified, put it after the last element.
3246
3247 2005-05-21 Eli Zaretskii <eliz@gnu.org>
3248
3249 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
3250 "superroot" on DOS_NT systems.
3251
3252 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
3253
3254 * process.c (send_process): Restore the SIGPIPE handler if we
3255 catch a SIGPIPE.
3256
3257 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
3258
3259 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
3260 misleading comments).
3261 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
3262
3263 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
3264
3265 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
3266 Correct the right value.
3267
3268 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
3269
3270 * keyboard.c (syms_of_keyboard): Remove Lisp variables
3271 post-command-idle-hook and post-command-idle-delay.
3272 (command_loop_1): Don't try to execute post-command-idle-hook.
3273
3274 2005-05-16 Kim F. Storm <storm@cua.dk>
3275
3276 * xdisp.c (handle_display_prop): Handle empty replacement.
3277 (handle_single_display_spec): Return -1 for empty replacement.
3278
3279 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
3280
3281 * .gdbinit (pitx): Print more info about iterator.
3282
3283 2005-05-16 Andreas Schwab <schwab@suse.de>
3284
3285 * unexmacosx.c (unexec_realloc): Move declarations before statements.
3286
3287 2005-05-14 Richard M. Stallman <rms@gnu.org>
3288
3289 * xdisp.c (message3): Call cancel_echoing.
3290
3291 * alloc.c (Fmemory_full_p): New function.
3292 (syms_of_alloc): defsubr it.
3293
3294 * process.c (send_process_trap): Unblock SIGPIPE.
3295 (send_process): Reset SIGPIPE handler before reporting error.
3296
3297 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
3298
3299 * emacs.c (syms_of_emacs): Fix doc string for system-type.
3300
3301 2005-05-13 Richard M. Stallman <rms@gnu.org>
3302
3303 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
3304 (Finsert_file_contents): If we read 0 bytes from a special file,
3305 unlock the visited file if we locked it.
3306 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
3307 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
3308
3309 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3310
3311 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
3312
3313 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
3314 Regard toolkit scroll bar thumb drag events as squeezable and prevent
3315 redisplay from being paused by them.
3316
3317 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
3318 [!MAC_OSX] (target_ticks): Remove variable.
3319 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
3320 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
3321 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
3322 event occurs before timeout, behave as if the function were interrupted.
3323 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
3324 handling using Time Manager routines.
3325 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
3326 New variables.
3327 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
3328 (setitimer): New functions.
3329
3330 * macfns.c, macmenu.c: Don't include signal.h.
3331
3332 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
3333 Rename from get_control_part_bound. All callers changed.
3334 (x_scroll_bar_clear): New function.
3335 (x_clear_frame): Use it.
3336 (XTset_vertical_scroll_bar): Don't call Draw1Control.
3337 (x_scroll_bar_handle_click): Change type of second argument from
3338 int to ControlPartCode.
3339 (check_alarm): Remove declaration.
3340 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
3341 (XTread_socket): Use ControlPartCode instead of SInt16.
3342
3343 2005-05-13 Nozomu Ando <nand@mac.com>
3344
3345 * unexmacosx.c: Include assert.h.
3346 (MACOSX_MALLOC_MULT16): New define.
3347 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
3348 ptr is in unexec regions by checking it is multiple of 16.
3349 (unexec_malloc_header_t): New typedef.
3350 (unexec_malloc, unexec_realloc, unexec_free): Store and use
3351 allocated size information in unexec_malloc_header.
3352
3353 2005-05-10 Richard M. Stallman <rms@gnu.org>
3354
3355 * xterm.c (noinclude): Add #undef.
3356
3357 * image.c, xfns.c, xmenu.c: Don't include signal.h.
3358
3359 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
3360
3361 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
3362 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
3363 Doc fixes.
3364
3365 * dired.c (Ffile_name_completion): Make argument name
3366 match its use in docstring.
3367
3368 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
3369
3370 * eval.c (Fdefvaralias): Remove any pre-existing
3371 variable-documentation property of the alias.
3372
3373 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
3374
3375 * xfns.c (start_hourglass): Do nothing when running on a tty.
3376
3377 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
3378
3379 * fns.c (Fchar_table_range): Fix typos in docstring.
3380
3381 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3382
3383 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
3384
3385 2005-05-06 Eli Zaretskii <eliz@gnu.org>
3386
3387 * lread.c (Flocate_file_internal): Doc fix.
3388
3389 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
3390
3391 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3392
3393 * macselect.c (x_own_selection): Accept Lisp string as result of
3394 selection converter function.
3395 (x_clear_frame_selections): Don't call x-lost-selection-functions
3396 if Emacs is not owner of the selection.
3397 (Vmac_services_selection): Put variable and initialization in
3398 #ifdef MAC_OSX.
3399 (syms_of_macselect) [MAC_OSX]: Set default value of
3400 Vmac_services_selection to PRIMARY.
3401
3402 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
3403 (mac_handle_tool_bar_click): Remove unused function and declaration.
3404 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
3405 (install_scroll_bar_timer, set_scroll_bar_timer)
3406 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
3407 (get_control_part_bound, x_scroll_bar_handle_press)
3408 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
3409 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
3410 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
3411 (scroll_bar_timer_event_posted_p): New variables.
3412 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
3413 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
3414 (x_scroll_bar_create): Set control reference with NewControl.
3415 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
3416 Initialize track_top and track_height to nil.
3417 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
3418 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
3419 (XTset_vertical_scroll_bar): Don't make space between scroll bar
3420 and associated window.
3421 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
3422 from window config.
3423 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3424 Set track_top and track_height to nil when scroll bar size is changed.
3425 Recalculate them if they are nil.
3426 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
3427 clicked control is a scroll bar.
3428 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
3429 event handler functions. Don't add modifiers to scroll bar click
3430 events. Call scroll bar release handler when window is deactivated.
3431 (mac_initialize): Remove unused code for X toolkit.
3432 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
3433 Initialize Vx_toolkit_scroll_bars to nil.
3434
3435 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3436 New members track_top and track_height.
3437
3438 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
3439 init_process when including sys/select.h.
3440
3441 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
3442
3443 * eval.c (Fdefvaralias): Doc fix.
3444
3445 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3446
3447 2005-05-05 Kim F. Storm <storm@cua.dk>
3448
3449 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
3450 default value.
3451 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
3452 Fix type of cursor-in-non-selected-windows.
3453
3454 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3455
3456 * mac.c: #undef init_process so not to conflict with system headers.
3457
3458 2005-05-02 Richard M. Stallman <rms@gnu.org>
3459
3460 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
3461
3462 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
3463
3464 * xdisp.c (Vcursor_in_non_selected_windows)
3465 (Qcursor_in_non_selected_windows): Vars deleted.
3466 (syms_of_xdisp): Don't initialize them.
3467 (get_window_cursor_type): Use cursor_in_non_selected_windows
3468 buffer slot.
3469
3470 2005-05-02 Kim F. Storm <storm@cua.dk>
3471
3472 * macros.c (executing_kbd_macro_index): Rename from
3473 executing_macro_index. All uses changed.
3474 (executing_kbd_macro_iterations): Rename from
3475 executing_macro_iterations. All uses changed.
3476 (executing_kbd_macro): Rename from executing_macro.
3477 All uses changed.
3478 (syms_of_macros): Rename Lisp var executing-macro-index to
3479 executing-kbd-macro-index.
3480
3481 * xdisp.c (move_it_in_display_line_to): Fix last change.
3482
3483 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3484
3485 * xmenu.c (Fx_popup_menu): Doc fix.
3486
3487 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
3488
3489 2005-05-02 Jason Rumney <jasonr@gnu.org>
3490
3491 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
3492
3493 2005-05-02 Nozomu Ando <nand@mac.com>
3494
3495 * sysselect.h: Fix typo.
3496
3497 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
3498
3499 * charset.c (Fchars_in_region): Remove as obsolete.
3500
3501 2005-05-01 Kim F. Storm <storm@cua.dk>
3502
3503 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
3504 TO_CHARPOS. This may happen if last glyphs was an image or stretch
3505 glyph.
3506
3507 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3508
3509 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
3510
3511 2005-05-01 Richard M. Stallman <rms@gnu.org>
3512
3513 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
3514 If user cancels the menu, quit unless FOR_CLICK.
3515
3516 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
3517 All uses changed.
3518 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
3519 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
3520 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
3521 * commands.h (Vexecuting_kbd_macro): Likewise.
3522
3523 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
3524
3525 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
3526
3527 2005-04-30 Richard M. Stallman <rms@gnu.org>
3528
3529 * fileio.c (Ffind_file_name_handler): Handle the `operations'
3530 property of the file name handler.
3531 (Qoperations): New variable.
3532 (syms_of_fileio): Initialize and staticpro it.
3533
3534 * xdisp.c (set_message_1): Delete xassert.
3535
3536 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3537
3538 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
3539
3540 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
3541
3542 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
3543 before/after including Carbon.h if there is a working mktime.
3544
3545 2005-04-28 Kim F. Storm <storm@cua.dk>
3546
3547 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
3548 Fix cyclic alias check. If alias loop is detected, signal
3549 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
3550
3551 2005-04-28 Lute Kamstra <lute@gnu.org>
3552
3553 * eval.c (do_autoload): Record only autoloads in the autoload
3554 property of symbols.
3555
3556 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
3557
3558 * emacs.c (USAGE1): Add --basic-display and --quick options.
3559
3560 2005-04-27 Kim F. Storm <storm@cua.dk>
3561
3562 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
3563
3564 2005-04-26 Richard M. Stallman <rms@gnu.org>
3565
3566 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
3567 (syms_of_window): Doc fixes.
3568
3569 * indent.c (Fvertical_motion): Undo previous change.
3570
3571 2005-04-26 Kenichi Handa <handa@m17n.org>
3572
3573 * fns.c (char_table_range): New function.
3574 (Fchar_table_range): Signal an error if characters in the range
3575 have inconsistent values. Don't check the parent.
3576
3577 2005-04-25 Kenichi Handa <handa@m17n.org>
3578
3579 * fontset.c (fontset_set): Fix previous change.
3580
3581 2005-04-24 Richard M. Stallman <rms@gnu.org>
3582
3583 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
3584
3585 2005-04-24 Eli Zaretskii <eliz@gnu.org>
3586
3587 * regex.c (re_search_2, re_match_2_internal): Convert second arg
3588 of RE_TRANSLATE to int, to shut up GCC warnings.
3589
3590 * fileio.c (Fcopy_file): Doc fix.
3591 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
3592 not needed.
3593
3594 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3595
3596 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
3597 (SOME_MACHINE_OBJECTS): Likewise.
3598 (mac.o): Depend on ccl.h.
3599 (macselect.o): New target.
3600
3601 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
3602 Call syms_of_macselect.
3603
3604 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
3605
3606 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
3607 (QCLIPBOARD): Remove variable.
3608 (syms_of_mac): Don't initialize it.
3609 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
3610 Remove functions.
3611 (syms_of_mac): Don't defsubr them.
3612 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
3613 (QHFS_plus_D, QHFS_plus_C): New variables.
3614 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3615 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
3616 (cfstring_create_normalized): New functions.
3617 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
3618 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3619
3620 * macterm.c (handling_window_update, terminate_flag):
3621 Remove variables.
3622 (do_window_update, do_ae_quit_application, XTread_socket):
3623 Don't use them.
3624 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
3625 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
3626 (init_service_handler): Move to macselect.c. Remove declarations.
3627 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
3628 (Qapplication, Qabout): New variables.
3629 (syms_of_mac): Initialize them.
3630 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
3631 (Qperform): New variables.
3632 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
3633 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
3634 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
3635 (mac_store_application_menu_event, init_menu_bar): New functions.
3636 [USE_CARBON_EVENTS] (mac_handle_command_event)
3637 (init_command_handler): New functions.
3638 (mac_handle_window_event): Return noErr on window update event.
3639 (do_ae_quit_application): Call mac_store_application_menu_event.
3640 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
3641 and init_menu_bar.
3642
3643 * macterm.h (x_clear_frame_selections): Add extern.
3644
3645 * macselect.c: New file for selection processing on Mac OS.
3646
3647 2005-04-23 Richard M. Stallman <rms@gnu.org>
3648
3649 * fileio.c (Fcopy_file): New arg MUSTBENEW.
3650 (Frename_file): Pass new arg to Fcopy_file.
3651
3652 * window.c (window_size_fixed): Variable deleted.
3653 (syms_of_window): Initialize window-size-fixed to nil.
3654 But don't DEFVAR window_size_fixed.
3655
3656 2005-04-23 Andreas Schwab <schwab@suse.de>
3657
3658 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
3659 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
3660 use lib64 instead of lib.
3661 (_LP64) [_ARCH_PPC64]: Define if not defined.
3662
3663 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
3664
3665 * s/ms-w32.h (HAVE_PWD_H): Define.
3666
3667 2005-04-22 Kenichi Handa <handa@m17n.org>
3668
3669 * fns.c (copy_sub_char_table): Explicitly copy the default value
3670 of the sub-chartable.
3671
3672 * fontset.c (fontset_set): When a sub-chartable is created,
3673 explicitly sets the defalt value.
3674
3675 2005-04-22 Kim F. Storm <storm@cua.dk>
3676
3677 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
3678 (Fsafe_plist_get): Rename to Fplist_get.
3679 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
3680 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
3681
3682 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
3683
3684 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
3685 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3686 Use Fplist_get instead of Fsafe_plist_get.
3687
3688 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
3689
3690 2005-04-21 Miles Bader <miles@gnu.org>
3691
3692 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
3693
3694 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
3695
3696 * sysdep.c: Remove reference to defunct vms-pwd.h.
3697 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
3698 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
3699
3700 * config.in: Regenerate.
3701
3702 2005-04-20 Kenichi Handa <handa@m17n.org>
3703
3704 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
3705 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
3706 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
3707
3708 * alloc.c (make_sub_char_table): Argument changed to initial
3709 value of the slots.
3710
3711 * data.c (Faref): Handle special slots used as default values of
3712 ascii, eight-bit-control, eight-bit-control. Don't ignore a
3713 default value set for a group of characters.
3714 (Faset): Signal an error if IDXVAL is not a valid character code.
3715 Make a sub-chartable with correct initial value.
3716
3717 * fns.c (Fset_char_table_range): Don't set slots used as default
3718 values for ascii, eight-bit-control, eight-bit-graphic.
3719 Don't call Faref with charset-id.
3720 (Fset_char_table_default): Document how to treat normal character
3721 argument. Handle special slots used as default values of ascii,
3722 eight-bit-control, eight-bit-control. Make a sub chartable if
3723 necessary.
3724
3725 2005-04-20 Kenichi Handa <handa@m17n.org>
3726
3727 * search.c (boyer_moore): Fix previous change.
3728
3729 2005-04-19 Kim F. Storm <storm@cua.dk>
3730
3731 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
3732 face unless last visible char and first invisible char have the
3733 same face. Also use default face if saved_face_id is undefined.
3734
3735 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3736
3737 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
3738 `full_name'.
3739 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
3740 mac_scriptcode member.
3741
3742 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
3743 (syms_of_mac): Don't initialize them.
3744 (Vmac_charset_info_alist): New variable.
3745 (syms_of_mac): Defvar it.
3746 (create_text_encoding_info_alist): New function.
3747 (decode_mac_font_name, mac_to_x_fontname)
3748 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
3749 code the correspondence among XLFD charsets, Mac script codes, and
3750 Emacs coding systems. Use Vmac_charset_info_alist and result of
3751 create_text_encoding_info_alist instead.
3752 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
3753 routines also on Mac OS Classic.
3754 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
3755 Use add_font_name_table_entry.
3756 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
3757 specified. Derive unspecified scalable fields from specified one.
3758 (x_list_fonts): Consider Valternate_fontname_alist.
3759 (kDefaultFontSize): Change value from 9 to 12.
3760 (XLoadQueryFont): Get decoded font family, font face, and charset
3761 from x_font_name_to_mac_font_name. Set full name of loaded font.
3762 (mac_unload_font): Free `full_name' member.
3763 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
3764 NULL. Copy full_name member of struct MacFontStruct to that of
3765 struct font_info.
3766
3767 2005-04-19 Kim F. Storm <storm@cua.dk>
3768
3769 * xdisp.c (handle_stop): Set saved_face_id to current face if
3770 selective_display_ellipsis_p so ellipsis will be shown in same
3771 face as preceding text.
3772 (setup_for_ellipsis): Don't set saved_face_id here.
3773 (next_element_from_display_vector): Default to saved_face_id.
3774
3775 * fns.c (Fsafe_get): New function.
3776 (syms_of_fns): Defsubr it.
3777
3778 * lisp.h (Fsafe_get): EXFUN it.
3779
3780 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3781 loops in case of bad face property lists. Limit number of face
3782 alias lookups to 10 (in case of face alias loops).
3783
3784 2005-04-18 Kim F. Storm <storm@cua.dk>
3785
3786 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3787 It replaces the corresponding member from struct window, as a
3788 window may now show multiple overlay arrows.
3789 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3790
3791 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3792 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3793
3794 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3795 rather than from window.
3796 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3797 overlay_arrow_p members.
3798 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3799 if not default.
3800
3801 * window.h (struct window): Remove member overlay_arrow_bitmap.
3802
3803 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3804
3805 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3806 Calls changed. Don't check for overlay-arrow-bitmap property here.
3807 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3808 fringe is present, return Lisp integer for bitmap (or -1 for default).
3809 Fix value of overlay-arrow-bitmap property to be a symbol, use
3810 lookup_fringe_bitmap to parse it.
3811 (display_line): Change call to overlay_arrow_at_row. Store integer
3812 return value as overlay bitmap in row rather than window.
3813 Only show overlay arrow if row displays text, or if no other overlay
3814 arrow is seen in window (if overlay marker is at point-max).
3815
3816 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3817
3818 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3819
3820 2005-04-18 Lute Kamstra <lute@gnu.org>
3821
3822 * lread.c (Vloads_in_progress): Static.
3823 * fns.c (Vloads_in_progress): Remove extern.
3824 (load_in_progress): Add extern.
3825 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3826
3827 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3828
3829 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3830
3831 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3832
3833 * macterm.c (XTread_socket): Don't beep on keyboard input even if
3834 no frame is visible.
3835
3836 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
3837
3838 * term.c (struct keys): Add support for shifted keys.
3839
3840 2005-04-16 Richard M. Stallman <rms@gnu.org>
3841
3842 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
3843 (set_message): Call with_echo_area_buffer with WHICH = 0.
3844 (set_message_1): Erase the echo area buffer first thing.
3845 (echo_area_display): Don't clear echo_message_buffer.
3846
3847 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3848
3849 * Makefile.in (mac.o): Depend on charset.h and coding.h.
3850
3851 * mac.c: Include charset.h and coding.h.
3852 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
3853 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
3854 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
3855
3856 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3857
3858 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
3859
3860 * macterm.c (x_autoselect_window_p): Remove variable.
3861 (last_window): New variable.
3862 (XTreassert_line_highlight, x_change_line_highlight):
3863 Remove declarations.
3864 (mac_focus_changed, x_detect_focus_change): New functions and
3865 declarations.
3866 (XTextExtents16, front_emacs_window): Remove function.
3867 (mac_focus_frame): New function.
3868 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
3869 (mac_check_for_quit_char): Use it instead of front_emacs_window.
3870 (x_scroll_bar_report_motion): Obtain window from control owner.
3871 (x_make_frame_invisible): Set window manager size hint.
3872 (do_mouse_moved): Remove function.
3873 (XTread_socket): Move its contents here. Generate select-window
3874 event on mouse movement if needed. Use x_detect_focus_change on
3875 activate/deactivate events. Don't deiconify frame or invalidate
3876 window rectangle when dnd items are dropped.
3877 Don't activate/deactivate root control.
3878 (frame_highlight, frame_unhighlight): Activate/deactivate root
3879 control here.
3880 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
3881
3882 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
3883 New extern.
3884
3885 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
3886
3887 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
3888 (lisp): Use it.
3889 (SOME_MACHINE_LISP): Add tooltip.
3890
3891 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3892
3893 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
3894 Don't include TextEncodingConverter.h.
3895 (mac_system_script_code, Vmac_system_locale): New variables.
3896 (syms_of_mac): Defvar them.
3897 (mac_get_system_locale): New function.
3898
3899 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
3900 Use ENCODE_SYSTEM to encode title bar string.
3901 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
3902 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
3903 Use CFStringGetSystemEncoding to get system default string encoding.
3904
3905 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
3906 TextEncodingConverter.h.
3907
3908 2005-04-13 Steven Tamm <steventamm@mac.com>
3909
3910 * macterm.c (syms_of_macterm): Remove redundant definition of
3911 mac-pass-control-to-system.
3912
3913 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3914
3915 * window.c (Fset_window_configuration): Be careful when you choose
3916 among several possible points for the new_current_buffer.
3917
3918 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3919
3920 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
3921 poll_for_input_1. Set interrupt_input_pending to 1 instead.
3922 (Qlanguage_change) [MAC_OS]: New variable.
3923 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
3924 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
3925
3926 * macterm.c (mac_keyboard_text_encoding)
3927 (current_mac_keyboard_text_encoding): Remove variables.
3928 (XTread_socket): Store language-change event if keyboard script change
3929 is detected. Don't convert input to `mac_keyboard_text_encoding'.
3930 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
3931
3932 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
3933
3934 2005-04-10 Richard M. Stallman <rms@gnu.org>
3935
3936 * emacs.c (standard_args): Rename --bare-bones to --quick.
3937 Add -D aka --basic-display.
3938
3939 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
3940
3941 2005-04-09 Richard M. Stallman <rms@gnu.org>
3942
3943 * keymap.c (where_is_internal): Convert a string used as event type
3944 into "(any string)".
3945
3946 * lread.c (Vloads_in_progress): Not static.
3947 * fns.c (Vloads_in_progress): Add extern.
3948 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
3949
3950 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
3951
3952 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
3953
3954 2005-04-09 Lute Kamstra <lute@gnu.org>
3955
3956 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
3957 within the accessible part of the buffer.
3958
3959 2005-04-09 Kim F. Storm <storm@cua.dk>
3960
3961 * lread.c (readevalloop): Add args START and END as region in
3962 current buffer to read. Callers changed.
3963 When specified, narrow to this region only when reading,
3964 not during eval. Track next point to read from during eval.
3965 Also restore point to "real" buffer position before eval.
3966 (Feval_region): Don't save excursion and restriction here, and
3967 don't narrow to region. Just pass region to readevalloop.
3968 Note: Point is now preserved even when PRINTFLAG is nil.
3969
3970 2005-04-08 Kim F. Storm <storm@cua.dk>
3971
3972 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
3973
3974 2005-04-06 Kim F. Storm <storm@cua.dk>
3975
3976 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
3977
3978 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3979
3980 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
3981 (Fmac_get_preference): Doc fix.
3982
3983 * macfns.c (Fx_create_frame, x_create_tip_frame):
3984 Add "fontset-mac" to fallback font/fontsets.
3985
3986 2005-04-04 Kim F. Storm <storm@cua.dk>
3987
3988 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
3989
3990 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
3991 Call it again after autoload.
3992
3993 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3994
3995 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
3996 mallopt.
3997
3998 * ralloc.c (r_alloc_init): Ditto.
3999
4000 2005-04-01 Kenichi Handa <handa@m17n.org>
4001
4002 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
4003 (Vascii_eqv_table): Extern them.
4004
4005 * casetab.c (set_case_table): If standard is nonzero, setup
4006 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
4007
4008 * search.c (looking_at_1): Use current_buffer->case_canon_table,
4009 not DOWNCASE_TABLE.
4010 (string_match_1): Likewise.
4011 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
4012 Vascii_downcase_table.
4013 (fast_string_match_ignore_case): Likewise.
4014 (search_buffer): Fix checking of boyer-moore usability.
4015 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
4016 No need of tranlating characters in PAT. Fix calculation of
4017 simple_translate.
4018
4019 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
4020
4021 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
4022 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
4023 Use XtNtopShadowPixel and XtNbottomShadowPixel.
4024 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
4025 really work and that breaks with some versions of Xaw3d.
4026
4027 2005-03-31 Kenichi Handa <handa@m17n.org>
4028
4029 * coding.c (syms_of_coding): Fix previous change.
4030
4031 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
4032
4033 * fileio.c (search_embedded_absfilename): Fix last change.
4034
4035 2005-03-25 Kenichi Handa <handa@m17n.org>
4036
4037 * coding.c (syms_of_coding): Suggest to use set-coding-category in
4038 the docstring of coding-category-list.
4039
4040 2005-03-31 Kim F. Storm <storm@cua.dk>
4041
4042 * keyboard.c (Qmouse_fixup_help_message): New var.
4043 (syms_of_keyboard): Intern and staticpro it.
4044 (show_help_echo): Apply mouse-fixup-help-message to help string.
4045
4046 2005-03-30 Kim F. Storm <storm@cua.dk>
4047
4048 * xdisp.c (display_line): Allow multiple overlay arrows in window.
4049
4050 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
4051
4052 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
4053 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
4054 (Ffile_name_absolute_p): Use it.
4055 (search_embedded_absfilename): New fun, extracted from
4056 Fsubstitute_in_file_name. Use file_name_absolute_p.
4057 Free the pw data after use.
4058 (Fsubstitute_in_file_name): Use it.
4059 After cutting a prefix, re-check file-name-handler.
4060
4061 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
4062
4063 * w32term.h (x_output): Add focus_state.
4064
4065 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
4066 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
4067
4068 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
4069
4070 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
4071 Use Fexit_minibuffer.
4072 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
4073
4074 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
4075
4076 * dired.c (Ffile_attributes): Add a missing gcpro.
4077
4078 * alloc.c (make_number): The arg can be bigger than `int'.
4079 * lisp.h (make_number): Make prototype more precise.
4080
4081 * process.c, dired.c (Vfile_name_coding_system)
4082 (Vdefault_file_name_coding_system):
4083 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
4084 (Vdefault_file_name_coding_system): Remove unused declarations.
4085
4086 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4087
4088 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
4089 if it failed to pop up (Gnome "show pointer on ctrl" option makes
4090 menus fail to pop up).
4091
4092 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
4093
4094 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
4095 Just prepend a backslash without replacing the NBSP by an SPC.
4096
4097 2005-03-22 Kim F. Storm <storm@cua.dk>
4098
4099 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
4100 * dispextern.h (lookup_derived_face): Fix prototype.
4101 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
4102
4103 * xdisp.c (handle_single_display_spec): Derive left-fringe and
4104 right-fringe face from fringe face.
4105
4106 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
4107 Derive face from fringe face.
4108
4109 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4110
4111 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
4112
4113 2005-03-22 David Kastrup <dak@gnu.org>
4114
4115 * textprop.c (Fnext_char_property_change)
4116 (Fprevious_char_property_change): Allow marker as limit.
4117 (Fnext_single_char_property_change)
4118 (Fprevious_single_char_property_change): Check that limit is a
4119 number in strings.
4120 (Fnext_single_char_property_change): Coerce position to integer.
4121 (Fprevious_single_char_property_change): Same here.
4122
4123 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
4124
4125 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
4126
4127 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
4128
4129 * frame.c (Fignore_event): Remove.
4130 (syms_of_frame): Don't defsubr it.
4131
4132 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
4133 redundant `ignore-event'.
4134
4135 2005-03-19 Eli Zaretskii <eliz@gnu.org>
4136
4137 * unexec.c (write_segment, unexec): Move these functions to avoid
4138 forward references (which cause errors with "gcc -gcoff").
4139
4140 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4141
4142 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
4143 that it doesn't become "tooltip". The specbind is enough.
4144
4145 * xrdb.c (x_load_resources): Use different char *helv when I18N
4146 is present.
4147
4148 2005-03-17 Kenichi Handa <handa@m17n.org>
4149
4150 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
4151
4152 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4153
4154 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
4155 Use xic_create_fontsetname even for non-Motif menus.
4156 Don't forget to free the fontsetname.
4157
4158 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
4159
4160 2005-03-17 Richard M. Stallman <rms@gnu.org>
4161
4162 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
4163
4164 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
4165 (Fmake_symbolic_link): Use G to read the new file name.
4166
4167 * callint.c (Finteractive): Document G option.
4168 (Fcall_interactively): Implement G option.
4169
4170 * buffer.c (buffer_lisp_local_variables): New function,
4171 broken out from Fbuffer_local_variables.
4172 (clone_per_buffer_values): Use buffer_lisp_local_variables.
4173
4174 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4175
4176 * xfns.c (xic_create_fontsetname): Add `motif' argument.
4177 Always return a freshly allocated string.
4178 (xic_create_xfontset): Adjust call.
4179
4180 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
4181 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
4182 (dump_realized_face): Fix warning.
4183
4184 * emacs.c (Fkill_emacs): YAILOM.
4185
4186 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
4187
4188 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4189
4190 * mac.c (HASHKEY_TERMINAL): Remove.
4191 (HASHKEY_MAX_NID): New macro.
4192 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
4193 argument.
4194 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
4195 (xrm_create_database, xrm_q_put_resource)
4196 (xrm_merge_string_database, xrm_q_get_resource_1)
4197 (xrm_q_get_resource): Change resource database representation so
4198 that it may not use multiple hash tables for a single database.
4199 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
4200
4201 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
4202
4203 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
4204
4205 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
4206 locale-coding-system, as was already done for WINDOWSNT.
4207
4208 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
4209 translation for chars in the 0-255 range.
4210
4211 2005-03-16 Lute Kamstra <lute@gnu.org>
4212
4213 * floatfns.c (Ffloor): Doc fix.
4214
4215 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4216
4217 * mac.c: Include macterm.h instead of directly including Carbon.h.
4218 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
4219 (Qarray, Qdictionary): New variables.
4220 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
4221 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
4222 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
4223 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
4224 in callback for CFDictionaryApplyFunction.
4225 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
4226 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
4227 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
4228 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
4229 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
4230 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
4231 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
4232 (skip_white_space, parse_comment, parse_include_file)
4233 (parse_binding, parse_component, parse_resource_name, parse_value)
4234 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
4235 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
4236 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
4237 New functions.
4238
4239 * macfns.c (mac_get_rdb_resource): Remove function.
4240 (x_get_string_resource): Use xrm_get_resource.
4241
4242 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
4243
4244 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
4245 name_list_element.
4246 (mac_make_rdb): Create resource database from preferences and
4247 argument string.
4248 (mac_term_init): Save resource database to cddr part of
4249 name_list_element.
4250
4251 * macterm.h (xrm_merge_string_database, xrm_get_resource)
4252 (xrm_get_preference_database): Add externs.
4253 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
4254 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
4255 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
4256
4257 * process.c (init_process): Change `#ifdef DARWIN' to `#if
4258 defined (DARWIN) || defined (MAC_OSX)'
4259
4260 * s/darwin.h (DARWIN): Don't define.
4261
4262 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4263
4264 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
4265 Remove unused variables.
4266 (syms_of_macfns): Don't initialize them. Likewise for
4267 Qface_set_after_frame_default. Defvar and initialize
4268 Vx_window_horizontal_drag_shape.
4269 (x_set_mouse_color): Change mouse pointer shape.
4270 (mac_window) [!MAC_OSX]: Create root control.
4271 (Fx_create_frame): Remove initializations of mouse pointer shapes.
4272 (hourglass_started): New function (from xfns.c).
4273 (start_hourglass, cancel_hourglass): Put function body in #ifdef
4274 MAC_OSX.
4275 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
4276 indicator for each non-tooltip frame if needed, and show it.
4277 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
4278
4279 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
4280 Controls.h. Use ThemeCursor instead of CursHandle.
4281
4282 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
4283 Remove functions and declarations.
4284 (mac_set_colors): Take argument for saving background color.
4285 All callers changed.
4286 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
4287 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
4288 background color.
4289 (x_update_end, mac_do_track_drag): Don't reset background color.
4290 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
4291 Use SetThemeCursor.
4292 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
4293 indicator control to the upper-right corner of the window.
4294 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
4295 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
4296 (do_window_update): Update controls after updating content area.
4297 (mac_handle_window_event): Remove unused extern.
4298 (XTread_socket): Check both control handle and control part code
4299 to determine whether a scroll bar is clicked. Activate/deactivate
4300 root control instead of contained scroll bar controls.
4301 (make_mac_terminal_frame): Use ThemeCursor constants.
4302
4303 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
4304 New member hourglass_control.
4305 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
4306 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
4307
4308 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4309
4310 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
4311 coincides with that in Apple X11 except `clear', `enter' on
4312 laptops, and fn + `enter' on laptops.
4313
4314 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
4315
4316 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
4317 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
4318 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
4319
4320 * xfns.c (xic_defaut_fontset): New constant.
4321 (xic_create_fontsetname): New function.
4322 Extracted from create_frame_xic. Try to generate a slightly
4323 better fontset.
4324 (xic_create_xfontset): Use it.
4325 (create_frame_xic): Simplify.
4326
4327 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
4328
4329 * fileio.c (Fmake_symbolic_link): Fix last change.
4330
4331 2005-03-11 Richard M. Stallman <rms@gnu.org>
4332
4333 * fileio.c (Frename_file, Fadd_name_to_file)
4334 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
4335 expand the basename of FILE relative to it.
4336
4337 2005-03-11 Kenichi Handa <handa@m17n.org>
4338
4339 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
4340 before calling setup_coding_system so that autoloading of a coding
4341 system work.
4342
4343 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4344
4345 * xfns.c (hourglass_started): New function.
4346
4347 * dispextern.h: Declare hourglass_started.
4348
4349 * keyboard.c (Fexecute_extended_command): Restart hourglass
4350 after call to Fcompleting_read if already started.
4351
4352 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
4353 GTK main loop is entered in xterm.c, thus doing the redraw.
4354
4355 2005-03-10 Kim F. Storm <storm@cua.dk>
4356
4357 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
4358
4359 2005-03-08 Kenichi Handa <handa@m17n.org>
4360
4361 * frame.c (x_set_font): Call set_default_ascii_font if an
4362 available font is found.
4363
4364 * fontset.c (set_default_ascii_font): New function.
4365 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
4366
4367 * fontset.h (set_default_ascii_font): Extern it.
4368
4369 2005-03-07 Kim F. Storm <storm@cua.dk>
4370
4371 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
4372 (clear_image_cache_count): New var.
4373 (redisplay_internal): Don't clear face and image caches in the
4374 middle of redisplay; do it afterwards.
4375
4376 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
4377
4378 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
4379 is valid. If not, clear phys_cursor_on_p and return.
4380
4381 2005-03-07 Andreas Schwab <schwab@suse.de>
4382
4383 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
4384
4385 2005-03-06 Richard M. Stallman <rms@gnu.org>
4386
4387 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
4388
4389 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
4390 (Feval, Ffuncall): Use CHECK_CONS_LIST.
4391
4392 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
4393
4394 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
4395 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
4396
4397 2005-03-05 Juri Linkov <juri@jurta.org>
4398
4399 * emacs.c (USAGE1): Replace Info node name "command arguments"
4400 with "emacs invocation".
4401 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
4402 allow arguments `--color' and `MODE' to be separated by space.
4403 Add --no-blinking-cursor, -nbc.
4404 (standard_args): Add -nbc, --no-blinking-cursor.
4405
4406 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4407
4408 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
4409 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
4410 * fileio.c (Fexpand_file_name) [VMS]:
4411 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
4412 * doc.c (munge_doc_file_name) [VMS]: Likewise.
4413 (Fsnarf_documentation): Call munge_doc_file_name.
4414
4415 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4416
4417 * s/vms.h (FILE_SYSTEM_CASE): New macro.
4418 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
4419 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
4420
4421 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4422
4423 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
4424 defined (MAC_OSX) && defined (HAVE_CARBON)'.
4425
4426 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
4427
4428 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4429 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
4430 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
4431 (mac_clear_font_name_table): Move extern to macterm.h.
4432
4433 * macfns.c (install_window_handler): Move extern to macterm.h.
4434 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
4435 valid. Don't check !NILP (dir) because it is already checked with
4436 CHECK_STRING.
4437 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
4438 specifying the default location and obtaining the selected filename.
4439
4440 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4441
4442 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
4443 are included via Carbon.h.
4444
4445 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
4446 Define USE_CARBON_EVENTS to 1.
4447 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
4448 (x_free_frame_resources): Call remove_window_handler for
4449 non-tooltip windows.
4450 [TARGET_API_MAC_CARBON]: Don't include headers that are included
4451 via Carbon.h.
4452 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
4453 (mac_do_receive_dragUPP): New variables.
4454 (mac_handle_service_event, init_service_handler): Put declarations
4455 and definitions in #ifdef MAC_OSX.
4456 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
4457 drag-and-drop handler functions and register them.
4458 (remove_window_handler): New function.
4459 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
4460 Use fsspec_to_posix_pathname.
4461 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
4462 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
4463 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
4464 Set default cursors.
4465 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
4466 init_service_handler or init_quit_char_handler.
4467 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
4468
4469 * macterm.h (install_window_handler, remove_window_handler)
4470 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
4471 (mac_clear_font_name_table): New externs.
4472
4473 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4474
4475 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
4476 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
4477 (Fexpand_file_name): Likewise.
4478
4479 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4480
4481 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
4482 no longer special-case VMS. Add bogus return value.
4483
4484 2005-03-02 Kim F. Storm <storm@cua.dk>
4485
4486 * dispextern.h (XASSERTS): Define to 0 if not already defined.
4487 (xassert) [!XASSERTS]: Define dummy version.
4488
4489 2005-03-02 Kim F. Storm <storm@cua.dk>
4490
4491 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
4492 Reported by David Kastrup.
4493
4494 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
4495
4496 * xdisp.c (get_next_display_element): Fix control and escape
4497 glyph from display vector.
4498
4499 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
4500
4501 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
4502
4503 2005-02-27 Richard M. Stallman <rms@gnu.org>
4504
4505 * xdisp.c (fast_find_position): Rename END to BEG.
4506 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
4507
4508 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4509
4510 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
4511 gtk_window_resize and x_wm_set_size_hint.
4512
4513 2005-02-25 Kim F. Storm <storm@cua.dk>
4514
4515 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
4516
4517 * xdisp.c (init_from_display_pos): Don't read past end of
4518 it->overlay_strings array.
4519
4520 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
4521
4522 * buffer.c (syms_of_buffer): Fix typo.
4523
4524 2005-02-23 Lute Kamstra <lute@gnu.org>
4525
4526 * buffer.c (Foverlay_buffer): Doc fix.
4527
4528 2005-02-22 Kim F. Storm <storm@cua.dk>
4529
4530 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
4531 and symbol keys in alists and hash tables.
4532
4533 * xdisp.c (fast_find_position): Fix search for start of overlay.
4534
4535 2005-02-21 Kim F. Storm <storm@cua.dk>
4536
4537 * window.c (window_scroll_pixel_based): When scrolling backwards,
4538 handle partial visible line at end of window even when we hit PT.
4539
4540 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
4541
4542 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
4543
4544 2005-02-21 Kim F. Storm <storm@cua.dk>
4545
4546 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
4547 I think those asserts are bogus if buffer contains invisible text
4548 or images.
4549
4550 2005-02-21 David Kastrup <dak@gnu.org>
4551
4552 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
4553
4554 2005-02-20 Kim F. Storm <storm@cua.dk>
4555
4556 * xdisp.c (pos_visible_p): Be sure to move to the specified
4557 position. Always get the full ascent / descent of the
4558 corresponding row, to return reliable rtop and rbot values.
4559 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
4560 Must look one character back, as back_to_previous_line_start
4561 returns position after the newline.
4562 (move_it_vertically_backward): Fix heuristic for when to move further
4563 back in case line_height * 2/3 is larger than window height.
4564 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
4565 as it does not do anything anymore. Add arg current_matrix_p to
4566 use current matrix rather than desired matrix when set.
4567 (try_cursor_movement): Don't scroll to make cursor row fully
4568 visible if cursor didn't move. This avoids unexpected recentering
4569 in case of blinking cursor or accepting process output.
4570 Use current matrix to check cursor row visibility.
4571 (redisplay_window): Fix whether to recenter or move to top in case
4572 cursor line is taller than window height.
4573 (find_first_unchanged_at_end_row): Stop search if we reach a row
4574 which not enabled (instead of abort).
4575
4576 2005-02-18 Kim F. Storm <storm@cua.dk>
4577
4578 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
4579 to be nil in a :box attribute value list; customize prints that
4580 as lisp value when no box color is specified.
4581
4582 * .gdbinit (pitx, pit): Pretty print display iterator.
4583 (prowx, prow): Pretty print glyph row.
4584 (pcursorx, pcursor): Pretty print a window cursor.
4585 (pwinx, pwin): Pretty print struct window.
4586
4587 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
4588
4589 * alloc.c (BLOCK_BYTES): Harmless typo.
4590
4591 2005-02-17 Andreas Schwab <schwab@suse.de>
4592
4593 * xfns.c (hack_wm_protocols): Use correct type for last parameter
4594 of XGetWindowProperty to avoid aliasing issues.
4595 (Fx_window_property): Likewise.
4596
4597 * xselect.c (Fx_disown_selection_internal): Use union of struct
4598 input_event and struct selection_input_event to avoid aliasing issues.
4599
4600 * xterm.c (handle_one_xevent): Use union of struct input_event and
4601 struct selection_input_event to avoid aliasing issues.
4602 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
4603
4604 2005-02-17 Kim F. Storm <storm@cua.dk>
4605
4606 * dispextern.h (enum it_method): New enum.
4607 (GET_FROM_*): Its members.
4608 (struct it): Change member method from function pointer to enum.
4609
4610 * xdisp.c (check_it, init_from_display_pos, handle_stop)
4611 (setup_for_ellipsis, handle_single_display_spec)
4612 (handle_composition_prop, next_overlay_string)
4613 (get_overlay_strings, reseat_1, reseat_to_string)
4614 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
4615 (in_display_vector_p, display_line, get_next_display_element):
4616 Change it->method from function pointer to enum.
4617 (get_next_element): New array to map it->method to function.
4618 (get_next_display_element): Use it.
4619 (set_iterator_to_next): Use switch instead of if/else chain.
4620
4621 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4622
4623 * w32select.c: Summary: Thorough rework to implement Unicode
4624 clipboard operations and delayed rendering.
4625
4626 Drop last_clipboard_text and related code, keep track of
4627 ownership via clipboard_owner instead. Drop old #if0 sections.
4628
4629 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
4630 (clipboard_owner, modifying_clipboard, cfg_coding_system)
4631 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
4632 (current_coding_system, current_requires_encoding)
4633 (current_num_nls, current_clipboard_type, current_lcid):
4634 New static variables.
4635
4636 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
4637 (render, render_all, run_protected, lisp_error_handler)
4638 (owner_callback, create_owner, setup_config)
4639 (enum_locale_callback, cp_from_locale, coding_from_cp):
4640 New local functions.
4641
4642 (term_w32select, globals_of_w32select): New global functions.
4643
4644 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
4645 clipboard_owner instead. Use delayed rendering and provide
4646 all text formats. Provide CF_LOCALE if necessary.
4647
4648 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
4649 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
4650 available. Force DOS line-ends for decoding.
4651
4652 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
4653
4654 (syms_of_w32select): Init and register new variables.
4655
4656 * w32.h: Add prototypes for globals_of_w32select and
4657 term_w32select. Make the neighboring K&R declarations into
4658 prototypes, too.
4659
4660 * emacs.c: Include w32.h to get function prototypes.
4661 (main): Call globals_of_w32select.
4662
4663 * w32.c (term_ntproc): Call term_w32select.
4664
4665 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
4666
4667 2005-02-16 Kim F. Storm <storm@cua.dk>
4668
4669 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
4670 at end of display vector.
4671
4672 2005-02-15 Richard M. Stallman <rms@gnu.org>
4673
4674 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
4675 for mode and header lines.
4676
4677 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
4678
4679 * keymap.h (describe_map_tree): Change decl.
4680
4681 * keyboard.c (command_loop_1): Always use safe_run_hooks
4682 to run Qdeferred_action_function.
4683
4684 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
4685 (describe_map, describe_vector): Likewise. When it's 1,
4686 don't omit shadowed bindings, instead mark them as shadowed.
4687
4688 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
4689 for describe_map_tree. Pass 1 for MENTION_SHADOW.
4690
4691 * data.c (Fsetq_default): Allow no arg case.
4692
4693 2005-02-14 Kenichi Handa <handa@m17n.org>
4694
4695 * coding.c (encode_coding_string): Always return a unibyte string.
4696 If NOCOPY is nonzero and there's no need of encoding, make STR
4697 unibyte directly.
4698
4699 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
4700 multibyte string, signal an error instead of aborting.
4701
4702 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
4703
4704 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
4705
4706 2005-02-12 Kim F. Storm <storm@cua.dk>
4707
4708 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
4709
4710 2005-02-10 Kim F. Storm <storm@cua.dk>
4711
4712 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
4713 if it moves outside window or it doesn't display text.
4714
4715 2005-02-09 Kim F. Storm <storm@cua.dk>
4716
4717 * undo.c (Fprimitive_undo): Check that undo function does not
4718 switch buffer.
4719
4720 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4721
4722 * xselect.c (selection_data_to_lisp_data): For the special case
4723 type == XA_ATOM, data contains array of int, not array of Atom.
4724 (x_property_data_to_lisp, selection_data_to_lisp_data):
4725 Comment update: data must be array of int for format == 32.
4726
4727 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
4728
4729 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
4730
4731 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4732
4733 * xfns.c (Fx_change_window_property): Use long array when format is 32.
4734 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
4735 convert long array returned from XGetWindowProperty to an int array.
4736 (x_set_tool_bar_lines): Check that width and height is greater than
4737 zero before clearing area.
4738
4739 * xselect.c (x_reply_selection_request): Pass long array to
4740 XChangeProperty so that 64 bit longs are handeled correctly.
4741 (x_get_window_property): If format is 32 and long is bigger than 32
4742 bits convert data from XGetWindowProperty from long array to int array.
4743 (lisp_data_to_selection_data): When the input is a vector and the
4744 format is 32, allocate a long array even if long is bigger than 32 bits.
4745 (x_fill_property_data): Use char, short and long as the man page
4746 for XChangeProperty specifies. This way the data returned is OK for
4747 both 32 and 64 bit machines.
4748 (x_handle_dnd_message): Calculate size correctly even for 64 bit
4749 machines.
4750 (Fx_send_client_event): Undo change from 2005-02-05,
4751 x_fill_property_data now handles that case.
4752
4753 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
4754 reason for the approach in the code.
4755
4756 2005-02-07 Kim F. Storm <storm@cua.dk>
4757
4758 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
4759
4760 2005-02-06 Richard M. Stallman <rms@gnu.org>
4761
4762 * eval.c (Frun_hook_with_args)
4763 (Frun_hook_with_args_until_success)
4764 (Frun_hook_with_args_until_failure): Doc fixes.
4765
4766 2005-02-05 Andreas Schwab <schwab@suse.de>
4767
4768 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
4769
4770 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4771
4772 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
4773 the longs in a XClientMessageEvent correctly when long is 64 bits.
4774
4775 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4776
4777 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4778 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4779
4780 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4781
4782 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4783 events so the menu event comes after them. This is to prevent sit-for
4784 from exiting on buffered events directly after a menu selection,
4785 lisp code for Help => About Emacs uses sit-for.
4786
4787 * gtkutil.c (create_menus): Connect selection-done event instead of
4788 the deactivate event to deactivate_cb. This will make the last
4789 leave event come before the call to deactivate_cb, so the leave
4790 event does not make sit-for exit after a menu selection.
4791
4792 2005-02-03 Kim F. Storm <storm@cua.dk>
4793
4794 * dispnew.c (build_frame_matrix_from_leaf_window)
4795 [!GLYPH_DEBUG]: Fix xassert.
4796
4797 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4798
4799 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4800
4801 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4802
4803 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4804 the compiling OS version.
4805
4806 * macfns.c (x_create_tip_frame): Likewise.
4807
4808 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4809
4810 2005-02-03 Richard M. Stallman <rms@gnu.org>
4811
4812 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4813
4814 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4815
4816 * buffer.c (Fbury_buffer): Doc fix.
4817
4818 2005-02-02 Steven Tamm <steventamm@mac.com>
4819
4820 * macfns.c (unwind_create_frame): Fix compile error due to
4821 xassert being uncondition, but predicate is.
4822 * dispnew.c (update_window): Fix compile error due to
4823 xassert being uncondition, but predicate is.
4824
4825 2005-02-02 Miles Bader <miles@gnu.org>
4826
4827 * dispextern.h (xassert): Enable unconditionally.
4828
4829 2005-02-02 Kim F. Storm <storm@cua.dk>
4830
4831 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4832
4833 2005-02-02 Kenichi Handa <handa@m17n.org>
4834
4835 * casefiddle.c (casify_object): Enable changing characters of
4836 different byte length.
4837 (casify_region): Fix loop condition, args to replace_range_2, and
4838 update opoint_byte.
4839
4840 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
4841
4842 2005-02-01 Kim F. Storm <storm@cua.dk>
4843
4844 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
4845 stack before calling handle_display_prop.
4846
4847 2005-01-31 Kim F. Storm <storm@cua.dk>
4848
4849 * undo.c (Qapply): New lisp var.
4850 (syms_of_undo): Intern and staticpro it.
4851 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
4852 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
4853
4854 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4855
4856 2005-01-30 Jesper Harder <harder@phys.au.dk>
4857
4858 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
4859 <mac-emulate-three-button-mouse>: Fix docstring indentation.
4860
4861 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
4862
4863 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
4864 Increase value to 3 Meg.
4865
4866 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4867
4868 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
4869 button events are not received otherwise.
4870
4871 2005-01-29 Richard M. Stallman <rms@gnu.org>
4872
4873 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4874
4875 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
4876
4877 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
4878
4879 * keymap.c (access_keymap): YAILOM.
4880
4881 2005-01-27 Kim F. Storm <storm@cua.dk>
4882
4883 * xdisp.c (get_phys_cursor_geometry): New function to calculate
4884 phys cursor position and size for hollow cursor. Position is
4885 aligned with get_glyph_string_clip_rect and ensures that a hollow
4886 cursor is shown, even when the actual glyph is not visible.
4887
4888 * dispextern.h (get_phys_cursor_geometry): Add prototype.
4889
4890 * xterm.c (x_clip_to_row): Ensure y >= 0.
4891 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4892
4893 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4894
4895 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4896
4897 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
4898
4899 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
4900
4901 2005-01-27 Kim F. Storm <storm@cua.dk>
4902
4903 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
4904 glyph, even when row is only partially visible and actual cursor
4905 position is not visible.
4906
4907 2005-01-24 Richard M. Stallman <rms@gnu.org>
4908
4909 * xterm.c (x_error_quitter): No longer static, and moved after
4910 x_error_handler.
4911
4912 2005-01-24 Kim F. Storm <storm@cua.dk>
4913
4914 * xdisp.c (move_it_by_lines): If we move forward after going too
4915 far back, cancel move if end position is same as start position.
4916
4917 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4918
4919 * dispextern.h (struct glyph_string): New members clip_head and
4920 clip_tail.
4921
4922 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
4923 region to the area between clip_head and clip_tail.
4924 (draw_glyphs): Record the area that need to be actually redrawn to
4925 the new variables clip_head and clip_tail when there are
4926 overhangs. Set values of these variables to the corresponding
4927 members in struct glyph_string. Refine x coordinates for
4928 notice_overwritten_cursor using clip_head and clip_tail.
4929
4930 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
4931
4932 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
4933 QDTextBounds.
4934 (x_draw_glyph_string): Don't fill the background of the successor
4935 of a glyph with a right overhang if the successor will draw a cursor.
4936 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
4937 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4938
4939 2005-01-24 Kim F. Storm <storm@cua.dk>
4940
4941 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
4942 direction if window height was smaller than next-screen-context-lines.
4943 Now always scroll at least one line in the requested direction.
4944 Ensure that we actually do scroll backwards when requested to do so.
4945
4946 * xdisp.c (redisplay_window): Only try to make cursor line fully
4947 visible once (to avoid redisplay loop).
4948
4949 2005-01-23 Kim F. Storm <storm@cua.dk>
4950
4951 * window.c (Fpos_visible_in_window_p): Simplify return value for
4952 partially visible rows.
4953 (window_scroll_pixel_based): Adapt to that change.
4954
4955 * window.c (window_scroll_pixel_based): Force moving to next line
4956 if scrolling doesn't move start point, e.g. if looking at tall image.
4957
4958 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
4959 Clear last_height before calling line_bottom_y to get real height.
4960 Fix calculation of y.
4961
4962 2005-01-22 Steven Tamm <steventamm@mac.com>
4963
4964 * s/darwin.h: Removed PTY_ITERATION from here.
4965 (DARWIN): Define.
4966
4967 * process.c (init_process): Default process-connection-type to
4968 nil on darwin 6 or less, t if it is 7 or higher. This way the
4969 broken pty behavior is still allowed on darwin 6 for interactive
4970 processes for people that know what they are doing.
4971
4972 2005-01-22 Kim F. Storm <storm@cua.dk>
4973
4974 * window.c (auto_window_vscroll_p): New boolean.
4975 (syms_of_window): DEFVAR_BOOL it.
4976 (Fpos_visible_in_window_p): Extend return value to include RTOP
4977 and RBOT values if FULLY is nil.
4978 (window_scroll_pixel_based): Adjust vscroll for partially visible
4979 rows if auto_window_vscroll_p is set.
4980 (Fset_window_vscroll): Do nothing if vscroll is not modified.
4981
4982 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
4983 to return number of partially invisible pixels at top and bottom
4984 of the dislay row at POS.
4985
4986 * lisp.h (pos_visible_p): Fix prototype.
4987
4988 2005-01-21 Richard M. Stallman <rms@gnu.org>
4989
4990 * fileio.c (Fcopy_file): Doc fix.
4991
4992 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4993
4994 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
4995 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
4996 start of function for older compilers.
4997
4998 2005-01-20 Richard M. Stallman <rms@gnu.org>
4999
5000 * editfns.c (Fmessage): If arg is "", return "" (as before).
5001
5002 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
5003
5004 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
5005 variable.
5006
5007 2005-01-20 Steven Tamm <steventamm@mac.com>
5008
5009 * editfns.c (Voperating_system_release): Add.
5010 (init_editfns): Assign new variable operating-system-release
5011 based on call to uname if available.
5012 (get_operating_system_release): Add function to
5013 allow c-level access to operating system release.
5014
5015 * config.h: Regenerated.
5016
5017 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
5018 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
5019 using ptys as '7'.
5020
5021 2005-01-20 Kim F. Storm <storm@cua.dk>
5022
5023 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
5024
5025 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
5026 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
5027
5028 * macterm.c (x_draw_glyph_string_box): Likewise.
5029
5030 * w32term.c (x_draw_glyph_string_box): Likewise.
5031
5032 * indent.c (Fvertical_motion): Temporarily disable selective display.
5033
5034 2005-01-19 Kim F. Storm <storm@cua.dk>
5035
5036 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
5037 image property.
5038
5039 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
5040
5041 2005-01-18 Kim F. Storm <storm@cua.dk>
5042
5043 * xdisp.c (fast_find_position): Backtrack to find first row if
5044 charpos is inside a display overlay that spans multiple lines.
5045
5046 2005-01-18 Kenichi Handa <handa@m17n.org>
5047
5048 * coding.c (decode_coding_iso2022): Translate invalid codes if
5049 translation-table is specified.
5050
5051 2005-01-18 Kim F. Storm <storm@cua.dk>
5052
5053 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
5054 change. If handle_display_prop indicates newline is replaced by
5055 image or text, move back to start of relevant overlay or interval
5056 and continue scan from there. Simplify.
5057
5058 2005-01-17 Kim F. Storm <storm@cua.dk>
5059
5060 * dispnew.c (mode_line_string, marginal_area_string):
5061 Fix off-by-one error in search for glyph.
5062
5063 2005-01-16 Kim F. Storm <storm@cua.dk>
5064
5065 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
5066
5067 2005-01-16 Steven Tamm <steventamm@mac.com>
5068
5069 * macterm.c (mac_to_x_fontname): Remove spurious argument.
5070
5071 2005-01-16 Andreas Schwab <schwab@suse.de>
5072
5073 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
5074
5075 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5076
5077 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
5078 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
5079
5080 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5081
5082 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
5083 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
5084 New flags for readable_events.
5085 (get_filtered_input_pending, readable_filtered_events): Remove.
5086 (tracking_off): Call readable_events and get_input_pending with
5087 flag READABLE_EVENTS_DO_TIMERS_NOW.
5088 (readable_events): Move code from old readable_filtered_events here,
5089 but check new READABLE_EVENTS_* in argument flags instead of previous
5090 two boolean arguments do_timers_now and filter_events.
5091 If we are doing mouse tracking and the mouse moved, return only if
5092 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
5093 (swallow_events): Call get_input_pending with flag
5094 READABLE_EVENTS_DO_TIMERS_NOW.
5095 (get_input_pending): Move code from old get_filtered_input_pending
5096 here. Replace boolean arguments do_timers_now, filter_events with
5097 flags, and pass flags to readable_events. Document new
5098 READABLE_EVENTS_* flags.
5099 (detect_input_pending_ignore_squeezables): New function.
5100 (detect_input_pending_run_timers): Call get_input_pending with flag
5101 READABLE_EVENTS_DO_TIMERS_NOW.
5102 (Finput_pending_p): Call get_input_pending with flags
5103 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
5104
5105 * dispnew.c (update_window, update_frame_1): Replace calls to
5106 detect_input_pending with detect_input_pending_ignore_squeezables
5107 so that redisplay is not paused if the event queue contains only
5108 mouse movements.
5109
5110 * lisp.h: Declare detect_input_pending_ignore_squeezables.
5111
5112 2005-01-15 Steven Tamm <steventamm@mac.com>
5113
5114 * macterm.c (Vmac_use_core_graphics): Declare variable for
5115 mac-allow-anti-aliasing.
5116 (syms_of_macterm): DEFVAR_LISP and initialize it.
5117 (mac_draw_string_common): Use core graphics text rendering if
5118 mac-allow-anti-aliasing is enabled.
5119
5120 * macfns.c (Fx_file_dialog): Save As dialog includes only the
5121 file name in the text box.
5122
5123 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5124
5125 * macfns.c (x_set_foreground_color, x_set_background_color):
5126 Sync with xfns.c.
5127 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
5128 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
5129 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
5130
5131 2005-01-14 Kim F. Storm <storm@cua.dk>
5132
5133 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
5134
5135 2005-01-13 Richard M. Stallman <rms@gnu.org>
5136
5137 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
5138 if Voverriding_terminal_local_map is non-nil.
5139
5140 * keyboard.c (syms_of_keyboard): Doc fix.
5141
5142 2005-01-13 Kim F. Storm <storm@cua.dk>
5143
5144 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
5145 (specify 0 for FACE instead). Reorder arg list. Doc fix.
5146
5147 2005-01-12 Richard M. Stallman <rms@gnu.org>
5148
5149 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
5150 face property for characters that don't specify one.
5151
5152 * fns.c (Frequire): Record in load-history unconditionally.
5153
5154 2005-01-10 Kim F. Storm <storm@cua.dk>
5155
5156 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
5157
5158 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
5159 Callers changed.
5160 Add support to merge with lisp face id too (if face_name is t).
5161
5162 * xdisp.c (get_next_display_element, next_element_from_display_vector):
5163 Don't lookup lface_id from display table glyphs here; instead use
5164 merge_faces to merge the lisp face id into current face.
5165
5166 2005-01-09 Kim F. Storm <storm@cua.dk>
5167
5168 * dispextern.h (struct it): New member dpvec_face_id.
5169 (merge_into_realized_face): Add prototype.
5170
5171 * xfaces.c (merge_into_realized_face): New function. Used to
5172 merge escape-glyph face or face from display table into current face.
5173
5174 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
5175 (syms_of_xdisp): DEFVAR_LISP it.
5176 (escape_glyph_face): Remove var.
5177 (redisplay_window): Don't initialize it.
5178 (setup_for_ellipsis, get_next_display_element):
5179 Set it->dpvec_face_id to -1.
5180 (get_next_display_element): Test Vshow_nonbreak_escape.
5181 Do not setup escape_glyph_face.
5182 Properly merge escape-glyph face or face from display table with
5183 current face for escape and control characters.
5184 Set it->dpvec_face_id to relevant face id instead of adding it to each
5185 element of display vector.
5186 (next_element_from_display_vector): If it->dpvec_face_id is set,
5187 use that instead of lface_id from glyph itself.
5188
5189 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5190
5191 * xterm.h (struct x_output): New member, toolbar_detached.
5192
5193 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
5194 38.
5195 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
5196 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
5197 (xg_create_tool_bar): Initialize toolbar_detached.
5198 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
5199 toolbar_detached is zero.
5200
5201 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5202
5203 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
5204 gtk_menu_popup if not for_click, so callbacks for the menu are called.
5205
5206 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
5207 (xg_tool_bar_callback, xg_tool_bar_help_callback)
5208 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
5209
5210 * xselect.c (x_get_foreign_selection, x_fill_property_data)
5211 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
5212 XFLOAT_DATA to get extract number from Lisp object.
5213
5214 2005-01-07 Kim F. Storm <storm@cua.dk>
5215
5216 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
5217 Set stop_charpos to current charpos instead of 0.
5218
5219 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
5220
5221 * xdisp.c (Fformat_mode_line): First arg now required.
5222
5223 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5224
5225 * macterm.c (XLoadQueryFont): Correctly handle 0 size
5226 font widths that are returned from some Japanese fonts.
5227
5228 2005-01-06 Kim F. Storm <storm@cua.dk>
5229
5230 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
5231 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
5232 (destroy_fringe_bitmap): Set fringe_faces element to nil.
5233 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
5234 fringe_faces array and init elements to nil.
5235 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
5236 non-persistent face id.
5237 (mark_fringe_data): New function for GC.
5238
5239 * alloc.c (mark_fringe_data): Declare extern.
5240 (Fgarbage_collect): Call mark_fringe_data.
5241
5242 * alloc.c (overrun_check_free): Invalidate freed memory if
5243 XMALLOC_CLEAR_FREE_MEMORY is defined.
5244
5245 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5246
5247 * macfns.c: Include sys/param.h.
5248 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
5249 and function.
5250 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
5251 of filename string. Set event callback function when creating
5252 dialog boxes. Add code conversions for filenames. Don't dispose
5253 of apple event descriptor record if failed to create it.
5254
5255 * macterm.c: Include sys/param.h.
5256 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
5257 kEventWindowUpdate.
5258 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
5259 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
5260 of FSSpec from apple event descriptor record.
5261 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
5262 size of filename string.
5263 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
5264 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
5265 file dialog is in action.
5266 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
5267 Reject only when there are no filename items. Set background color
5268 before (un)highlighting the window below the dragged items.
5269 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
5270
5271 2005-01-05 Romain Francoise <romain@orebokech.com>
5272
5273 * term.c (encode_terminal_code): Fix buffer size computation.
5274
5275 2005-01-04 Richard M. Stallman <rms@gnu.org>
5276
5277 * xdisp.c (Fformat_mode_line): Doc fix.
5278
5279 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
5280
5281 * alloc.c (refill_memory_reserve): Move.
5282 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
5283 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
5284
5285 2005-01-03 Richard M. Stallman <rms@gnu.org>
5286
5287 * window.c (window_scroll_pixel_based): Don't correct preserve_y
5288 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
5289
5290 2005-01-03 Jason Rumney <jasonr@gnu.org>
5291
5292 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
5293 fontp->space_width to FONT_WIDTH so they are valid.
5294
5295 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
5296 average width. Set fontp->average_width and fontp->space_width to
5297 their appropriate values.
5298
5299 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
5300 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
5301 fontp->space_width.
5302
5303 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5304
5305 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
5306 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
5307 metrics for max and min bounds.
5308 (x_load_font): Correctly calculate average font width metrics.
5309
5310 2005-01-02 Richard M. Stallman <rms@gnu.org>
5311
5312 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
5313
5314 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5315
5316 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
5317
5318 2004-12-31 Richard M. Stallman <rms@gnu.org>
5319
5320 * xdisp.c (setup_for_ellipsis, get_next_display_element):
5321 Set it->ellipsis_p to 1 or 0.
5322 (display_line): Record whether row ends in mid-ellipsis.
5323 (set_cursor_from_row): If ends in ellipsis, find start of it.
5324 (cursor_row_p): If PT's at the end of the ellipsis the row
5325 ends within, don't display cursor on this row.
5326
5327 * dispextern.h (struct it): New element ellipsis_p.
5328 (struct glyph_row): New element ends_in_ellipsis_p.
5329
5330 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
5331 position if we're reading from something other than the buffer.
5332
5333 * window.c (window_scroll_pixel_based): Only look at
5334 Vscroll_preserve_screen_position if the old PT can't be kept.
5335 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
5336
5337 2004-12-30 Kim F. Storm <storm@cua.dk>
5338
5339 * xdisp.c (get_line_height_property): New function extracted from
5340 original calc_line_height_property.
5341 (calc_line_height_property): Rework. Handle t and (nil . ratio).
5342 (x_produce_glyphs): Use them to handle line-height and
5343 line-spacing according to new height spec.
5344 (Qtotal): Remove.
5345 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
5346
5347 2004-12-30 Kenichi Handa <handa@m17n.org>
5348
5349 * fileio.c (Finsert_file_contents): Don't use
5350 current_buffer->buffer_file_coding_system even if REPLACE is
5351 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
5352
5353 * fontset.h (struct font_info): New members space_width and
5354 average_width.
5355
5356 * frame.h (struct frame): New member space_width.
5357 (FRAME_SPACE_WIDTH): New macro.
5358
5359 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
5360
5361 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
5362 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
5363 fontp->space_width.
5364 (x_load_font): Calculate fontp->space_width and fontp->average_width.
5365 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
5366
5367 * xdisp.c (x_produce_glyphs): Calculate tab width by
5368 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
5369
5370 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
5371
5372 * macterm.c (SelectionRange): Add Xcode position apple event struct.
5373 (do_ae_open_documents): Handle Xcode-style file position open events.
5374
5375 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
5376
5377 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
5378
5379 2004-12-29 Richard M. Stallman <rms@gnu.org>
5380
5381 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
5382
5383 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5384
5385 * macfns.c (install_window_handler): Modify extern to return OSErr
5386 value.
5387 (mac_window): Handle return value of install_window_handler.
5388
5389 * macterm.c (reflect_byte): Remove function.
5390 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
5391 Lookup table instead.
5392 (mac_do_font_lists): Simplify calculation of the longest
5393 nonspecial string.
5394 (init_mac_drag_n_drop): Remove function and declaration.
5395 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
5396 init_mac_drag_n_drop.
5397 (mac_do_track_drag): New function and declaration.
5398 (install_window_handler): Return OSErr value.
5399 (install_window_handler) [TARGET_API_MAC_CARBON]:
5400 Register handlers for tracking/receiving drag-and-drop items.
5401 (do_ae_open_documents): Generate unibyte strings for filenames.
5402 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
5403 Reject only non-filename items. Set event modifiers, and return value.
5404
5405 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5406
5407 * coding.c (decode_coding): Fix previous change.
5408
5409 2004-12-28 Richard M. Stallman <rms@gnu.org>
5410
5411 * xdisp.c (back_to_previous_visible_line_start):
5412 Don't call handle_display_prop.
5413
5414 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5415
5416 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
5417 (decode_coding_emacs_mule, encode_coding_emacs_mule)
5418 (decode_coding_iso2022, encode_designation_at_bol)
5419 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
5420 (decode_coding): Constify arguments and local vars.
5421
5422 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5423
5424 * xmenu.c (popup_get_selection): Only pop down dialogs
5425 on C-g and Escape.
5426 (popup_get_selection): Remove parameter down_on_keypress.
5427 (create_and_show_popup_menu, create_and_show_dialog):
5428 Remove parameter down_on_keypress to popup_get_selection.
5429
5430 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5431
5432 * dispextern.h: Change HAVE_CARBON to MAC_OS.
5433 (struct glyph_string): Likewise.
5434
5435 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
5436 mac_initialize.
5437
5438 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
5439 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
5440
5441 * fns.c (vector): Change MAC_OSX to MAC_OS.
5442
5443 * frame.c (x_set_frame_parameters, x_report_frame_params)
5444 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
5445 (x_set_border_width, Vdefault_frame_scroll_bars):
5446 Change HAVE_CARBON to MAC_OS.
5447
5448 * image.c [MAC_OS]: Include sys/stat.h.
5449 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
5450 QuickTimeComponents.h.
5451
5452 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
5453 [!MAC_OSX] (select): Use mac_wait_next_event.
5454 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
5455 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
5456 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5457 (mac_clear_font_name_table): Add extern.
5458 (Fmac_clear_font_name_table): New defun.
5459 (syms_of_mac): Defsubr it.
5460 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
5461 [MAC_OSX] (select_and_poll_event): New function.
5462 [MAC_OSX] (sys_select): Use it.
5463 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
5464 [MAC_OSX && SELECT_USE_CFSOCKET]
5465 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
5466 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
5467 RunLoop for simultaneously monitoring two kinds of inputs, window
5468 events and process outputs, without periodically polling.
5469
5470 * macfns.c (mac_initialized): Remove extern.
5471 (stricmp): Put in #if 0. All callers changed to use xstricmp in
5472 xfaces.c.
5473 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
5474 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
5475 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
5476 (mac_get_rdb_resource): New function (from w32reg.c).
5477 (x_get_string_resource): Use it.
5478 (install_window_handler): Add extern.
5479 (mac_window): New function.
5480 (Fx_create_frame): Use it instead of make_mac_frame.
5481 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
5482 (Fx_open_connection, Fx_close_connection): New defuns.
5483 (syms_of_macfns): Defsubr them.
5484 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
5485 Add kWindowNoUpdatesAttribute to the window attribute.
5486 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
5487 (x_create_tip_frame): Don't call ShowWindow.
5488 (Fx_show_tip): Call ShowWindow.
5489 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
5490 TARGET_API_MAC_CARBON'.
5491 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
5492 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
5493
5494 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
5495 (Window): Typedef to WindowPtr and move outside `#if
5496 TARGET_API_MAC_CARBON'.
5497 (XSizeHints): New struct.
5498
5499 * macterm.c (x_update_begin, x_update_end)
5500 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
5501 frame.
5502 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5503 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
5504 (construct_mouse_click): Put in #if 0.
5505 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
5506 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
5507 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5508 (activate_scroll_bars, deactivate_scroll_bars)
5509 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
5510 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
5511 if the position is neither user-specified nor program-specified.
5512 (x_free_frame_resources): Free size_hints.
5513 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
5514 (mac_clear_font_name_table): New function.
5515 (mac_do_list_fonts): Initialize font_name_table if needed.
5516 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
5517 around mac_do_list_fonts.
5518 (mac_unload_font): New function.
5519 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
5520 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
5521 and definitions with #if TARGET_API_MAC_CARBON.
5522 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
5523 (install_window_handler): Add decl.
5524 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
5525 window. Use UpdateControls. Get the rectangle that should be
5526 updated and restrict the target of expose_frame to it.
5527 (do_grow_window): Set minimum height/width according to size_hints.
5528 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
5529 (do_zoom_window): Don't use x_set_window_size.
5530 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
5531 (install_window_handler): New function.
5532 [!USE_CARBON_EVENTS] (mouse_region): New variable.
5533 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
5534 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
5535 GetEventDispatcherTarget inside BLOCK_INPUT.
5536 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
5537 Update mouse_region when mouse is moved.
5538 (make_mac_frame): Remove.
5539 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
5540 Initialize mouse pointer shapes. Change values of f->left_pos and
5541 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
5542 Don't call ShowWindow.
5543 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
5544 Vinvocation_name and Vsystem_name.
5545 (mac_make_rdb): New function (from w32term.c).
5546 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
5547 already been opened. Don't pass argument to
5548 mac_initialize_display_info. Don't set dpyinfo->height/width.
5549 Add entries to x_display_list and x_display_name_list.
5550 (x_delete_display): New function.
5551 (mac_initialize): Don't call mac_initialize_display_info.
5552 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
5553
5554 * macterm.h (check_mac): Add extern.
5555 (struct mac_output): New member size_hints.
5556 (FRAME_SIZE_HINTS): New macro.
5557 (mac_unload_font): Add extern.
5558
5559 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
5560
5561 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
5562
5563 2004-12-27 Richard M. Stallman <rms@gnu.org>
5564
5565 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
5566 (syms_of_buffer): Don't defsubr it.
5567
5568 * process.c (list_processes_1): Set undo_list instead
5569 of calling Fbuffer_disable_undo.
5570
5571 * xdisp.c (single_display_spec_string_p): Rename from
5572 single_display_prop_string_p.
5573 (single_display_spec_intangible_p): Rename from
5574 single_display_prop_intangible_p.
5575 (handle_single_display_spec): Rename from handle_single_display_prop.
5576 Rewritten to be easier to understand.
5577
5578 Change in load-history format. Functions now get (defun . NAME),
5579 and variables get just NAME.
5580
5581 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5582
5583 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5584 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
5585 (Qdefvar): Var deleted.
5586 (syms_of_eval): Don't initialze it.
5587
5588 * lread.c (syms_of_lread) <load-history>: Doc fix.
5589
5590 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5591
5592 * xmenu.c (popup_get_selection): Pop down on C-g.
5593 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
5594 pops down menu on C-g.
5595 (xdialog_show): If dialog popped down and no button in the dialog was
5596 pushed, call Fsignal to quit.
5597 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
5598 Fsignal to quit.
5599
5600 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
5601
5602 * gtkutil.c (xg_initialize): Install bindings for C-g so that
5603 dialogs and menus pop down.
5604
5605 2004-12-27 Kenichi Handa <handa@m17n.org>
5606
5607 * coding.c (code_convert_region): Fix calculation of `ratio'.
5608
5609 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5610
5611 * gtkutil.c (update_frame_tool_bar): Make the value of
5612 tool-bar-button-margin control margins of images in tool bar.
5613
5614 * alloc.c (check_depth): New variable.
5615 (overrun_check_malloc, overrun_check_realloc): Only add
5616 overhead and write check pattern if check_depth is 1 (to handle
5617 recursive calls). Increase/decrease check_depth in entry/exit.
5618 (overrun_check_free): Only check for overhead if check_depth is 1.
5619 Increase/decrease check_depth in entry/exit.
5620
5621 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5622
5623 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
5624 before touching input_available_clear_time, to avoid accessing it
5625 from multiple threads.
5626
5627 2004-12-23 Jason Rumney <jasonr@gnu.org>
5628
5629 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
5630 of JPEG library.
5631
5632 2004-12-22 Richard M. Stallman <rms@gnu.org>
5633
5634 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
5635
5636 * lisp.h (Vundo_outer_limit): Fix decl.
5637
5638 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
5639 Uses changed.
5640 (syms_of_undo): Initialize appropriately.
5641 (truncate_undo_list): If it's nil, there's no limit.
5642
5643 2004-12-22 Kenichi Handa <handa@m17n.org>
5644
5645 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
5646
5647 2004-12-21 Richard M. Stallman <rms@gnu.org>
5648
5649 * eval.c (unwind_to_catch): Clear immediate_quit.
5650
5651 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
5652 specially as `\ ' and `\-'.
5653
5654 * keyboard.c (kbd_buffer_store_event_hold):
5655 In the code for while-no-input, handle immediate_quit.
5656
5657 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
5658 Call that at the very start.
5659 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
5660 (syms_of_alloc): Don't define undo-limit,
5661 undo-strong-limit and undo-outer-limit here.
5662
5663 * undo.c (truncate_undo_list): Return void.
5664 Take just one argument, the buffer.
5665 Make it current, and inhibit recursive GC.
5666 Access and update the undo list directly; return void.
5667 Refer to the undo...limit variables directly.
5668 Test undo_outer_limit only after counting the whole current command.
5669 When it's exceeded, call the function in undo-outer-limit-function.
5670 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
5671 (Vundo_outer_limit_function): New variable.
5672 (syms_of_undo): Define undo-limit, undo-strong-limit
5673 and undo-outer-limit here, and undo-outer-limit-function.
5674 Doc fixes.
5675
5676 * lisp.h (truncate_undo_list): Update decl.
5677
5678 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
5679
5680 * fileio.c (Fread_file_name): Delete duplicates in
5681 file-name-history when history_delete_duplicates is true.
5682
5683 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5684
5685 * macterm.c (mac_do_list_fonts): Fix memory leak
5686
5687 2004-12-20 Richard M. Stallman <rms@gnu.org>
5688
5689 * regex.c (re_match_2_internal) <symend, wordend>:
5690 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
5691
5692 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5693
5694 * macterm.c (endif, x_font_name_to_mac_font_name):
5695 Use maccentraleurroman instead of maccentraleuropean
5696 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
5697 quickly finding a specific font without needing regexps.
5698
5699 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5700
5701 * syssignal.h: Declare main_thread.
5702 (SIGNAL_THREAD_CHECK): New macro.
5703
5704 * keyboard.c (input_available_signal): Move thread checking code
5705 to macro SIGNAL_THREAD_CHECK and call that macro.
5706 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
5707
5708 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
5709
5710 * emacs.c: Define main_thread.
5711 (main): Initialize main_thread.
5712 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
5713 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
5714
5715 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
5716
5717 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
5718
5719 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
5720
5721 * process.c (send_process_trap, sigchld_handler):
5722 Call SIGNAL_THREAD_CHECK.
5723
5724 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
5725
5726 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
5727
5728 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
5729 returning when xg_ignore_gtk_scrollbar is true.
5730
5731 2004-12-14 Kim F. Storm <storm@cua.dk>
5732
5733 * keyboard.c (read_char): Save and restore echo_string when
5734 handling input method.
5735
5736 2004-12-13 Richard M. Stallman <rms@gnu.org>
5737
5738 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
5739
5740 * keyboard.c (Vthrow_on_input): New variable.
5741 (syms_of_keyboard): Defvar and initialize it.
5742 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
5743
5744 * lisp.h (QUIT): Check for Vthrow_on_input.
5745 (Vthrow_on_input): Declare it.
5746
5747 2004-12-13 Kim F. Storm <storm@cua.dk>
5748
5749 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
5750 vector.
5751
5752 2004-12-12 Richard M. Stallman <rms@gnu.org>
5753
5754 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
5755
5756 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
5757 (Ftry_completion): Really use outer `zero'; eliminate inner one.
5758
5759 2004-12-12 Kenichi Handa <handa@m17n.org>
5760
5761 * term.c (encode_terminal_code): Fix previous change.
5762
5763 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
5764
5765 * keyboard.c (handle_async_input): Remove pthread mutex handling.
5766 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
5767
5768 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
5769 in macro arguments.
5770
5771 * minibuf.c (Ftry_completion, Fall_completions): Don't use
5772 XFASTINT blindly.
5773
5774 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5775
5776 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5777
5778 * w32term.c (x_calc_absolute_position): Remove calculation of
5779 difference between inner and outer window. Don't subtract difference
5780 for left and top calculations.
5781
5782 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5783 for left and top calculations. Remove call to x_real_positions.
5784 [Bug report by Drew Adams in November]
5785 (x_check_expected_move): Do not set change_gravity to 1 when calling
5786 x_set_offset.
5787
5788 2004-12-08 Richard M. Stallman <rms@gnu.org>
5789
5790 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5791 control chars and escaped octal codes.
5792 (Qescape_glyph): New variable.
5793 (syms_of_xdisp): Initialize it.
5794 (escape_glyph_face): New variable.
5795 (redisplay_window): Initialize it.
5796
5797 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5798
5799 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5800 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5801
5802 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5803
5804 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5805 reset_malloc_hooks.
5806
5807 * keyboard.c (handle_async_input, input_available_signal):
5808 Add ! defined (SYSTEM_MALLOC) around thread code.
5809
5810 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5811
5812 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5813
5814 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5815
5816 * config.in: Regenerate.
5817
5818 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5819
5820 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5821 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5822 if not given by a mouse click to correspond with x-popup-menu
5823 documentation.
5824
5825 * config.in: Regenerate.
5826
5827 * gtkutil.c: Include signal.h and syssignal.h.
5828 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5829
5830 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5831 new variables main_thread and alloc_mutex,
5832 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5833 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
5834 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
5835 (UN)BLOCK_INPUT.
5836 (emacs_blocked_free, emacs_blocked_malloc)
5837 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
5838 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
5839 (reset_malloc_hooks): New function.
5840
5841 * lisp.h: Declare reset_malloc_hooks.
5842
5843 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
5844
5845 * keyboard.c: Conditionally include pthread.h
5846 (handle_async_input, input_available_signalt): If not in the main
5847 thread, block signal, send signal to main thread and return.
5848
5849 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
5850 Set current folder in file chooser if default_filename is a directory.
5851
5852 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
5853
5854 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
5855 Remove redundant correctness checks.
5856 (regex_compile): Fix up error codes for \{..\} expressions.
5857
5858 2004-12-05 Richard M. Stallman <rms@gnu.org>
5859
5860 * regex.c (regex_compile): Fix end-of-pattern case for space.
5861
5862 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5863
5864 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
5865 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
5866 crashes with invalid characters.
5867 * macmenu.c (add_menu_item): Use it.
5868 * image.c (image_load_quartz2d): Likewise.
5869 * macfns.c (x_set_name, x_set_title): Likewise.
5870 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
5871 creating them each time for labels.
5872
5873 2004-12-02 Richard M. Stallman <rms@gnu.org>
5874
5875 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
5876 don't use it here.
5877
5878 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
5879 (interactive_p): Skip Scalled_interactively_p frames
5880 like Sinteractive_p frames.
5881 (unwind_to_catch): Clear handling_signal.
5882
5883 * data.c (Fmake_variable_buffer_local): Doc fix.
5884 (Fmake_local_variable): Doc fix.
5885
5886 * insdel.c (insert_from_string_before_markers)
5887 (insert_from_string): Don't modify buffer on empty insertion.
5888
5889 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
5890
5891 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5892
5893 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
5894 menu text as UTF8 fails.
5895
5896 2004-12-01 Kim F. Storm <storm@cua.dk>
5897
5898 * alloc.c: Add commentary for last change.
5899 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
5900 sizeof(size_t) != 4.
5901 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
5902 Use them. Also clear header and trailer of freed memory.
5903 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
5904 (string_overrun_cookie): Rename from string_overrun_pattern.
5905 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
5906
5907 2004-12-01 Andreas Schwab <schwab@suse.de>
5908
5909 * lisp.h: Declare string_to_multibyte.
5910
5911 2004-12-01 Kenichi Handa <handa@m17n.org>
5912
5913 * w32console.c (w32con_write_glyphs): Decide coding here.
5914 Adjusted for the change of encode_terminal_code.
5915
5916 * term.c (encode_terminal_code): Don't make it "static".
5917
5918 2004-11-30 Kenichi Handa <handa@m17n.org>
5919
5920 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
5921 (encode_terminal_code): Argument changed. Encode all
5922 characters at once, and return a pointer to the result of encoding.
5923 (write_glyphs): Decide coding here. Adjusted for the above change.
5924 (insert_glyphs): Likewise.
5925 (term_init): Initialize encode_terminal_bufsize to 0.
5926
5927 * coding.c (Vcode_conversion_workbuf_name): New variable.
5928 (syms_of_coding): Initialize and staticpro it.
5929 (set_conversion_work_buffer): New function.
5930 (run_pre_post_conversion_on_str): Use it.
5931 (run_pre_write_conversin_on_c_str): New function.
5932
5933 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
5934
5935 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5936
5937 * keyboard.c: Don't undef SIGIO
5938 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
5939 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
5940 (macfns.o): Don't depend on ccl.h.
5941 * macfns.c (mac_frame_parm_handlers): Set handlers for
5942 Qleft_fringe and Qright_fringe.
5943 * macterm.c (mac_fill_rectangle_to_pixmap)
5944 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
5945 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
5946 Put in #if 0.
5947 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
5948 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
5949 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
5950 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5951 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
5952 XDrawImageString. Always draw background and foreground separately.
5953 (x_draw_image_foreground): Use clipping instead of computing the
5954 intersection rectangle.
5955 (x_draw_image_glyph_string): Don't draw an image with mask to a
5956 pixmap.
5957 (x_redisplay_interface): Set flush_display_optional member to 0.
5958 (XTread_socket): Correctly reset the TEConverter
5959 object.
5960
5961 2004-11-30 Kim F. Storm <storm@cua.dk>
5962
5963 * lisp.h: New defines to enable buffer overrun checking.
5964 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
5965 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
5966
5967 * alloc.c: Add more checks for buffer overruns.
5968 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
5969 xmalloc_overrun_check_trailer, overrun_check_malloc)
5970 overrun_check_realloc, overrun_check_free): Add.
5971 (GC_STRING_EXTRA, string_overrun_pattern): Add.
5972 (check_sblock, allocate_string_data, compact_small_strings):
5973 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
5974 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
5975 (check_string_free_list): Add.
5976 (allocate_string, sweep_strings): Call check_string_free_list.
5977
5978 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
5979 XMALLOC_OVERRUN_CHECK to avoid crash during load.
5980
5981 2004-11-29 Kim F. Storm <storm@cua.dk>
5982
5983 * fns.c (concat): Use SAFE_ALLOCA.
5984
5985 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
5986
5987 * sysdep.c (emacs_write): Don't use QUIT.
5988
5989 2004-11-29 Kenichi Handa <handa@m17n.org>
5990
5991 * buffer.c (init_buffer): Set current_buffer->directory to a
5992 multibyte string made by string_to_multibyte.
5993
5994 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
5995
5996 2004-11-27 Andreas Schwab <schwab@suse.de>
5997
5998 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
5999
6000 * s/gnu-linux.h: Enable no-op gcpros on ia64.
6001 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
6002
6003 * filelock.c (lock_file_1): Call get_boot_time early.
6004 Increase buffer size.
6005
6006 2004-11-27 Eli Zaretskii <eliz@gnu.org>
6007
6008 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
6009 is not defined.
6010
6011 2004-11-27 Kim F. Storm <storm@cua.dk>
6012
6013 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
6014 marker out of doc string.
6015
6016 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
6017
6018 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
6019 which was not mentioned in the log.
6020
6021 2004-11-26 Kim F. Storm <storm@cua.dk>
6022
6023 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
6024 angle bitmaps at top/bottom line.
6025
6026 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
6027 set it when it->method is set to next_element_from_display_vector.
6028 (setup_for_ellipsis): Add LEN argument. Callers changed.
6029 Set it->saved_face_id.
6030 (get_next_display_element): Use loop instead of recursion.
6031 Set it->saved_face_id. Combine duplicate code for ctr chars.
6032 (next_element_from_display_vector): Do not set it->saved_face_id.
6033 (next_element_from_ellipsis): Use setup_for_ellipsis.
6034
6035 2004-11-26 Eli Zaretskii <eliz@gnu.org>
6036
6037 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
6038 prevent compiler warnings.
6039
6040 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
6041
6042 * keyboard.c (command_loop_1): Print a message describing the key
6043 the user just pressed when this key has no binding.
6044
6045 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
6046 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
6047
6048 * lread.c (readchar): Check QUIT when `getc' is interrupted.
6049
6050 2004-11-24 Richard M. Stallman <rms@gnu.org>
6051
6052 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
6053
6054 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
6055
6056 2004-11-24 Kim F. Storm <storm@cua.dk>
6057
6058 * xdisp.c (move_it_in_display_line_to, display_line):
6059 Restore saved_face_id also when truncate-lines or hscrolled.
6060
6061 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6062
6063 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
6064 x-use-old-gtk-file-dialog.
6065
6066 * xfns.c: Define x_use_old_gtk_file_dialog.
6067 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
6068 outside ifdef USE_GTK.
6069
6070 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
6071
6072 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
6073 Don't use XFASTINT blindly.
6074
6075 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
6076
6077 * indent.c (skip_invisible): Avoid non-idempotent side-effects
6078 in macro arguments.
6079
6080 * keymap.c (Flookup_key): Check INTEGERP before XINT.
6081
6082 * lread.c (oblookup): Don't use XFASTINT blindly.
6083
6084 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
6085 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
6086
6087 2004-11-23 Kim F. Storm <storm@cua.dk>
6088
6089 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
6090 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
6091
6092 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
6093 signal_p is zero and face name is unknown.
6094 (Fx_list_fonts): Don't signal error in lookup_named_face.
6095 (Fface_font): Signal error in lookup_named_face.
6096 (ascii_face_of_lisp_face): Likewise.
6097
6098 * dispextern.h (lookup_named_face): Fix prototype.
6099
6100 * xdisp.c (handle_single_display_prop): Don't signal error in
6101 lookup_named_face for unknown fringe face name.
6102 (highlight_trailing_whitespace): Don't signal error in
6103 lookup_named_face if trailing-whitespace face unknown.
6104 (calc_line_height_property): Don't signal error in
6105 lookup_named_face if specified face name is unknown.
6106
6107 * fringe.c (update_window_fringes): Show top row indicator if
6108 window has header-line. Don't show arrow at bob and eob
6109 if the boundary indicators are not used.
6110 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
6111
6112 * window.c (set_window_buffer): Clear display_error_modiff.
6113
6114 2004-11-22 Kim F. Storm <storm@cua.dk>
6115
6116 * fringe.c (update_window_fringes): Provide sensible fall-back
6117 value for non-nil indicate-buffer-boundaries setting.
6118
6119 2004-11-22 Markus Rost <rost@ias.edu>
6120
6121 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
6122
6123 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
6124
6125 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
6126
6127 2004-11-21 Kim F. Storm <storm@cua.dk>
6128
6129 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
6130
6131 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
6132 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
6133
6134 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
6135 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
6136
6137 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
6138 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
6139
6140 * xdisp.c (move_it_in_display_line_to, display_line):
6141 Restore saved_face_id if overflow-newline-into-fringe is enabled and
6142 line is continued before or in middle of element from display vector.
6143
6144 * indent.c (Fvertical_motion): Fix last change. Use another
6145 method to detect if iterator moved too far ahead after reseat.
6146
6147 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
6148 expand matrix width for overflow in zero-width area.
6149 (append_glyph, append_composite_glyph, produce_image_glyph)
6150 (append_stretch_glyph): Use it to avoid loop in redisplay.
6151 (note_mode_line_or_margin_highlight): Don't let help-echo from
6152 string override help-echo from image map.
6153
6154 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
6155
6156 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
6157 * callint.c (Fcall_interactively): Ditto.
6158
6159 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
6160
6161 * minibuf.c (Fminibuffer_complete_and_exit):
6162 Fixup the case of the completed value, for case-indep completion.
6163
6164 2004-11-20 Richard M. Stallman <rms@gnu.org>
6165
6166 * lisp.h (Fread_from_minibuffer): Add arg in decl.
6167
6168 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
6169 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
6170
6171 * search.c (Vsearch_spaces_regexp):
6172 Rename from Vsearch_whitespace_regexp. All uses changed.
6173
6174 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
6175
6176 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
6177
6178 2004-11-19 Richard M. Stallman <rms@gnu.org>
6179
6180 * search.c (Vsearch_whitespace_regexp): New variable.
6181 (syms_of_search): Defvar it.
6182 (compile_pattern_1): Call re_set_whitespace_regexp with it.
6183 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
6184 is non-nil.
6185 (struct regexp_cache): New element whitespace_regexp.
6186 (syms_of_search): Initialize whitespace_regexp elements.
6187 (compile_pattern): Compare whitespace_regexp elements.
6188 (compile_pattern_1): Set whitespace_regexp elements.
6189
6190 * regex.c (regex_compile): Substitute whitespace_regexp
6191 for spaces, if it is nonzero.
6192 (whitespace_regexp): New variable.
6193 (re_set_whitespace_regexp): New function.
6194
6195 2004-11-19 Kim F. Storm <storm@cua.dk>
6196
6197 * indent.c (Fvertical_motion): Fix last change.
6198
6199 2004-11-18 Kim F. Storm <storm@cua.dk>
6200
6201 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
6202 Instead, move back again if reseating moves too far ahead.
6203
6204 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
6205
6206 * xdisp.c (message3): Call clear_message.
6207
6208 2004-11-17 Kim F. Storm <storm@cua.dk>
6209
6210 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
6211
6212 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6213
6214 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
6215
6216 * xmenu.c (x_menu_in_use): Remove.
6217 (x_menu_set_in_use): Also set popup_activated_flag.
6218
6219 * xfns.c (Fx_file_dialog): Call popup_activated instead of
6220 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
6221
6222 * xterm.h (x_menu_in_use): Remove.
6223
6224 2004-11-16 Richard M. Stallman <rms@gnu.org>
6225
6226 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
6227 Use map-keymap-internal to implement that.
6228
6229 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
6230
6231 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
6232
6233 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
6234 a window before using XWINDOW.
6235
6236 * window.c (make_window, Fselect_window, make_dummy_parent)
6237 (save_window_save):
6238 * frame.c (make_frame):
6239 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
6240
6241 * lisp.h (NILP): Use EQ rather than XFASTINT.
6242
6243 2004-11-16 Kim F. Storm <storm@cua.dk>
6244
6245 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
6246
6247 * indent.c (Fvertical_motion): Fix last change. Only reseat when
6248 moving backwards.
6249
6250 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
6251
6252 * dispextern.h: Extern reseat_at_previous_visible_line_start.
6253
6254 2004-11-16 Kenichi Handa <handa@m17n.org>
6255
6256 * xdisp.c (display_mode_element): Fix previous change (calculate
6257 end position of substring to display correctly).
6258
6259 2004-11-16 Kim F. Storm <storm@cua.dk>
6260
6261 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
6262 Reported by Andrew M. Scott.
6263
6264 2004-11-15 Kim F. Storm <storm@cua.dk>
6265
6266 * fns.c (Fsafe_plist_get): New defun.
6267 (syms_of_fns): Defsubr it.
6268
6269 * lisp.h (Fsafe_plist_get): Add EXFUN.
6270
6271 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
6272 Use Fsafe_plist_get.
6273 (note_mode_line_or_margin_highlight, note_mouse_highlight):
6274 Fix image map element parsing. Use Fsafe_plist_get.
6275
6276 2004-11-15 Richard M. Stallman <rms@gnu.org>
6277
6278 * xdisp.c (get_next_display_element): Fix previous change.
6279
6280 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6281
6282 * window.c (shrink_windows): Handle special case of one window left
6283 when trying to shrink the final reminder. Grow windows if
6284 total_removed is less than total_shrink.
6285
6286 * xmenu.c (pop_down_menu): Remove global variable current_menu,
6287 extract pointer from arg with XSAVE_VALUE.
6288 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
6289 Construct arg to record_unwind_protect with make_save_value.
6290
6291 2004-11-13 Richard M. Stallman <rms@gnu.org>
6292
6293 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
6294 (get_next_display_element): Fix previous change to apply only to \n.
6295
6296 * indent.c (Fvertical_motion): Scan to PT from start of line to
6297 make iterator consistent.
6298
6299 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6300
6301 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6302
6303 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
6304
6305 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
6306 Record unwind with clean_up_file_dialog.
6307
6308 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
6309 Declare.
6310
6311 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
6312
6313 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6314
6315 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6316 (xg_file_sel_destroy): Remove.
6317 (xg_file_response_cb, pop_down_file_dialog)
6318 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
6319 New functions.
6320 (xg_get_file_with_chooser, xg_get_file_with_selection):
6321 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
6322 Move common code to xg_get_file_name. Return widget created.
6323 (xg_get_file_name): Set name, transient for, modal and destroy
6324 with parent here. Connect response signal to xg_file_response_cb,
6325 connect delete-event to gtk_true. Record pop_down_file_dialog
6326 for unwind. Do event loop and call x_menu_wait_for_event in loop.
6327 (xg_create_widget): Make dialogs modal.
6328
6329 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
6330 Lisp_Object.
6331 (popup_get_selection): Move unwind protect ...
6332 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
6333 Move destroy of widget to pop_down_menu.
6334 (popup_widget_loop): Move unwind protect ...
6335 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
6336 Move destroy of widget to pop_down_menu.
6337 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6338 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
6339 x_mouse_leave and grabbed = 0 to pop_down_menu.
6340
6341 2004-11-13 Kim F. Storm <storm@cua.dk>
6342
6343 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
6344 (syms_of_xdisp): DEFVAR_BOOL it.
6345 (make_cursor_line_fully_visible, try_cursor_movement)
6346 (try_window_id): Use it.
6347
6348 2004-11-12 Kim F. Storm <storm@cua.dk>
6349
6350 * dispextern.h (struct glyph_row): New member extra_line_spacing.
6351 (struct it): New member max_extra_line_spacing.
6352 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
6353 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
6354 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
6355 part of last line is only extra line spacing (so the text on the
6356 line is fully visible). Use helper macros.
6357 Add W arg (to use them). All callers changed.
6358 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
6359 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
6360
6361 * window.c (window_scroll_pixel_based, Frecenter):
6362 Use move_it_vertically_backward directly.
6363 (Frecenter): Fix calculation of new start pos for negative arg.
6364 Before, the new start pos was sometimes chosen too far back, so
6365 the last line became only partially visible, and thus would be
6366 either only semi-visible or automatically scrolled to the middle
6367 of the window by redisplay.
6368
6369 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
6370 (move_it_vertically_backward): Don't recure to move further back.
6371 (move_it_vertically): Remove superfluous condition.
6372 (move_it_by_lines): Clear last_height when moved 0 lines.
6373 (resize_mini_window): Use it.max_extra_line_spacing.
6374 (display_tool_bar_line): Clear row->extra_line_spacing.
6375 (try_scrolling): Use move_it_vertically_backward directly.
6376 (redisplay_window): Likewise.
6377 (compute_line_metrics): Set row->extra_line_spacing.
6378 (display_line, display_string): Likewise.
6379 (x_produce_glyphs): Update it->max_extra_line_spacing.
6380
6381 * xmenu.c (pop_down_menu): Return nil.
6382
6383 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6384
6385 * xmenu.c (x_menu_wait_for_event): New function.
6386 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
6387 to handle timers.
6388 (popup_widget_loop): Add argument do_timers.
6389 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
6390 do_timers to popup_widget_loop.
6391 (xmenu_show): Call XMenuActivateSetWaitFunction so that
6392 x_menu_wait_for_event is called by XMenuActivate.
6393 (create_and_show_popup_menu): Pass 1 for do_timers to
6394 popup_get_selection.
6395 (pop_down_menu): New function.
6396 (popup_get_selection, popup_widget_loop): Unwind protect to
6397 pop_down_menu.
6398 (popup_widget_loop): Add argument widget.
6399 (create_and_show_popup_menu, create_and_show_dialog): Pass new
6400 argument widget to popup_widget_loop.
6401
6402 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
6403
6404 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
6405
6406 2004-11-09 Kim F. Storm <storm@cua.dk>
6407
6408 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
6409 Fix various comments referring to XEvents instead of input events.
6410 (x_queue_event): Fix format strings.
6411 (x_stop_queuing_selection_requests): Likewise.
6412
6413 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
6414 (pint2hrstr): Add extra braces to silence compiler.
6415
6416 * print.c (print_object): Fix format string.
6417
6418 * lread.c (read1): Fix next_char matching.
6419
6420 * lisp.h (Fdelete): Add EXFUN.
6421 (replace_range_2): Add prototype.
6422
6423 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
6424
6425 * intervals.h (NULL_INTERVAL_P): Add separate version when
6426 ENABLE_CHECKING is not defined to silence compiler.
6427 (compare_string_intervals): Add prototype.
6428
6429 * fringe.c (destroy_fringe_bitmap): Fix return type.
6430 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
6431
6432 * emacs.c (Fdump_emacs): Fix format string.
6433
6434 * doc.c: Include <ctype.h>.
6435 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
6436
6437 * data.c (store_symval_forwarding): Remove unused variables.
6438
6439 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
6440
6441 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6442
6443 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
6444 to ${OLDXMENU}.
6445
6446 2004-11-09 Kim F. Storm <storm@cua.dk>
6447
6448 * process.c (Fmake_network_process): Remove kludge for interrupted
6449 connects on BSD. If connect is interrupted, just close socket and
6450 start over rather than sleeping and retry with same socket.
6451
6452 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6453
6454 * .cvsignore: Add buildobj.lst.
6455
6456 * doc.c: New variable Vbuild_files.
6457 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
6458 file names from buildobj.lst. Only attach docstrings from files
6459 that are in Vbuild_files.
6460 (syms_of_doc): Defvar Vbuild_files.
6461
6462 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
6463 and w32*.o.
6464 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6465 (mostlyclean): Rm buildobj.lst
6466
6467 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
6468 is linked.
6469
6470 2004-11-09 Kim F. Storm <storm@cua.dk>
6471
6472 * fringe.c (update_window_fringes): Update fringe bitmaps if
6473 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
6474 also update previous row to get rid of misc. artifacts.
6475
6476 2004-11-08 Kim F. Storm <storm@cua.dk>
6477
6478 * xdisp.c (fast_find_position): Fix start pos if header line present.
6479 (note_mouse_highlight): Clear mouse face if we move out of text area.
6480
6481 2004-11-08 Eli Zaretskii <eliz@gnu.org>
6482
6483 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
6484 Don't include <sys/time.h> explicitly.
6485 Include <stdio.h> unconditionally, not just on MacOS.
6486
6487 2004-11-08 Kenichi Handa <handa@m17n.org>
6488
6489 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
6490 don't pay attention to '\' before '*'.
6491 (fontset_pattern_regexp): Change the meaning of the second arg.
6492 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
6493 (check_fontset_name): Try NAME as literal at first, and if it
6494 failes, try NAME as pattern.
6495
6496 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6497
6498 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
6499
6500 2004-11-07 Andreas Schwab <schwab@suse.de>
6501
6502 * lisp.h (Fmsdos_downcase_filename): Declare.
6503 * dired.c (Fmsdos_downcase_filename): Don't declare here.
6504 * fileio.c: Likewise.
6505
6506 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6507
6508 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
6509 comparisons with integers instead of Lisp_Object address.
6510 (Fmsdos_set_keyboard): Declare argument allkeys.
6511
6512 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
6513
6514 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
6515 int/Lisp_Object mixup.
6516
6517 * fileio.c: Ditto.
6518
6519 2004-11-06 Steven Tamm <steventamm@mac.com>
6520
6521 * editfns.c: Need to include sys/time.h before resource.h on darwin.
6522
6523 2004-11-06 Richard M. Stallman <rms@gnu.org>
6524
6525 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
6526
6527 * xfaces.c (merge_named_face): GCPRO the face_name in the
6528 named_merge_point struct that we make.
6529 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
6530
6531 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
6532 before deciding whether to inactivate mark.
6533
6534 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
6535
6536 * config.in: Regenerate (add HAVE_GETRUSAGE).
6537 * editfns.c (Fget_internal_run_time): New function.
6538 (syms_of_data): Defsubr it.
6539 * fns.c (sxhash): As far as possible, merge calculation of
6540 hash code for symbols and strings.
6541
6542 2004-11-06 Eli Zaretskii <eliz@gnu.org>
6543
6544 * frame.c (syms_of_frame): Fix the example in the doc string.
6545
6546 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6547
6548 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
6549
6550 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
6551 (create_and_show_dialog): Revert change from 2004-10-31.
6552
6553 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
6554
6555 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
6556
6557 2004-11-05 Kim F. Storm <storm@cua.dk>
6558
6559 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
6560
6561 * fileio.c (Ffile_modes): Doc fix.
6562 (auto_save_1): Check for Ffile_modes nil value.
6563
6564 2004-11-05 Kim F. Storm <storm@cua.dk>
6565
6566 * xselect.c (struct selection_event_queue, selection_queue)
6567 (x_queue_selection_requests, x_queue_event)
6568 (x_start_queuing_selection_requests)
6569 (x_stop_queuing_selection_requests): Add new queue for selection
6570 input events to replace previous XEvent queue in xterm.c.
6571 (queue_selection_requests_unwind): Adapt to new queue.
6572 (x_reply_selection_request): Adapt to new queue.
6573 Unexpect wait_object in case of x errors (memory leak).
6574 (x_handle_selection_request, x_handle_selection_clear): Make static.
6575 (x_handle_selection_event): New function. May queue selection events.
6576 (wait_for_property_change_unwind): Use save_value instead of cons.
6577 Clear property_change_reply_object.
6578 (wait_for_property_change): Abort if already waiting.
6579 Use save_value instead of cons for unwind data.
6580 (x_handle_property_notify): Skip events already arrived, but don't
6581 free them, as "arrived" field is checked by wait_for_property_change,
6582 and it will be freed by unwind or explicit unexpect_property_change.
6583 (x_get_foreign_selection): Add to new queue.
6584 (receive_incremental_selection): Don't unexpect wait_object when done
6585 as it has already been freed by previous wait_for_property_change.
6586
6587 * xterm.h (x_start_queuing_selection_requests)
6588 (x_stop_queuing_selection_requests, x_handle_selection_request)
6589 (x_handle_selection_clear): Remove prototypes.
6590 (x_handle_selection_event): Add prototype.
6591
6592 * xterm.c (handle_one_xevent): Don't queue X selection events
6593 here, it may be too late if we start queuing after we have already
6594 stored some selection events into the kbd buffer.
6595 (struct selection_event_queue, queue, x_queue_selection_requests)
6596 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
6597 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
6598 (x_catch_errors_unwind): Block input around final XSync.
6599
6600 * keyboard.h (kbd_buffer_unget_event): Add prototype.
6601
6602 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
6603 (kbd_buffer_unget_event): New function.
6604 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
6605 and use x_handle_selection_event.
6606 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
6607
6608 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6609
6610 * xselect.c (TRACE3): New debug macro.
6611 (x_reply_selection_request): Use it.
6612 (receive_incremental_selection): In call to TRACE0, the name of
6613 a symbol is in xname.
6614
6615 2004-11-05 Kim F. Storm <storm@cua.dk>
6616
6617 * fontset.c (fontset_pattern_regexp): Use unsigned char.
6618
6619 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6620
6621 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
6622
6623 * gtkutil.h (use_old_gtk_file_dialog): Declare.
6624
6625 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
6626 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
6627 * xfns.c (syms_of_xfns): ... to here.
6628
6629 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
6630 it doesn't start with /.
6631
6632 2004-11-04 Kenichi Handa <handa@m17n.org>
6633
6634 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
6635 treat it as a literal character.
6636
6637 2004-11-03 Kim F. Storm <storm@cua.dk>
6638
6639 * .gdbinit (ppt): New function.
6640
6641 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6642
6643 * xterm.c (x_window_to_scroll_bar): Only call
6644 xg_get_scroll_id_for_window if toolkit scroll bars are used.
6645
6646 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
6647 of save.
6648
6649 2004-11-02 Andreas Schwab <schwab@suse.de>
6650
6651 * window.c (Fscroll_right): Fix last change.
6652
6653 2004-11-02 Kim F. Storm <storm@cua.dk>
6654
6655 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
6656
6657 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6658
6659 * callproc.c (Fcall_process): Block input around vfork.
6660
6661 2004-11-02 Kim F. Storm <storm@cua.dk>
6662
6663 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
6664 (syms_of_eval): Defsubr it.
6665
6666 2004-11-02 Richard M. Stallman <rms@gnu.org>
6667
6668 * insdel.c (replace_range_2): New function.
6669
6670 * casefiddle.c (casify_region): Handle changes in byte-length
6671 using replace_range_2.
6672
6673 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
6674
6675 * xdisp.c (back_to_previous_visible_line_start):
6676 Subtract 1 from pos when checking previous newline for invisibility.
6677
6678 * window.c (window_scroll_pixel_based): Update preserve_y
6679 for header line if any.
6680 (Fscroll_left, Fscroll_right): Don't call interactive_p;
6681 use a new second argument instead.
6682
6683 * eval.c (Fcall_interactive_p): New function.
6684 (interactive_p): Don't test INTERACTIVE here.
6685 (Finteractive_p): Doc fix.
6686
6687 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
6688
6689 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6690
6691 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
6692 comparing font names.
6693
6694 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6695
6696 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
6697 Fx_file_dialog if only directories should be read.
6698
6699 * lisp.h: Fx_file_dialog takes 5 parameters.
6700
6701 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
6702 Add parameter only_dir_p.
6703 In Motif version, don't put DEFAULT_FILENAME in filter part of the
6704 dialog, just text field part. Do not add DEFAULT_FILENAME
6705 to list of files if it isn't there.
6706 In GTK version, pass only_dir_p parameter to xg_get_file_name.
6707
6708 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
6709 Check only_dir_p instead of comparing prompt to "Dired". When using
6710 a save dialog, add option kNavDontConfirmReplacement, change title
6711 to "Enter name", change text for save button to "Ok".
6712
6713 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
6714 Check only_dir_p instead of comparing prompt to "Dired".
6715
6716 * gtkutil.c (xg_get_file_with_chooser)
6717 (xg_get_file_with_selection): New functions, only defined ifdef
6718 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
6719 respectively.
6720 (xg_get_file_name): Add parameter only_dir_p.
6721 Call xg_get_file_with_chooser or xg_get_file_with_selection
6722 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
6723 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
6724
6725 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
6726
6727 * config.in: Rebuild (added HAVE_GTK_FILE_*).
6728
6729 2004-11-01 Kim F. Storm <storm@cua.dk>
6730
6731 * process.c (connect_wait_mask, num_pending_connects):
6732 Only declare and use them if NON_BLOCKING_CONNECT is defined.
6733 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
6734 (IF_NON_BLOCKING_CONNECT): New helper macro.
6735 (wait_reading_process_output): Only declare and use local vars
6736 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
6737
6738 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
6739
6740 * w32term.c (x_scroll_run): Delete region objects after use.
6741
6742 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6743
6744 * xmenu.c: Add prototypes for forward function declarations.
6745 (popup_get_selection): Remove parameter do_timers, remove call to
6746 timer_check.
6747 (create_and_show_popup_menu, create_and_show_dialog):
6748 Remove parameter do_timers from call to popup_get_selection.
6749
6750 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
6751 tool_bar_items and assign the result to f->tool_bar_items if
6752 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
6753 tool_bar_items to assignment of result.
6754
6755 * atimer.c (alarm_signal_handler): Do not call set_alarm if
6756 pending_atmers is non-zero.
6757
6758 2004-10-31 Kim F. Storm <storm@cua.dk>
6759
6760 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
6761
6762 2004-10-28 Will <will@glozer.net>
6763
6764 * macterm.c: Allow user to assign key modifiers to the Mac Option
6765 key via a 'mac-option-modifier' variable.
6766
6767 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6768
6769 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
6770 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
6771 (x_handle_selection_request, x_handle_selection_clear)
6772 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
6773
6774 2004-10-28 Richard M. Stallman <rms@gnu.org>
6775
6776 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6777
6778 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6779
6780 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6781
6782 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6783 comment-starter over a 1-char one.
6784
6785 2004-10-27 Richard M. Stallman <rms@gnu.org>
6786
6787 * xdisp.c (get_next_display_element): In mode lines,
6788 treat newline and tab like other control characters.
6789
6790 * editfns.c (Fmessage): Doc fix.
6791
6792 * indent.c (vmotion): When moving up, check the newline before.
6793 Make prevline an int, not a Lisp_Object.
6794
6795 2004-10-27 Kim F. Storm <storm@cua.dk>
6796
6797 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6798 Only allocate info and discarded tables once.
6799
6800 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6801 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6802 (SAFE_FREE): Test it to determine if we need to unwind to free.
6803 Remove size arg. All users changed.
6804 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6805
6806 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6807
6808 * gtkutil.c: Put empty line between comment and function body.
6809 (xg_destroy_widgets): Rename from remove_from_container.
6810 Just destroy all widgets in list. Argument wcont removed.
6811 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6812 instead of remove_from_container.
6813 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6814 (free_frame_tool_bar): Add comment.
6815
6816 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6817 is not NULL before strcmp.
6818
6819 2004-10-26 Kim F. Storm <storm@cua.dk>
6820
6821 * callint.c (Fcall_interactively): Add 'U' code to get the
6822 up-event discarded by a previous 'k' or 'K' argument.
6823
6824 2004-10-26 David Kastrup <dak@gnu.org>
6825
6826 * buffer.c (syms_of_buffer): Fix a few typos.
6827
6828 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6829
6830 * xsmfns.c: Put empty line between comment and function body.
6831 Use two spaces before comment end.
6832
6833 2004-10-25 Kenichi Handa <handa@m17n.org>
6834
6835 * fontset.c (fontset_pattern_regexp): Optimize for the case that
6836 PATTERN is full XLFD.
6837
6838 2004-10-24 Kenichi Handa <handa@m17n.org>
6839
6840 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
6841
6842 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
6843 (regex_compile): Return REG_ERANGEX if appropriate.
6844
6845 2004-10-22 Kenichi Handa <handa@m17n.org>
6846
6847 * editfns.c (Ftranslate_region_internal): New function.
6848 (syms_of_editfns): Defsubr it.
6849
6850 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6851
6852 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
6853
6854 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6855
6856 * xterm.h (x_output): New member `xic_base_fontname'.
6857 (FRAME_XIC_BASE_FONTNAME): New macro.
6858 (xic_free_xfontset): Declare.
6859
6860 * xfns.c (xic_create_xfontset): Share fontsets between frames
6861 based on base_fontname.
6862 (xic_free_xfontset): New function.
6863 (free_frame_xic): Use it.
6864 (xic_set_xfontset): Ditto.
6865
6866 * xterm.c (xim_destroy_callback): Ditto.
6867
6868
6869 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
6870
6871 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
6872
6873 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6874
6875 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
6876 XSync.
6877
6878 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
6879 New variables and constant.
6880 (main): Calculate heap_bss_diff. If we are dumping and the
6881 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
6882 and exec ourself again.
6883 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
6884 print a warning.
6885
6886 * lastfile.c: Make my_endbss and my_endbss_static available on all
6887 platforms.
6888
6889 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
6890 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
6891
6892 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
6893
6894 * data.c (Flocal_variable_if_set_p): Doc fix.
6895
6896 2004-10-19 Jason Rumney <jasonr@gnu.org>
6897
6898 * w32.c (init_environment): Set emacs_dir correctly when running
6899 emacs from the build directory.
6900
6901 2004-10-19 Richard M. Stallman <rms@gnu.org>
6902
6903 * editfns.c (Fdelete_and_extract_region):
6904 If region is empty, return null string.
6905
6906 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6907
6908 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
6909 and canon_width.
6910 (xg_frame_cleared): Remove.
6911
6912 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
6913 (xg_find_top_left_in_fixed): Remove.
6914 (xg_create_scroll_bar): Put an event box widget between
6915 the scroll bar widget and the edit widget.
6916 (xg_show_scroll_bar): Show the parent widget (the event box).
6917 (xg_remove_scroll_bar): Destroy parent (the event box) also.
6918 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
6919 Move the parent (the event box) widget inside the fixed widget.
6920 Move window clear to xterm.c.
6921
6922 * gtkutil.h (xg_frame_cleared): Remove.
6923
6924 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
6925 (x_scroll_bar_create, XTset_vertical_scroll_bar):
6926 Remove arguments left and width to xg_update_scrollbar_pos.
6927 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
6928
6929 2004-10-19 Kenichi Handa <handa@m17n.org>
6930
6931 * xdisp.c (display_mode_element): Fix display of wide chars.
6932
6933 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6934
6935 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
6936 gdk_window_clear and move gdk_window_process_all_updates after
6937 clear so events are sent to the X server in correct order.
6938
6939 2004-10-18 Kenichi Handa <handa@m17n.org>
6940
6941 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
6942 comparing font names.
6943 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6944 (list_fontsets): Likewise.
6945
6946 * search.c (fast_string_match_ignore_case): New function.
6947
6948 * lisp.h (fast_string_match_ignore_case): Extern it.
6949
6950 2004-10-17 Kim F. Storm <storm@cua.dk>
6951
6952 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
6953 than bitmap if there is not left fringe.
6954 (get_overlay_arrow_glyph_row): Also used on windows system.
6955 (display_line): Display overlay string if no left fringe.
6956
6957 2004-10-16 Jason Rumney <jasonr@gnu.org>
6958
6959 * w32fns.c (w32_font_match): Encode font name being matched.
6960
6961 2004-10-16 Richard M. Stallman <rms@gnu.org>
6962
6963 * window.c (Fspecial_display_p): Doc fix.
6964
6965 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
6966
6967 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
6968 Don't ignore menus, because where-is-internal already does it for us.
6969
6970 2004-10-15 Kim F. Storm <storm@cua.dk>
6971
6972 * xdisp.c (redisplay_window): Only update fringes and vertical
6973 border on window frames.
6974
6975 2004-10-14 Andreas Schwab <schwab@suse.de>
6976
6977 * m/ia64.h (DATA_SEG_BITS): Don't define.
6978
6979 2004-10-14 Kim F. Storm <storm@cua.dk>
6980
6981 * xterm.h: Include Xutil.h after keysym.h to work around bug
6982 in some X versions.
6983
6984 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6985
6986 * fns.c (map_char_table): Add missing gcpros.
6987
6988 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6989
6990 * keymap.c (get_keymap): An autoload form is not a keymap.
6991
6992 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
6993
6994 2004-10-13 Kim F. Storm <storm@cua.dk>
6995
6996 * callproc.c (Fcall_process): Simplify handling of display arg.
6997 Resume `display_on_the_fly' once a coding system is determined.
6998
6999 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
7000
7001 2004-10-12 Kim F. Storm <storm@cua.dk>
7002
7003 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
7004 caller, such as call-process, is not going to poll for input.
7005 (calc_line_height_property): Handle case where it->object is nil.
7006
7007 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
7008
7009 2004-10-12 Kenichi Handa <handa@m17n.org>
7010
7011 * xdisp.c (get_next_display_element):
7012 If unibyte_display_via_language_environment is zero, display 8-bit
7013 chars in octal in unibyte buffer.
7014
7015 2004-10-12 Kim F. Storm <storm@cua.dk>
7016
7017 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
7018 are no ordinary bindings.
7019
7020 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7021
7022 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
7023
7024 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7025
7026 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
7027 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
7028 (make_mac_frame): Add BLOCK_INPUT around the making of a
7029 terminal frame.
7030 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
7031 * macgui.h (mktime): Use emacs_mktime.
7032 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
7033 Make a cancel file-open dialog be like C-g.
7034 * mac.c (mktime): Use emacs_mktime.
7035 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
7036 (Fmac_paste_function): Add better error handling for carbon cut/paste.
7037
7038 2004-10-10 Kim F. Storm <storm@cua.dk>
7039
7040 * keyboard.c (timer_resume_idle): New function to resume idle
7041 timer without resetting timers on the idle list.
7042 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
7043 (timer_start_idle, timer_stop_idle): Declare static.
7044 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
7045
7046 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
7047
7048 2004-10-08 Steven Tamm <steventamm@mac.com>
7049
7050 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
7051 * macterm.c (mac_check_for_quit_char): Remove warning for using
7052 NULL where 0 should be used.
7053 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
7054 objc/malloc.h
7055 * mac.c: Include time.h for Tiger compatibility.
7056
7057 2004-10-07 Kim F. Storm <storm@cua.dk>
7058
7059 * xdisp.c (redisplay_window): Fix flicker on vertical line between
7060 windows. Update vertical line after drawing window fringes, but
7061 only if actually drawing any bitmaps--or there is no fringe.
7062
7063 * xterm.c (x_update_window_end): Likewise.
7064 * macterm.c (x_update_window_end): Likewise.
7065 * w32term.c (x_update_window_end): Likewise.
7066
7067 * fringe.c (draw_window_fringes): Return value now indicates if
7068 any fringe bitmaps were redrawn (or there are no fringes).
7069
7070 * dispextern.h (draw_window_fringes): Update prototype.
7071
7072 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7073
7074 * macfns.c (mac_get_window_bounds): Add extern.
7075 (x_real_positions): Use mac_get_window_bounds.
7076
7077 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
7078 xmenu.c (YAILOM).
7079
7080 * macterm.c [!MAC_OSX]: Include Windows.h.
7081 (front_emacs_window): Rename from mac_front_window. All uses
7082 changed. Return the frontmost non-tooltip emacs window.
7083 (mac_get_window_bounds): New function.
7084 (x_calc_absolute_position): Use the difference of width and height
7085 between the inner and outer window.
7086 (x_set_offset): Specify window position by the coordinae of the
7087 outer window. Adjust the position if the title bar is completely
7088 outside the screen.
7089 (app_is_suspended, app_sleep_time): Remove unused variables.
7090 (do_app_resume, do_app_suspend): Remove their contents because
7091 window-activate/deactivate events will do the job.
7092 (do_zoom_window): Remove unused variables. Make compliant to the
7093 standard way of zooming. Set f->left_pos and f->top_pos.
7094 (XTread_socket): Don't use argument `expected'. Don't use
7095 FrontWindow to determine the clicked window. Exclude unprocessed
7096 mouseUp cases in the early stage. Add parentheses to fix operator
7097 precedence.
7098 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
7099
7100 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
7101
7102 * config.in: Regenerate.
7103
7104 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
7105 HAVE_EXECSHIELD.
7106
7107 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7108
7109 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
7110 a row if Alt or Meta has been found for that row. Also stop scanning
7111 for Keysyms for that row.
7112
7113 2004-10-04 Kim F. Storm <storm@cua.dk>
7114
7115 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
7116 to list. Include overlay arrow bitmap in return value.
7117
7118 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
7119 bars with fractional column width. If scroll bar separates two
7120 windows, move it towards the window it belongs to. Only update
7121 the padding area below the scroll bar widget when necessary,
7122 i.e. when scroll bar widget is created, moved, or resized.
7123
7124 * xdisp.c (define_frame_cursor1): Do not change frame cursor
7125 while tracking/dragging mouse.
7126 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
7127
7128 * window.c (coordinates_in_window): Relax check for cursor
7129 on vertial border between mode lines.
7130 (Fset_window_fringes): Do not allow negative widths.
7131 (Fset_window_scroll_bars): Likewise.
7132
7133 * .gdbinit (pp): Shorthand for p ARG + pr.
7134 (ff): New command: flush frame updates (X only).
7135
7136 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
7137
7138 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
7139
7140 2004-09-30 Kenichi Handa <handa@m17n.org>
7141
7142 * process.c (send_process): Free composition data.
7143
7144 * fileio.c (Finsert_file_contents): Free composition data.
7145
7146 * coding.c (code_convert_region): Don't skip ASCIIs if there are
7147 compositions to encode.
7148 (encode_coding_string): Likewise. Free composition data.
7149
7150 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
7151
7152 * coding.c (code_convert_region): Free composition data.
7153
7154 2004-09-29 Kim F. Storm <storm@cua.dk>
7155
7156 * fringe.c: Remove limit on number of bitmaps.
7157 (fringe_bitmaps, fringe_faces): Change to pointers.
7158 (max_fringe_bitmaps): New var.
7159 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
7160 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
7161
7162 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
7163 (struct glyph_row): Reorder fringe_bitmap related fields.
7164 (struct it): Likewise.
7165
7166 * w32term.c (fringe_bmp): Change to pointer.
7167 (max_fringe_bmp): New var.
7168 (w32_define_fringe_bitmap): Expand fringe_bmp.
7169 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
7170 (w32_destroy_fringe_bitmap): Likewise.
7171
7172 2004-09-29 Kim F. Storm <storm@cua.dk>
7173
7174 * fringe.c: Simplify last change.
7175 (lookup_fringe_bitmap): New function.
7176 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
7177 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
7178 Keep standard bitmaps in Vfringe_bitmaps.
7179 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
7180 (Fset_fringe_bitmap_face): Likewise.
7181
7182 * dispextern.h (lookup_fringe_bitmap): Add prototype.
7183 (valid_fringe_bitmap_p): Remove prototype.
7184
7185 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
7186
7187 2004-09-29 Kim F. Storm <storm@cua.dk>
7188
7189 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
7190 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
7191
7192 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
7193
7194 * fringe.c (Vfringe_bitmaps): New variable.
7195 (syms_of_fringe): DEFVAR_LISP it.
7196 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
7197 Change arg to Lisp_Object and fail if not an integer.
7198 (get_fringe_bitmap_name, resolve_fringe_bitmap)
7199 (destroy_fringe_bitmap): New functions.
7200 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
7201 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
7202 clear its fringe property.
7203 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
7204 Fdestroy_fringe_bitmap.
7205 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
7206 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
7207 and set fringe property. Signal error if no free slots.
7208 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
7209 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
7210
7211 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
7212 symbols with a fringe property.
7213
7214 2004-09-27 Kim F. Storm <storm@cua.dk>
7215
7216 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
7217 Doc fix. Format may now be a symbol or alist, not a cons.
7218
7219 * fringe.c (update_window_fringes): Handle new formats of
7220 indicate-buffer-boundaries (symbol or alist). No longer
7221 allow a simple cons.
7222 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
7223
7224 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7225
7226 * config.in: Rebuild.
7227
7228 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7229
7230 * config.in: Rebuild.
7231
7232 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
7233
7234 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
7235
7236 * xterm.c (x_term_init): Work around a bug in some X servers.
7237
7238 2004-09-18 Richard M. Stallman <rms@gnu.org>
7239
7240 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
7241
7242 * xdisp.c (try_window_reusing_current_matrix):
7243 Handle the case where we reach the old displayed text,
7244 out of sync with the old line boundary.
7245
7246 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
7247
7248 * fileio.c (Finsert_file_contents): Fix case of replacement in a
7249 narrowed buffer.
7250
7251 2004-09-14 Kim F. Storm <storm@cua.dk>
7252
7253 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
7254
7255 * xfaces.c (Qface_no_inherit): New var.
7256 (syms_of_xfaces): Intern and staticpro it.
7257 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
7258 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
7259 Don't increment face_change_count when face has non-nil
7260 face-no-inherit property.
7261
7262 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
7263
7264 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
7265 (Fbyte_code): Remove dead code after `wrong_type_argument'.
7266
7267 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
7268 before doing the mark_stack_check_gcpros since they're not on the stack.
7269
7270 2004-09-12 Kim F. Storm <storm@cua.dk>
7271
7272 * editfns.c (Fformat): Handle format strings with multiple text
7273 properties. Reverse text property list from the format string,
7274 so the positions are in increasing order.
7275
7276 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7277
7278 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
7279 x_uncatch_errors so that possible protocol errors are delivered.
7280
7281 2004-09-10 Eli Zaretskii <eliz@gnu.org>
7282
7283 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
7284 blockinput.h.
7285 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
7286 charset.h, and coding.h
7287 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
7288 (term.o): Depend on window.h and keymap.h.
7289 (abbrev.o): Depend on syntax.h.
7290 (callint.o): Depend on keymap.h.
7291 (casefiddle.o): Depend on charset.h and keymap.h.
7292 (category.o): Depend on keymap.h.
7293 (coding.o): Depend on dispextern.h.
7294 (cmds.o): Depend on keyboard.h and keymap.h.
7295 (dispnew.o): Depend on indent.h and intervals.h.
7296 (doc.o): Depend on keymap.h.
7297 (editfns.o): Depend on frame.h.
7298 (emacs.o): Depend on dispextern.h.
7299 (fileio.o): Don't depend on ccl.h.
7300 (filelock.o): Depend on charset.h and coding.h.
7301 (frame.o): Depend on w32term.h and macterm.h.
7302 (insdel.o): Depend on region-cache.h.
7303 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
7304 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
7305 (search.o): Depend on $(INTERVALS_SRC).
7306 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
7307 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
7308 xterm.h, w32term.h, and macterm.h.
7309 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
7310 w32term.h, and macterm.h.
7311 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
7312 region-cache.h, xterm.h, w32term.h, and macterm.h.
7313 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
7314 (data.o): Depend on frame.h.
7315 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
7316 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
7317 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
7318 (intervals.o): Depend on keymap.h.
7319
7320 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
7321 Add debugging print-out to termscript.
7322
7323 2004-09-09 Richard M. Stallman <rms@gnu.org>
7324
7325 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
7326
7327 2004-09-08 Richard M. Stallman <rms@gnu.org>
7328
7329 * window.c (Fset_window_buffer): Doc fix.
7330
7331 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
7332
7333 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
7334
7335 * minibuf.c (history_delete_duplicates): New variable.
7336 (read_minibuf): Use it.
7337 (syms_of_minibuf): Create the corresponding lisp variable.
7338
7339 2004-09-08 Kim F. Storm <storm@cua.dk>
7340
7341 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
7342 overlay just before point.
7343
7344 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
7345
7346 * buffer.h (struct buffer): Add auto_save_file_format field.
7347 * buffer.c (reset_buffer, init_buffer_once):
7348 Handle auto_save_file_format field.
7349 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
7350 `buffer-auto-save-file-format'.
7351 * fileio.c: Delete declaration for removed Vauto_save_file_format.
7352 (build_annotations): Adapt to replacement of
7353 `auto-save-file-format' with the new buffer-local variable
7354 `buffer-auto-save-file-format'.
7355 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
7356
7357 2004-09-07 Jason Rumney <jasonr@gnu.org>
7358
7359 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
7360
7361 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
7362 Handle Unicode menu titles.
7363
7364 2004-09-07 Kim F. Storm <storm@cua.dk>
7365
7366 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
7367 property from text property or overlay strings at point.
7368
7369 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7370
7371 * xmenu.c (update_submenu_strings): YAILOM.
7372 (set_frame_menubar): Make sure last_i is initialized.
7373
7374 2004-09-03 Jason Rumney <jasonr@gnu.org>
7375
7376 * w32menu.c (_widget_value): Add lname and lkey.
7377 (digest_single_submenu): Set lname and lkey in widget_value
7378 instead of name and key.
7379 (update_submenu_strings): New function.
7380 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7381 call update_submenu_strings.
7382
7383 * w32menu.c (globals_of_w32menu): Check for Unicode API.
7384 (digest_single_submenu, w32_menu_show): Encode menu strings as
7385 UTF-8 if Unicode API is available.
7386 (utf8to16): New function.
7387 (add_menu_item): Use it when calling Unicode API.
7388
7389 2004-09-03 Kim F. Storm <storm@cua.dk>
7390
7391 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
7392 in overlay or text-property strings; set cursor on corresponding
7393 glyph rather than at end of the string.
7394
7395 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7396
7397 * macfns.c (x_real_positions): Save the current window port and
7398 set a new one before obtaining the global coordinate.
7399 Use FRAME_MAC_WINDOW.
7400 (x_set_name, x_set_title): Encode title to UTF8.
7401 Use SetWindowTitleWithCFString.
7402 (Fx_server_version): Get correct OS version.
7403
7404 * macmenu.c (add_menu_item): Remove unused variable `i'.
7405 Don't let separator items destroy refence constants of other menu items.
7406
7407 * macterm.c (x_update_end): Move SetPortWindowPort to inside
7408 BLOCK_INPUT.
7409 (x_set_offset): Use FRAME_MAC_WINDOW.
7410
7411 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
7412 nontext_cursor if it is on a scroll bar.
7413
7414 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
7415 Carbon support.
7416 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
7417 Use LIBS_CARBON.
7418
7419 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7420
7421 * xfns.c (x_set_name_internal): New function. Check if we shall call
7422 xfree before ENCODE_UTF_8.
7423 (x_set_name, x_set_title): Call x_set_name_internal.
7424
7425 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
7426
7427 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
7428 reload it.
7429
7430 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7431
7432 * macmenu.c (_widget_value): Add lname and lkey.
7433 (single_submenu): Set lname and lkey in widget_value
7434 instead of name and key.
7435 (update_submenu_strings): New function.
7436 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7437 call update_submenu_strings.
7438
7439 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
7440 instead of name and key.
7441 (update_submenu_strings): New function.
7442 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7443 call update_submenu_strings.
7444
7445 * gtkutil.h (_widget_value): Added lname and lkey.
7446
7447 2004-08-30 Steven Tamm <steventamm@mac.com>
7448
7449 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
7450 by using different names for inner loop variables.
7451
7452 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7453
7454 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
7455 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
7456
7457 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
7458 tool bar items is 0.
7459
7460 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7461
7462 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
7463 strings in menu items.
7464 (single_submenu): Use ENCODE_MENU_STRING
7465 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
7466 button release isn't passed to event loop
7467 (add_menu_item): Use SetMenuItemWithCFString
7468
7469 2004-08-26 Steven Tamm <steventamm@mac.com>
7470
7471 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
7472 tool-bar/menu click.
7473 * macfns.c (Fx_file_dialog): Implement using NavServices.
7474
7475 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7476
7477 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
7478
7479 * xfns.c (x_window_to_frame, x_any_window_to_frame)
7480 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7481 (x_top_window_to_frame): Return 0 if wdesc is None.
7482
7483 2004-08-22 Richard M. Stallman <rms@gnu.org>
7484
7485 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
7486 HAVE_TERMIOS]: If there's no char for this signal, drop through
7487 and use system calls.
7488
7489 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
7490
7491 2004-08-20 Kim F. Storm <storm@cua.dk>
7492
7493 * process.c (wait_reading_process_output): Rename from
7494 wait_reading_process_input. All uses changed.
7495 (wait_reading_process_output_1): Rename from
7496 wait_reading_process_input_1. All uses changed.
7497
7498 * dispnew.c (Fsleep_for): Remove obsolete code.
7499
7500 2004-08-20 Kenichi Handa <handa@m17n.org>
7501
7502 * syntax.c (skip_chars): Fix for unibyte case.
7503
7504 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
7505
7506 * syntax.c (char_quoted): Mixup byte/char pos.
7507 (back_comment): Fixup globals in all cases.
7508
7509 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7510
7511 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
7512 passing it to gtk_window_set_title.
7513
7514 2004-08-19 Kim F. Storm <storm@cua.dk>
7515
7516 * process.c (wait_reading_process_input): Clean up.
7517 Add wait_for_cell, wait_proc, and just_wait_proc args
7518 to avoid overloading `read_kbd' and `do_display' args.
7519 Change read_kbd arg to int. All callers changed.
7520
7521 * process.c (process_send_signal): Use CDISABLE.
7522
7523 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
7524
7525 2004-08-18 Kim F. Storm <storm@cua.dk>
7526
7527 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
7528 forward to wait_reading_process_input via DO_DISPLAY arg.
7529 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
7530 object, only process output from that process; also inhibit
7531 running timers if DO_DISPLAY==-2.
7532
7533 2004-08-17 Kim F. Storm <storm@cua.dk>
7534
7535 * process.c (process_send_signal): Fix last change--use
7536 _POSIX_VDISABLE instead of CVDISABLE when available.
7537
7538 2004-08-16 Richard M. Stallman <rms@gnu.org>
7539
7540 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
7541 Set VQUIT and VINTR chars to the standard ones if they are unset.
7542 [AIX]: Don't do that here. And don't force VINTR to standard
7543 when SIGNALS_VIA_CHARACTERS.
7544
7545 * process.c (process_send_signal)
7546 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
7547 Do nothing if the character is CVDISABLE.
7548
7549 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
7550
7551 * intervals.c (move_if_not_intangible):
7552 Force POSITION to be between BEGV and ZV.
7553
7554 2004-08-14 John Paul Wallington <jpw@gnu.org>
7555
7556 * buffer.c (Frestore_buffer_modified_p): Doc fix.
7557
7558 * fileio.c (Fread_file_name): Doc fix.
7559
7560 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
7561
7562 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
7563
7564 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
7565
7566 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
7567
7568 * keyboard.c: Declare Qdisabled_command_function instead of
7569 Qdisabled_command_hook.
7570 (Fcommand_execute): Use Qdisabled_command_function instead of
7571 Qdisabled_command_hook.
7572 (syms_of_keyboard): Ditto.
7573
7574 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
7575
7576 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
7577 (syms_of_keymap) <key-translation-map>: Doc fixes.
7578
7579 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
7580
7581 * window.c (window_list_1): YAILOM.
7582
7583 * fileio.c (make_temp_name): Handle multibyte prefixes.
7584
7585 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
7586
7587 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
7588 Doc fix.
7589
7590 2004-08-03 Kenichi Handa <handa@m17n.org>
7591
7592 * coding.c (decode_coding_string): Adjust coding->consumed, and
7593 etc. with shrinked_bytes.
7594
7595 2004-08-03 Kim F. Storm <storm@cua.dk>
7596
7597 * indent.c (compute_motion): Fix check for full width window
7598 in non-window case. Do not count left truncation glyph on
7599 window systems.
7600
7601 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
7602
7603 * data.c (Finteractive_form): Doc fix.
7604
7605 2004-08-02 Kim F. Storm <storm@cua.dk>
7606
7607 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
7608 properly accounting for continuation glyph on non-window systems.
7609 (Fcompute_motion): Use actual window width if WIDTH is nil, and
7610 actual window width/height if TOPOS is nil, properly accounting for
7611 continuation glyphs on non-window systems, and optional header lines.
7612 (vmotion): Let compute_motion calculate actual window width.
7613
7614 * window.c (window_scroll_line_based): Let compute_motion
7615 calculate actual window width.
7616
7617 2004-08-02 Kim F. Storm <storm@cua.dk>
7618
7619 * process.c (read_process_output): Use whole read buffer.
7620 Don't trigger adaptive read buffering on errors.
7621
7622 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
7623
7624 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
7625
7626 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
7627
7628 * callint.c (Fcall_interactively): Doc fix.
7629
7630 2004-07-30 Richard M. Stallman <rms@gnu.org>
7631
7632 * abbrev.c (Fexpand_abbrev): Undo previous change.
7633
7634 2004-07-30 Kim F. Storm <storm@cua.dk>
7635
7636 * editfns.c (Fformat): Allocate extra (dummy) element in info.
7637
7638 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
7639
7640 * eval.c (Fdefvar, Fdefconst): Doc fixes.
7641
7642 2004-07-27 Kim F. Storm <storm@cua.dk>
7643
7644 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
7645 we have ensured that the glyph fits on the current line (or returned
7646 MOVE_LINE_CONTINUED otherwise).
7647
7648 2004-07-26 Kim F. Storm <storm@cua.dk>
7649
7650 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
7651 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
7652 if target position is at end of display line but char is not a newline.
7653
7654 2004-07-25 Richard M. Stallman <rms@gnu.org>
7655
7656 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
7657 instead of ON_VERTICAL_BORDER, when on scroll bar.
7658 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
7659
7660 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
7661
7662 * window.c (Fcoordinates_in_window_p):
7663 Take account of FRAME_INTERNAL_BORDER_WIDTH.
7664
7665 * alloc.c (check_cons_list): New function (contents commented out).
7666
7667 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
7668
7669 * xfaces.c (Fcolor_supported_p): Doc fix.
7670
7671 * frame.c (Fselect_frame, Fset_frame_selected_window)
7672 (Fframe_visible_p, Fraise_frame): Doc fixes.
7673
7674 2004-07-24 Richard M. Stallman <rms@gnu.org>
7675
7676 * keyboard.h (not_single_kboard_state): Declare.
7677
7678 * fileio.c (Fwrite_region): Doc fix.
7679
7680 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
7681
7682 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
7683 only when a real abbrev is present.
7684
7685 * xfns.c (x_icon_verify): New function.
7686 (Fx_create_frame): Use it.
7687
7688 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
7689
7690 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
7691
7692 2004-07-21 Kim F. Storm <storm@cua.dk>
7693
7694 * window.h (struct glyph_matrix): New members nrows_scale_factor
7695 and ncols_scale_factor.
7696
7697 * window.c (make_window): Initialize nrows_scale_factor and
7698 ncols_scale_factor members.
7699
7700 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
7701 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
7702 (required_matrix_height): Apply nrows_scale_factor.
7703 (required_matrix_width): Apply ncols_scale_factor.
7704
7705 * xdisp.c (display_line): Increment nrows_scale_factor and set
7706 fonts_changed_p if past last allocated row.
7707 (append_glyph, append_composite_glyph, produce_image_glyph)
7708 (append_stretch_glyph): Increment ncols_scale_factor and set
7709 fonts_changed_p if current area is full.
7710
7711 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7712
7713 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
7714
7715 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
7716
7717 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
7718 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
7719 (Fset_window_start, Fscroll_up, Fscroll_down)
7720 (Fother_window_for_scrolling, Fscroll_other_window)
7721 (Fsave_window_excursion, Fset_window_vscroll)
7722 (syms_of_window) <window-size-fixed>: Doc fixes.
7723
7724 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7725
7726 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
7727 ENCODE_SYSTEM for filenames.
7728
7729 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7730
7731 * mac.c (sys_select): Block input around call to
7732 ReceiveNextEvent to prevent breakage. Correctly handle
7733 blocking on event queue only by calling ReceiveNextEvent
7734 instead of select (since GUI events aren't on an fd).
7735 (sys_read): Remove function
7736 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
7737
7738 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7739
7740 * mac.c (sys_select): Redo sys_select to use alarm-based
7741 polling instead of 1 sec timeouts (like solaris).
7742
7743 * macterm.c (x_make_frame_visible): Comment in polling on
7744 frame creation.
7745
7746 * keyboard.c: Undef SIGIO on Carbon
7747
7748 * atimer.c (alarm_signal_handler): Call alarm handlers after
7749 scheduling.
7750
7751 * eval.c (Feval): Remove quit_char test
7752
7753 * process.c (wait_reading_process_input): Remove clearing
7754 stdin for select call on process input.
7755
7756 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
7757
7758 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
7759 capitalization error in docstring.
7760
7761 2004-07-17 Juanma Barranquero <lektu@terra.es>
7762
7763 * keyboard.c (not_single_kboard_state): Do nothing unless
7764 MULTI_KBOARD is defined.
7765
7766 2004-07-17 Richard M. Stallman <rms@gnu.org>
7767
7768 * window.c (coordinates_in_window): Inside the window but outside
7769 its box to the L or R, return ON_VERTICAL_BORDER.
7770 (window_list_1): Rotate the list to start with WINDOW.
7771
7772 * print.c (print_preprocess): Test for print_depth at limit
7773 before entering in being_printed.
7774
7775 * keyboard.c (not_single_kboard_state): New function.
7776 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7777
7778 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7779 this kboard, and we delete its last frame, go to any_kboard_state.
7780
7781 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7782
7783 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7784
7785 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7786 system before passing them to OS functions for display.
7787
7788 2004-07-15 David Kastrup <dak@gnu.org>
7789
7790 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7791 Apparently fixes an abort condition.
7792
7793 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7794
7795 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7796 instead of a cons.
7797
7798 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7799
7800 * keyboard.c (echo_dash): Do nothing if there already is a dash
7801 at the end of the echo string.
7802
7803 2004-07-12 Kim F. Storm <storm@cua.dk>
7804
7805 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7806 if GC_MARK_STACK.
7807
7808 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7809
7810 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7811
7812 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7813 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7814 (Freplace_buffer_in_windows, Fset_window_buffer)
7815 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7816 (syms_of_window): Expand docstring of `display-buffer-function'.
7817
7818 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7819
7820 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7821 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7822 that time values of the type (HIGH . LOW) are considered obsolete.
7823
7824 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7825
7826 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7827 docstring.
7828
7829 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7830
7831 2004-07-06 John Paul Wallington <jpw@gnu.org>
7832
7833 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
7834
7835 * fns.c (Fclear_string): Signal an error if STRING is not a string.
7836
7837 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7838
7839 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
7840 instead of CGMainDisplayID (only in OSX 10.2 and later).
7841
7842 2004-07-04 John Paul Wallington <jpw@gnu.org>
7843
7844 * fileio.c (read_file_name_completion_ignore_case): New variable.
7845 (syms_of_fileio): Declare and initialise it.
7846 (Fread_file_name): Bind `completion-ignore-case' to respect it.
7847
7848 2004-07-03 Eli Zaretskii <eliz@gnu.org>
7849
7850 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
7851 for event.x and event.y.
7852
7853 2004-07-01 Kenichi Handa <handa@m17n.org>
7854
7855 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
7856 after getting a new string by pre-write-conversion.
7857
7858 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
7859
7860 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
7861 (x_calc_absolute_position): Remove unused var `child'.
7862
7863 * xfaces.c (x_supports_face_attributes_p)
7864 (Fdisplay_supports_face_attributes_p): YAILOM.
7865 (tty_supports_face_attributes_p): Remove unused var `i'.
7866
7867 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
7868 back_unibyte_ok.
7869
7870 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
7871
7872 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
7873
7874 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
7875
7876 2004-06-30 Andreas Schwab <schwab@suse.de>
7877
7878 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
7879 (Finit_image_library): Pass LIBRARIES through to
7880 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
7881 (lookup_image_type): Pass Qnil as second argument to
7882 Finit_image_library.
7883
7884 * lisp.h (Finit_image_library): Declare.
7885
7886 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7887
7888 * macterm.c (do_window_activate, do_window_deactivate): Remove.
7889 (XTread_socket): Send mouse button events to the toolbox
7890 dispatcher even when the mouse is grabbed. Don't process window
7891 activate events for non-Emacs windows. Replace function calls to
7892 do_window_activate and do_window_deactivate with their contents.
7893 Reset mouse grabbing status when a window is deactivated.
7894
7895 2004-06-29 Steven Tamm <steventamm@mac.com>
7896
7897 * macterm.c (mac_get_emulated_btn)
7898 (mac_event_to_emacs_modifiers): Fix emulated mouse button
7899 support to correctly mask out modifiers.
7900
7901 2004-06-29 David Kastrup <dak@gnu.org>
7902
7903 * search.c (Fset_match_data): Allow buffer before end of list
7904 which can happen if set-match-data is using a pre-consed list.
7905
7906 2004-06-28 Steven Tamm <steventamm@mac.com>
7907
7908 * macterm.c (XTread_socket): Correctly set the frame position
7909 after the window is moved.
7910
7911 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7912
7913 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
7914 gpix and gmask just before return to avoid memory leak.
7915 (xg_get_image_for_pixmap): Add workaround for monochrome displays
7916 so insensitive and activated icons look ok.
7917
7918 2004-06-27 Jason Rumney <jasonr@gnu.org>
7919
7920 * w32fns.c (file_dialog_callback): Disable edit control if set
7921 to directories only on CDN_INITDONE message.
7922 (Fx_file_dialog): Default to directories only when prompt starts
7923 with "Dired".
7924
7925 2004-06-25 Kim F. Storm <storm@cua.dk>
7926
7927 * alloc.c (allocate_misc): Update total_free_markers.
7928 (free_misc): New function.
7929 (safe_alloca_unwind, free_marker): Use it.
7930
7931 * lisp.h (free_misc): Add prototype.
7932
7933 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
7934
7935 2004-06-24 Richard M. Stallman <rms@gnu.org>
7936
7937 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
7938 (syms_of_emacs): Lisp variables deleted.
7939
7940 2004-06-23 David Kastrup <dak@gnu.org>
7941
7942 * search.c (Freplace_match): Adjust the match-data more thoroughly
7943 when replacing strings in the buffer.
7944 (Fmatch_data): When INTEGERS is non-nil and the last match was in
7945 a buffer, add the buffer as last element to the match data.
7946 (Fset_match_data): If an additional element of the match-data is a
7947 buffer, restore it to last_thing_searched.
7948 (save_search_regs): Save last_thing_searched as part of the match data.
7949 (restore_match_data): Restore it again.
7950
7951 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
7952
7953 * keymap.c (Ftext_char_description): Doc fix.
7954 * doc.c (Fsnarf_documentation): Doc fix.
7955
7956 2004-06-22 Kim F. Storm <storm@cua.dk>
7957
7958 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
7959
7960 * lisp.h (struct Lisp_Save_Value): New member dogc.
7961 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7962 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
7963 (SAFE_FREE_LISP): New macro.
7964
7965 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
7966 (make_save_value): Init new dogc member.
7967 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
7968
7969 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
7970 SAFE_FREE_LISP macros.
7971
7972 2004-06-22 Kim F. Storm <storm@cua.dk>
7973
7974 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
7975 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
7976 in that memory area are unknown to GC. Add comments.
7977
7978 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
7979
7980 2004-06-21 Kim F. Storm <storm@cua.dk>
7981
7982 * lisp.h (MAX_ALLOCA): Define here.
7983 (safe_alloca_unwind): Add prototype.
7984 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
7985
7986 * alloc.c (safe_alloca_unwind): New function.
7987
7988 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
7989
7990 * charset.c (Fstring): Use SAFE_ALLOCA.
7991
7992 * coding.c (MAX_ALLOCA): Remove define.
7993
7994 * data.c (MAX_ALLOCA): Remove define.
7995 (Faset): Use SAFE_ALLOCA.
7996
7997 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
7998
7999 * fns.c (string_make_multibyte, string_to_multibyte)
8000 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
8001 (MAX_ALLOCA): Remove define.
8002 (Fbase64_encode_region, Fbase64_encode_string)
8003 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
8004 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
8005 memory leak if encoding fails.
8006
8007 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
8008
8009 2004-06-21 Eli Zaretskii <eliz@gnu.org>
8010
8011 * print.c (Fwith_output_to_temp_buffer): Doc fix.
8012
8013 2004-06-20 Richard M. Stallman <rms@gnu.org>
8014
8015 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
8016
8017 * search.c (match_limit): Cleaner err msg when no match data available.
8018
8019 * window.c (syms_of_window): Doc fix.
8020
8021 * keyboard.c (command_loop_1): Handle values `only' and `identity'
8022 for Vtransient_mark_mode.
8023
8024 * buffer.c (syms_of_buffer): Doc fix.
8025
8026 2004-06-21 David Kastrup <dak@gnu.org>
8027
8028 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
8029 and unbinding of `case-fold-search' according to
8030 `completion-ignore-case' around calls of string-match and
8031 predicates, respectively. Should give satisfactory performance
8032 in all relevant cases.
8033
8034 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8035
8036 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
8037 clip_x/y_origin.
8038
8039 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
8040
8041 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
8042
8043 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
8044 on Mac OSX.
8045
8046 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
8047
8048 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
8049
8050 2004-06-16 Kim F. Storm <storm@cua.dk>
8051
8052 * dispextern.h (Vimage_types): Remove extern.
8053
8054 2004-06-16 Miles Bader <miles@gnu.org>
8055
8056 * image.c (lookup_image_type): Initialize image type if necessary.
8057
8058 2004-06-15 Kim F. Storm <storm@cua.dk>
8059
8060 * xdisp.c (try_cursor_movement): Exclude header line from scroll
8061 margin at top of window.
8062 (try_window_reusing_current_matrix): Calculate proper cursor position
8063 after scrolling up with non-zero scroll margin, as the old cursor
8064 position corresponds to value of PT before executing this command.
8065 (try_window_id): Consider scroll margin at bottom of window too;
8066 otherwise we fail to scroll when hl-line-mode is enabled.
8067
8068 * syntax.c (skip_chars): Only recognize [:class:] when it has the
8069 proper format and class is a lower-case word.
8070
8071 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8072
8073 * gtkutil.c (xg_get_image_for_pixmap): New function.
8074 (xg_get_gdk_pixmap_and_mask): Remove.
8075 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
8076 xg_get_gdk_pixmap_and_mask.
8077
8078 * xterm.h (struct x_display_info): Typo in comment fixed.
8079
8080 2004-06-14 Juanma Barranquero <lektu@terra.es>
8081
8082 * dispextern.h (Vimage_types): Make it conditional on
8083 HAVE_WINDOW_SYSTEM.
8084
8085 * image.c (Vimage_types): Move from xdisp.c.
8086 (Vimage_type_cache): New variable.
8087 (define_image_type): New argument indicating whether an image
8088 library was loaded; cache loaded status and return t on success,
8089 nil otherwise.
8090 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
8091 (w32_delayed_load): New function to load an image library from a
8092 list of possible filenames.
8093 (init_xpm_functions, init_png_functions, init_jpeg_functions)
8094 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
8095 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
8096 (Finit_image_library): New function, extracted from `init_image'.
8097 Try to initialize an image library on demand and cache whether we
8098 were successful or not.
8099 (syms_of_image): Initialize `Vimage_types' and
8100 `Vimage_type_cache'. Add recognized image types to Vimage_types.
8101 Export `init-image-library'.
8102 (init_image): Remove initialization of all image types, except xbm
8103 and pbm.
8104
8105 * xdisp.c (Vimage_types): Delete (moved to image.c).
8106
8107 2004-06-14 Andreas Schwab <schwab@suse.de>
8108
8109 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8110 Avoid calling specbind when completion-regexp-list is empty.
8111
8112 2004-06-13 Richard M. Stallman <rms@gnu.org>
8113
8114 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
8115 (re_wctype, re_iswctype, re_wctype_to_bit):
8116 Non-function definitions moved here from regex.c.
8117
8118 * regex.c (re_wctype, re_iswctype): Function defs longer static.
8119 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
8120 (re_wctype, re_iswctype, re_wctype_to_bit):
8121 Non-function definitions moved to regex.h.
8122
8123 * window.c (Fselect_window): Doc fix.
8124
8125 * syntax.c: Include regex.h.
8126 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
8127 If requested, make a list of classes, then check the scanned
8128 chars for membership in them.
8129 (in_classes): New function.
8130 Doc fix.
8131
8132 * keyboard.c (cmd_error): Don't call any_kboard_state
8133 if inside a recursive edit level.
8134
8135 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8136
8137 * keyboard.c (command_loop): Call any_kboard_state before
8138 command_loop_2 when at top level.
8139
8140 2004-06-13 Andreas Schwab <schwab@suse.de>
8141
8142 * print.c (print_object): Always use %ld for printing EMACS_INT.
8143
8144 * keyboard.c (cancel_hourglass_unwind): Return a value.
8145 (modify_event_symbol): Always use %ld for printing EMACS_INT.
8146 (Fexecute_extended_command): Likewise.
8147
8148 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
8149 avoid clashes.
8150 (SYNTAX): Likewise.
8151 (SYNTAX_WITH_FLAGS): Likewise.
8152 (SYNTAX_MATCH): Likewise.
8153
8154 * syntax.c (char_quoted): Avoid warning about undefined operation.
8155 (find_defun_start): Likewise.
8156 (scan_lists): Likewise.
8157 (INC_FROM): Likewise.
8158 (scan_sexps_forward): Likewise.
8159
8160 * image.c: Include <ctype.h>.
8161
8162 * xfaces.c (face_attr_equal_p): Declare parameters.
8163
8164 2004-06-13 Kenichi Handa <handa@m17n.org>
8165
8166 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
8167
8168 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
8169
8170 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
8171
8172 2004-06-12 Kenichi Handa <handa@m17n.org>
8173
8174 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
8175 ccl_prog_stack_struct and update it.
8176 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
8177 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
8178 ccl->eof_ic on EOF.
8179 (ccl_debug_hook): New function.
8180 (struct ccl_prog_stack): New member eof_ic.
8181 (ccl_driver): Handle EOF in subrountine call correctly.
8182
8183 2004-06-11 Kenichi Handa <handa@m17n.org>
8184
8185 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
8186
8187 2004-06-11 Kim F. Storm <storm@cua.dk>
8188
8189 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
8190
8191 2004-06-11 Juanma Barranquero <lektu@terra.es>
8192
8193 * keyboard.c (Fposn_at_point): Doc fix.
8194
8195 2004-06-11 David Kastrup <dak@gnu.org>
8196
8197 * search.c (match_limit): Don't flag an error if match-data
8198 exceeding the allocated search_regs.num_regs gets requested, just
8199 return Qnil.
8200
8201 2004-06-08 Miles Bader <miles@gnu.org>
8202
8203 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
8204
8205 2004-06-07 Juanma Barranquero <lektu@terra.es>
8206
8207 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
8208 (Fcurrent_time_string, Fcurrent_time_zone)
8209 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
8210
8211 2004-06-07 Miles Bader <miles@gnu.org>
8212
8213 * xfaces.c (struct named_merge_point): New type.
8214 (push_named_merge_point): New function.
8215 (merge_named_face): New function.
8216 (merge_face_ref, face_at_buffer_position, face_at_string_position):
8217 Use `merge_named_face'.
8218 (merge_face_inheritance): Function removed.
8219 (merge_face_ref): Rename from `merge_face_vector_with_property'.
8220 Add new `err_msgs' and `named_merge_points' args. Return error
8221 status. Only print error messages if ERR_MSGS is true. Don't try to
8222 do :inherit attribute validation.
8223 (merge_face_heights): Handle `unspecified' in both directions.
8224 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
8225 Call `merge_face_ref' instead of `merge_face_inheritance'.
8226 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
8227 (compute_char_face, face_at_buffer_position)
8228 (face_at_string_position): Call `merge_face_ref' instead of
8229 `merge_face_vector_with_property'.
8230
8231 2004-06-07 Kenichi Handa <handa@m17n.org>
8232
8233 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
8234 the necessary places.
8235
8236 2004-06-07 Kim F. Storm <storm@cua.dk>
8237
8238 * process.c (Fdelete_process): Undo 2004-05-28 change.
8239 Instead, call status_notify also for network process.
8240 (status_message): Use process instead of status as arg.
8241 Give messages "deleted" or "connection broken by remote peer" for
8242 an exited network process.
8243 (status_notify): Change call to status_message.
8244 (read_process_output): Increase readmax to 4096. Do not increase
8245 buffer size for datagram channels (default is now large enough).
8246
8247 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8248
8249 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
8250 problem due to newly defined variable.
8251
8252 2004-06-06 Miles Bader <miles@gnu.org>
8253
8254 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
8255 immediately if non-interactive or not initialized.
8256
8257 2004-06-05 Richard M. Stallman <rms@gnu.org>
8258
8259 * minibuf.c (Fcompleting_read): Doc fix.
8260
8261 2004-06-05 Andreas Schwab <schwab@suse.de>
8262
8263 * macfns.c (x_create_tip_frame): Fix declaration after statement.
8264
8265 2004-06-05 Juanma Barranquero <lektu@terra.es>
8266
8267 * keymap.c (Fdescribe_vector): Fix docstring.
8268 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
8269
8270 2004-06-05 Miles Bader <miles@gnu.org>
8271
8272 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
8273 attributes have different values than the default face.
8274
8275 2004-06-04 Eli Zaretskii <eliz@gnu.org>
8276
8277 * xfaces.c (x_supports_face_attributes_p): Make this function
8278 conditional on HAVE_WINDOW_SYSTEM.
8279 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
8280 Don't call x_supports_face_attributes_p if it was not compiled in.
8281
8282 2004-06-04 Miles Bader <miles@gnu.org>
8283
8284 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
8285 from Ftty_supports_face_attributes_p.
8286 (x_supports_face_attributes_p): New function.
8287 (Ftty_supports_face_attributes_p): Function deleted.
8288 (Fdisplay_supports_face_attributes_p): New function.
8289 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
8290 (face_attr_equal_p): New function.
8291 (lface_equal_p): Use it.
8292
8293 2004-06-03 Juanma Barranquero <lektu@terra.es>
8294
8295 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
8296 (Vw32_color_map): Fix typo in docstring.
8297 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
8298 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
8299 Make argument names match their use in docstring.
8300
8301 2004-06-02 Juanma Barranquero <lektu@terra.es>
8302
8303 Work around bugs/problems with MinGW builds of graphics libraries
8304 called from MSVC builds of Emacs.
8305
8306 * image.c (lookup_image): Make pointer to img static.
8307 (png_read_from_memory): Disable "global" optimization.
8308
8309 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
8310
8311 * eval.c (Fcondition_case): Fix usage. Simplify.
8312
8313 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
8314
8315 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8316
8317 * macfns.c: Don't include ccl.h.
8318 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
8319 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
8320 TextUtils.h.
8321 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
8322 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
8323 display height/width.
8324 (compute_tip_xy, Vx_max_tooltip_size): Declare.
8325 (unwind_create_tip_frame, compute_tip_xy): New functions.
8326 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
8327 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
8328 and last_show_tip_args.
8329
8330 * macgui.h [!MAC_OSX]: Include Gestalt.h.
8331 (Cursor, No_Cursor): New defines.
8332 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
8333 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
8334
8335 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
8336
8337 * macterm.c: Don't include Gestalt.h.
8338 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
8339 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
8340 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
8341 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
8342 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
8343 (construct_mouse_click, XTmouse_position)
8344 (x_scroll_bar_report_motion, x_calc_absolute_position)
8345 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
8346 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
8347 (note_mouse_movement): Clear the mouse face and reset the pointer
8348 shape when the pointer goes outside the frame without grabbing.
8349 (mac_front_window): New function.
8350 (mac_window_to_frame): New macro.
8351 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
8352 (do_window_activate, do_window_deactivate, do_app_resume)
8353 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
8354 (do_zoom_window, mac_do_receive_drag, XTread_socket)
8355 (mac_check_for_quit_char): Use mac_front_window and/or
8356 mac_window_to_frame.
8357 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
8358 scroll-bar click event.
8359 (mac_define_frame_cursor): Change the pointer shape.
8360 (x_free_frame_resources): Reset tip_window to NULL when it is
8361 disposed of.
8362 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
8363 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
8364 (do_window_update): Don't do anything if the updated window is the
8365 tooltip window.
8366 (do_mouse_moved): Handle mouse movement events here (previously in
8367 XTread_socket). Clear the mouse face if
8368 dpyinfo->mouse_face_hidden is set.
8369 (do_os_event, do_events): Remove (now in XTread_socket).
8370 (XTread_socket): Immediately return if interrupt_input_blocked.
8371 Loop until all the events in the queue are processed.
8372 Rearrange codes for mouse grabbing. Add tooltip support. Include the
8373 contents of do_os_event and do_events. Remove mouse movement
8374 handling (now in do_mouse_moved). Add the case where
8375 Vmouse_highlight has an integer value.
8376 (NewMacWindow): Remove.
8377 (make_mac_frame): Do what NewMacWindow previously did. Don't do
8378 excess initializations.
8379 (make_mac_terminal_frame): Previous initializations in
8380 make_mac_frame are moved here.
8381 (mac_initialize_display_info):
8382 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
8383
8384 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
8385 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
8386
8387 2004-05-29 Richard M. Stallman <rms@gnu.org>
8388
8389 * lisp.h (truncate_undo_list): Update decl.
8390
8391 * alloc.c (undo_outer_limit): New variable.
8392 (syms_of_alloc): Defvar it.
8393 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
8394
8395 * undo.c (truncate_undo_list): New arg LIMITSIZE.
8396
8397 * alloc.c (lisp_align_malloc): Check for base == 0
8398 regardless of HAVE_POSIX_MEMALIGN.
8399 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
8400
8401 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8402
8403 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
8404 (marker_blocks_pending_free): Remove.
8405 (Fgarbage_collect): Sweep after cleaning up undo-lists.
8406 Mark the undo lists after claning them up.
8407 Don't free block in marker_blocks_pending_free.
8408 (mark_buffer): Don't mark undo_list.
8409 (gc_sweep): Sweep hash-tables and strings first.
8410 Do free marker blocks that are empty.
8411
8412 2004-05-28 Jim Blandy <jimb@redhat.com>
8413
8414 * regex.c (print_partial_compiled_pattern): Add missing 'break'
8415 after 'case wordend'. For symbeg and symend, print to stderr,
8416 like the other cases.
8417
8418 2004-05-28 Noah Friedman <friedman@splode.com>
8419
8420 * process.c (Fdelete_process): Do not call remove_process.
8421
8422 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8423
8424 * alloc.c (struct backtrace): Remove.
8425 (Fgarbage_collect): Use the new mark_backtrace.
8426
8427 * eval.c (mark_backtrace): New function.
8428
8429 * minibuf.c (run_exit_minibuf_hook): New function.
8430 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
8431 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
8432
8433 2004-05-27 Kim F. Storm <storm@cua.dk>
8434
8435 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
8436 over display properties, e.g. images, that replace buffer text.
8437
8438 2004-05-25 Kim F. Storm <storm@cua.dk>
8439
8440 * alloc.c (marker_blocks_pending_free): New var.
8441 (gc_sweep): Store free marker blocks on that list.
8442 (Fgarbage_collect): Free them after undo-list cleanup.
8443
8444 * process.c (wait_reading_process_input): Check connect_wait_mask
8445 before actually accepting connection in case it has already been
8446 accepted due to recursion.
8447
8448 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8449
8450 * coding.c (Fset_safe_terminal_coding_system_internal):
8451 Set suppress_error in safe_terminal_coding, not terminal_coding.
8452
8453 2004-05-22 Richard M. Stallman <rms@gnu.org>
8454
8455 * alloc.c (Fmake_string): Doc fix.
8456
8457 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
8458 and the alist pairs too.
8459
8460 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
8461
8462 * emacs.c (main): Update copyright year.
8463
8464 * fileio.c (Fread_file_name): Expand DIR if not absolute.
8465
8466 * insdel.c (del_range_2, replace_range): Don't write an anchor
8467 if the gap is empty.
8468
8469 * xdisp.c (try_scrolling): If scroll-up-aggressively or
8470 scroll-down-aggressively is small but positive, put point
8471 near the screen edge.
8472
8473 2004-05-22 Juanma Barranquero <lektu@terra.es>
8474
8475 * keymap.c (Fdefine_key): Doc fix.
8476
8477 2004-05-22 Kim F. Storm <storm@cua.dk>
8478
8479 * alloc.c (struct backtrace): Add debug_on_exit member.
8480 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
8481 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
8482 the removed cons cells.
8483 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
8484 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
8485 any cons cells pointing to unallocated stings.
8486 Do not lisp_free any marker blocks, as there may still be pointers
8487 to them from buffer undo lists at this stage of GC.
8488
8489 * keyboard.c (struct backtrace): Add debug_on_exit member.
8490 (Fcommand_execute): Clear it.
8491
8492 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
8493
8494 * intervals.c (lookup_char_property): Do not prematurely return nil.
8495
8496 2004-05-19 Jim Blandy <jimb@redhat.com>
8497
8498 Add support for new '\_<' and '\_>' regexp operators, matching the
8499 beginning and end of symbols.
8500
8501 * regex.c (enum syntaxcode): Add Ssymbol.
8502 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
8503 (re_opcode_t): New opcodes `symbeg' and `symend'.
8504 (print_partial_compiled_pattern): Print the new opcodes properly.
8505 (regex_compile): Parse the new operators.
8506 (analyse_first): Skip sym(beg|end) (they match only the empty string).
8507 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
8508 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
8509 (re_match_2_internal): Match symbeg and symend.
8510
8511 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
8512
8513 2004-05-19 Kim F. Storm <storm@cua.dk>
8514
8515 * .gdbinit (xsymbol): Fix last change.
8516
8517 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
8518
8519 * .gdbinit (xprintstr): New fun.
8520 (xstring, xprintsym): Use it.
8521
8522 * w32proc.c (create_child): Use INTMASK.
8523
8524 * alloc.c (Fgarbage_collect): Do all the marking before flushing
8525 unmarked elements of the undo list.
8526
8527 2004-05-18 David Ponce <david@dponce.com>
8528
8529 * print.c (print): Reset print_depth before to call print_object.
8530
8531 2004-05-18 Jason Rumney <jasonr@gnu.org>
8532
8533 * w32console.c: Prefix RIF functions with w32con_ to avoid
8534 namespace clash with functions in term.c and w32term.c.
8535
8536 * w32menu.c (add_menu_item, w32_menu_display_help)
8537 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
8538
8539 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
8540
8541 2004-05-18 Eli Zaretskii <eliz@gnu.org>
8542
8543 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
8544
8545 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
8546 with make_number.
8547 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
8548 with XINT.
8549
8550 2004-05-18 Kim F. Storm <storm@cua.dk>
8551
8552 * blockinput.h (INPUT_BLOCKED_P): New macros.
8553
8554 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
8555 (Ftop_level): Unblock input if blocked.
8556
8557 * buffer.h (GET_OVERLAYS_AT): New macro.
8558 * msdos.c (IT_note_mouse_highlight): Use it.
8559 * textprop.c (get_char_property_and_overlay): Use it.
8560 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
8561 * xfaces.c (face_at_buffer_position): Use it.
8562
8563 * print.c (print_object): Increase buf size.
8564
8565 2004-05-17 Jason Rumney <jasonr@gnu.org>
8566
8567 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
8568 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
8569 Lisp_Object using i member.
8570 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
8571 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
8572 consistently.
8573
8574 * w32proc.c (create_child): Use make_number instead of masking pid.
8575
8576 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
8577 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
8578 Use EQ to compare Lisp_Objects.
8579 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
8580
8581 * w32term.c (w32_num_mouse_buttons): Rename from
8582 Vw32_num_mouse_buttons and make it an int.
8583
8584 * w32.c (init_environment): Use it.
8585
8586 * w32fns.c (w32_wnd_proc): Likewise.
8587
8588 * w32proc.c (w32_pipe_read_delay): Rename from
8589 Vw32_pipe_read_delay and make it an int.
8590
8591 * w32.c (_sys_read_ahead): Use it.
8592
8593 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
8594
8595 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
8596
8597 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
8598 (key_event): Don't mix Lisp_Object and int.
8599
8600 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
8601
8602 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
8603 modifiers in language change event.
8604
8605 2004-05-17 Kim F. Storm <storm@cua.dk>
8606
8607 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
8608 Such objects may be freed markers which still exist on an undo list.
8609
8610 2004-05-16 Juanma Barranquero <lektu@terra.es>
8611
8612 * data.c (Fset_default): Make argument names match their use in
8613 docstring.
8614
8615 2004-05-15 Andreas Schwab <schwab@suse.de>
8616
8617 * emacs.c (gdb_array_mark_flag): Define.
8618 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
8619
8620 2004-05-15 Eli Zaretskii <eliz@gnu.org>
8621
8622 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
8623 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
8624 defined for the MS-DOS build.
8625
8626 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
8627
8628 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
8629
8630 2004-05-14 Kenichi Handa <handa@m17n.org>
8631
8632 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
8633
8634 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8635
8636 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
8637 section to frame.c section.
8638 (Fxw_display_color_p, Fx_file_dialog): Declare if
8639 HAVE_WINDOW_SYSTEM defined.
8640
8641 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
8642
8643 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
8644
8645 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
8646 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
8647 (XTread_socket): Fix int/Lisp_Object mixup.
8648 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
8649
8650 * macterm.h (struct frame, struct face, struct image)
8651 (display_x_get_resource, Fx_display_color_p)
8652 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
8653 Add prototypes.
8654
8655 2004-05-14 Kim F. Storm <storm@cua.dk>
8656
8657 * process.c (wait_reading_process_input): Make reentrant.
8658 Make Available and Connecting non-static. Save and restore value
8659 of waiting_for_user_input_p.
8660
8661 2004-05-13 Kim F. Storm <storm@cua.dk>
8662
8663 * keyboard.c (mark_kboards): Don't mark x and y members
8664 that are overloaded in selection request events.
8665
8666 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8667
8668 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
8669
8670 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
8671
8672 * window.c (Fdisplay_buffer, Fsplit_window)
8673 (split-height-threshold): Doc fix.
8674
8675 2004-05-13 Juanma Barranquero <lektu@terra.es>
8676
8677 * xfaces.c (Ftty_supports_face_attributes_p)
8678 (Finternal_copy_lisp_face): Fix typo in docstring.
8679 (Finternal_get_lisp_face_attribute): Fix docstring.
8680
8681 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8682
8683 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
8684
8685 2004-05-11 Steven Tamm <steventamm@mac.com>
8686
8687 * macfns.c (Fx_create_frame): Default to using tool-bar by
8688 setting tool-bar-lines to 1 in default-frame-alist.
8689
8690 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8691
8692 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
8693 (xpm_get_color_table_v, xpm_make_color_table_h)
8694 (xpm_put_color_table_h, xpm_get_color_table_h)
8695 (xpm_str_to_color_key, xpm_load_image, xpm_load)
8696 (syms_of_image): Support XPM on Carbon Emacs. Does not
8697 depend on libXpm, but only supports XPM version 3 without extensions.
8698
8699 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8700
8701 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
8702 instead of FRAME_X_P
8703
8704 2004-05-11 Kim F. Storm <storm@cua.dk>
8705
8706 * process.c (read_process_output): Grow decoding_buf when needed;
8707 this could cause a crash in allocate_string and compact_small_strings.
8708
8709 2004-04-29 Jim Blandy <jimb@redhat.com>
8710
8711 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
8712 against proper opcode.
8713
8714 2004-05-10 Juanma Barranquero <lektu@terra.es>
8715
8716 * process.c (Fstart_process): Fix docstring.
8717
8718 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
8719 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
8720 (Fsplit_char, Fchar_charset): Make argument names match their use
8721 in docstring.
8722
8723 2004-05-10 Richard M. Stallman <rms@gnu.org>
8724
8725 * print.c (print_preprocess): Use being_printed, loop_count and
8726 halftail to detect overdeep nesting and cyclic cdr chains.
8727
8728 2004-05-10 Andreas Schwab <schwab@suse.de>
8729
8730 * lisp.h (Fmake_symbolic_link): Declare.
8731
8732 * fileio.c (Frename_file): Remove extra argument in call to
8733 Fmake_symbolic_link.
8734
8735 2004-05-10 Kim F. Storm <storm@cua.dk>
8736
8737 * xdisp.c (calc_line_height_property): Use string position when
8738 object is a string.
8739
8740 2004-05-10 Kenichi Handa <handa@m17n.org>
8741
8742 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
8743 inhibit-modification-hooks to t temporarily before calling
8744 Ferase_buffer.
8745
8746 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
8747 inhibit-modification-hooks to t temporarily before calling
8748 Ferase_buffer.
8749
8750 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
8751 inhibit-modification-hooks to t temporarily before calling
8752 Ferase_buffer.
8753
8754 * fns.c (count_combining): Delete it.
8755 (concat): Don't check combining bytes.
8756
8757 2004-05-09 Jason Rumney <jasonr@gnu.org>
8758
8759 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
8760 (globals_of_w32fns): Set it.
8761
8762 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
8763
8764 * data.c (Fquo): Simplify.
8765
8766 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
8767
8768 * data.c (Fquo): If any argument is float, do the computation in
8769 floating point.
8770
8771 2004-05-08 Juanma Barranquero <lektu@terra.es>
8772
8773 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8774 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8775 Fix spelling of Emacs on docstring.
8776 (Fset_process_coding_system, Fprocess_coding_system)
8777 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8778 Make argument names match their use in docstring.
8779 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8780 Fix docstring.
8781
8782 * editfns.c (Finsert_buffer_substring): Make argument names match their
8783 use in docstring.
8784
8785 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8786
8787 2004-05-07 Steven Tamm <steventamm@mac.com>
8788
8789 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8790 around call to ReceiveEvent to avoid certain crashes.
8791
8792 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8793
8794 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8795 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8796 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8797 Save/restore the current graphics port and device handle when
8798 drawing into an offscreen graphics world.
8799
8800 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8801 (gif_load): Likewise.
8802
8803 2004-05-07 Juanma Barranquero <lektu@terra.es>
8804
8805 * window.c (Fset_window_buffer): Fix docstring.
8806
8807 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8808
8809 * emacs.c (main) [VMS]: Fix var ref.
8810
8811 2004-05-06 Romain Francoise <romain@orebokech.com>
8812
8813 * data.c (Fsetq_default): Fix docstring.
8814
8815 2004-05-06 Jason Rumney <jasonr@gnu.org>
8816
8817 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8818 to avoid name clash.
8819
8820 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8821
8822 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8823 (Frename_file): Handle renaming of symlinks across file systems.
8824 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8825
8826 2004-05-04 Kim F. Storm <storm@cua.dk>
8827
8828 * xdisp.c (Qtotal): New var.
8829 (syms_of_xdisp): Intern and staticpro it.
8830 (calc_line_height_property): New arg total. Set it if
8831 line-spacing property has format (total . VALUE).
8832 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8833 Handle total line-spacing property.
8834
8835 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8836
8837 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
8838 "under" scroll bar when size/position changes.
8839
8840 2004-05-03 Jason Rumney <jasonr@gnu.org>
8841
8842 * makefile.nt: Remove.
8843
8844 2004-05-02 Eli Zaretskii <eliz@gnu.org>
8845
8846 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
8847 Avoid compiler warnings.
8848
8849 * Makefile.in (region-cache.o): Depend on config.h.
8850
8851 2004-05-02 Romain Francoise <romain@orebokech.com>
8852
8853 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
8854 with continuation lines, too.
8855
8856 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
8857
8858 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
8859
8860 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8861
8862 * xdisp.c (calc_line_height_property): YAILOM (yet another
8863 int/Lisp_Object mixup).
8864
8865 2004-05-01 Eli Zaretskii <eliz@gnu.org>
8866
8867 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
8868 undo bad effect of pack(4) in some versions of system headers.
8869
8870 2004-05-01 Jason Rumney <jasonr@gnu.org>
8871
8872 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
8873
8874 2004-04-30 Kim F. Storm <storm@cua.dk>
8875
8876 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
8877 (syms_of_buffer) <cursor-type>: Doc fix.
8878
8879 * dispextern.h (struct it): Remove member use_default_face.
8880 Add members override_ascent, override_descent, override_boff.
8881
8882 * xdisp.c (init_iterator): Handle line-spacing float value.
8883 Initialize override_ascent member.
8884 (append_space_for_newline): Reset override_ascent.
8885 Remove use_default_face.
8886 (calc_line_height_property): New function to calculate value of
8887 line-height and line-spacing properties. Look at overlays, too.
8888 Set override_ascent, override_descent, override_boff members when
8889 using another face than the current face. Float values are now
8890 relative to the frame default font, by default; accept a cons
8891 of ratio and face name to specify value relative to a specific face.
8892 (x_produce_glyphs): Use calc_line_height_property.
8893 Use override_ascent etc. when set to handle different face heights.
8894 A negative line-spacing property value is interpreted as a total
8895 line height, rather than inter-line spacing.
8896 (note_mouse_highlight): Allocate room for 40 overlays initially.
8897
8898 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8899
8900 * data.c (Fsubr_name): New fun.
8901 (syms_of_data): Defsubr it.
8902
8903 2004-04-29 Kim F. Storm <storm@cua.dk>
8904
8905 * xdisp.c (null_glyph_slice): New var.
8906 (append_glyph, append_composite_glyph, append_stretch_glyph):
8907 Use it to initialize glyph slice.
8908
8909 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8910
8911 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
8912 (on_hot_spot_p): Make sure we always return a value.
8913 (Flookup_image_map): Remove unused var ix and iy.
8914 (note_mode_line_or_margin_highlight): Remove unused var `image'.
8915
8916 2004-04-27 Eli Zaretskii <eliz@gnu.org>
8917
8918 * msdos.c (init_environment): If one of the TMP... environment
8919 variables is set to a drive letter without a trailing slash,
8920 append a slash.
8921
8922 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
8923
8924 * editfns.c (lisp_time_argument): Provide externally.
8925
8926 * fileio.c (Fset_file_times): New function.
8927 (syms_of_fileio): Intern and staticpro it.
8928
8929 2004-04-27 Kim F. Storm <storm@cua.dk>
8930
8931 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
8932 header line strings.
8933
8934 * dispextern.h (struct it): New member use_default_face.
8935
8936 * xdisp.c (Qline_height): New variable.
8937 (syms_of_xdisp): Intern and staticpro it.
8938 (append_space_for_newline): Partially undo 2004-04-25 change;
8939 add default_face_p arg, and restore callers.
8940 Clear it->use_default_face after use.
8941 (x_produce_glyphs): Set default font for ascii char if
8942 it->use_default_font is set. Change line-spacing property to set
8943 just extra line spacing. Handle new line-height property.
8944
8945 2004-04-26 Andreas Schwab <schwab@suse.de>
8946
8947 * print.c (print_object): Print non-ascii characters in bool
8948 vector representation as octal escapes.
8949
8950 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
8951 * print.c (print_object): Use it instead of BITS_PER_CHAR for
8952 bool vectors.
8953 * lread.c (read1): Likewise.
8954 * alloc.c (Fmake_bool_vector): Likewise.
8955 * data.c (Faref, Faset): Likewise.
8956 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
8957 (mapcar1): Likewise.
8958
8959 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8960
8961 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
8962
8963 2004-04-26 Miles Bader <miles@gnu.org>
8964
8965 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
8966
8967 2004-04-26 Juanma Barranquero <lektu@terra.es>
8968
8969 * buffer.c (Fpop_to_buffer): Fix docstring.
8970
8971 2004-04-26 Steven Tamm <steventamm@mac.com>
8972
8973 * lread.c (init_lread): Don't display missing lisp directory
8974 warnings with Carbon Emacs because self-contained bundled Emacs
8975 may be built without correct installation path.
8976
8977 2004-04-25 Kim F. Storm <storm@cua.dk>
8978
8979 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8980
8981 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8982
8983 * xdisp.c (append_space_for_newline): Rename from append_space.
8984 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
8985 (x_produce_glyphs): Handle line-spacing property on newline char.
8986 If value is t, adjust ascent and descent to fit current row height.
8987 If value is an integer or float, set extra_line_spacing to integer
8988 value, or to float value x current line height.
8989
8990 2004-04-23 Kenichi Handa <handa@m17n.org>
8991
8992 * fontset.c (Finternal_char_font): If POSITION is nil, return
8993 font for displaying CH with the default face.
8994
8995 2004-04-23 Juanma Barranquero <lektu@terra.es>
8996
8997 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
8998
8999 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9000
9001 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
9002 Don't make assumptions about the relative place of i and val.
9003 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
9004
9005 2004-04-21 Kim F. Storm <storm@cua.dk>
9006
9007 * dispextern.h (struct glyph_slice): New struct.
9008 (struct glyph): New member slice.
9009 (GLYPH_SLICE_EQUAL_P): New macro.
9010 (GLYPH_EQUAL_P): Use it.
9011 (struct glyph_string): New member slice.
9012 (struct it_slice): New struct.
9013 (struct it): New member slice, add member to stack too.
9014 New member constrain_row_ascent_descent_p.
9015 (image_ascent): Add prototype.
9016
9017 * dispnew.c (buffer_posn_from_coords): Return full image width
9018 and height even for image slices (posn is relative to full image).
9019 (marginal_area_string): Adjust x0,y0 for image slice.
9020
9021 * image.c (image_ascent): Add slice arg; calculate ascent for
9022 image slice (or full image).
9023
9024 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
9025 (syms_of_keyboard): Defsubr them.
9026
9027 * lisp.h (pos_visible_p): Fix prototype.
9028
9029 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
9030 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
9031 (x_draw_image_foreground, x_draw_image_relief)
9032 (x_draw_image_foreground_1, x_draw_image_glyph_string):
9033 Draw sliced images.
9034
9035 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
9036 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
9037 (x_draw_image_foreground, x_draw_image_relief)
9038 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
9039 Draw sliced images.
9040
9041 * w32term.h (image_ascent): Remove prototype.
9042
9043 * window.c (Fpos_visible_in_window_p): Return pixel position if
9044 PARTIALLY arg is non-nil. Simplify. Doc fix.
9045 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
9046 to return/set vscroll in pixels.
9047
9048 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
9049
9050 * xdisp.c (Qslice): New variable.
9051 (syms_of_xdisp): Intern and staticpro it.
9052 (pos_visible_p): Return pixel position in new x and y args.
9053 (init_iterator): Reset it->slice info.
9054 (handle_display_prop): Parse (slice ...) property.
9055 (push_it, pop_it): Save/restore slice info.
9056 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
9057 force repositioning of tall row if window is vscrolled, as that
9058 would reset vscroll.
9059 (append_space): Set it->constrain_row_ascent_descent_p to avoid
9060 increasing row height if row is non-empty.
9061 (fill_image_glyph_string): Copy slice info.
9062 (take_vertical_position_into_account): Simplify.
9063 (produce_image_glyph): Handle iterator slice info, setup glyph
9064 slice info. Do not force minimum line height.
9065 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
9066 do not increase height (ascent/descent) of non-empty row when
9067 adding normal character glyph; instead reduce glyph ascent/descent
9068 appropriately; if row is higher than current glyph, adjust glyph
9069 descent/ascent to reposition glyph within the existing row.
9070 Likewise, when char is newline, only set ascent/descent if row is
9071 currently empty.
9072 (note_mouse_highlight): Handle hotspots with sliced image.
9073
9074 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
9075 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
9076 (x_draw_image_foreground, x_draw_image_relief)
9077 (x_draw_image_foreground_1, x_draw_image_glyph_string):
9078 Draw sliced images.
9079
9080 * xterm.h (image_ascent): Remove prototype.
9081
9082 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
9083
9084 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
9085
9086 2004-04-20 John Paul Wallington <jpw@gnu.org>
9087
9088 * fns.c (Fassoc, Feql): Fix indentation.
9089
9090 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
9091
9092 2004-04-19 John Paul Wallington <jpw@gnu.org>
9093
9094 * fns.c (Feql): New function.
9095 (syms_of_fns): Defsubr it.
9096
9097 2004-04-18 Jason Rumney <jasonr@gnu.org>
9098
9099 * w32select.c (Fw32_set_clipboard_data): Get sequence number
9100 after closing the clipboard.
9101
9102 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
9103
9104 * buffer.c (Fbuffer_base_buffer): Doc fix.
9105
9106 2004-04-17 Kim F. Storm <storm@cua.dk>
9107
9108 * keymap.c (Fkey_description): Add optional PREFIX arg.
9109 Combine prefix with KEYS to make up the full key sequence to describe.
9110 Correlate meta_prefix_char and following (simple) key to describe
9111 as meta modifier. All callers changed.
9112 (describe_map): Rename arg `keys' to `prefix'. Remove local
9113 `elt_prefix' var. Use Fkey_description with prefix instead of
9114 elt_prefix combined with Fsingle_key_description.
9115 (describe_vector): Declare static. Replace arg `elt_prefix' with
9116 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
9117 if !KEYMAP_P. Use Fkey_description with prefix instead of
9118 Fsingle_key_description.
9119
9120 * keymap.h (Fkey_description): Fix prototype.
9121 (describe_vector): Remove prototype.
9122
9123 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
9124
9125 * image.c (PNG_BG_COLOR_SHIFT): Remove.
9126 (png_load): Fix calculation of transparent background color on X
9127 and W32 platforms.
9128
9129 2004-04-16 Juanma Barranquero <lektu@terra.es>
9130
9131 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
9132 not too large before computing how much to scroll.
9133
9134 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
9135
9136 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
9137
9138 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
9139
9140 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
9141 Add hyperlink to Elisp manual to the docstring.
9142
9143 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
9144
9145 * callint.c (fix_command): Use XDCR.
9146
9147 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
9148
9149 * window.c (Fget_lru_window): Doc fix.
9150
9151 2004-04-14 Kim F. Storm <storm@cua.dk>
9152
9153 * editfns.c (Fformat): Fix allocation size of precision array.
9154
9155 * dispnew.c (update_window): Only set changed_p if
9156 scrolling_window actually did scroll.
9157 (scrolling_window): Only return 1 if we actually did scroll.
9158
9159 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
9160 height to glyph height when cursor row is not fully visible.
9161 (make_cursor_line_fully_visible): Add FORCE_P arg to return
9162 failure in case row is higher than window. Callers changed.
9163 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
9164 Try to scroll partially visible, higher-than-window cursor row.
9165 (redisplay_window): Always try to scroll partially visible,
9166 higher-than-window cursor row - both initially and again with
9167 centering_position = 0.
9168 Clear desired matrix before retrying with centering_position = 0.
9169
9170 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
9171
9172 * syntax.c (scan_lists): Simplify backward string scan.
9173 Fix off-by-one boundary check for string and comment fences.
9174
9175 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
9176
9177 * sheap.c, unexcw.c: New files.
9178
9179 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
9180
9181 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
9182 base buffer has been killed. Correct the error message if the
9183 base buffer does not exist.
9184
9185 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
9186
9187 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
9188 Cygwin itself. Add support for Xaw3d scrollbars.
9189
9190 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
9191
9192 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
9193
9194 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
9195 before Cygwin unexec.
9196
9197 * Makefile.in: Link changes for Cygwin unexec() support.
9198
9199 2004-04-12 Andreas Schwab <schwab@suse.de>
9200
9201 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
9202
9203 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
9204
9205 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
9206 IGNORE argument equals NAME. Doc fix.
9207
9208 2004-04-11 Masatake YAMATO <jet@gyve.org>
9209
9210 * buffer.c (fix_start_end_in_overlays): Make overlays
9211 empty if they are backwards.
9212
9213 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9214
9215 * xfaces.c (face_color_supported_p): Fix compilation without X11.
9216
9217 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
9218
9219 * doc.c (Fsnarf_documentation): Ignore new file name entries.
9220
9221 2004-04-06 Kim F. Storm <storm@cua.dk>
9222
9223 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
9224 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
9225
9226 * w32term.c (w32_read_socket): Set mouse_face_hidden after
9227 clearing highlight.
9228
9229 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
9230
9231 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
9232 clearing highlight.
9233
9234 * indent.c (vmotion): Do not reserve one column for continuation
9235 marks on window frames.
9236
9237 2004-04-04 Eli Zaretskii <eliz@gnu.org>
9238
9239 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
9240 from GCC.
9241
9242 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9243
9244 * .gdbinit-union: Remove.
9245
9246 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
9247 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
9248 ($nonvalbits): Remove.
9249 ($valmask): Set it by calling xreload to avoid redundancy.
9250
9251 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
9252 (gdb_emacs_intbits): Remove.
9253
9254 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9255
9256 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
9257
9258 2004-03-30 Kenichi Handa <handa@m17n.org>
9259
9260 * editfns.c (Fformat): Fix initialization of the array info.
9261
9262 2004-03-30 Kim F. Storm <storm@cua.dk>
9263
9264 * xterm.c (x_mouse_click_focus_ignore_position): New var.
9265 (syms_of_xterm): DEFVAR_BOOL it.
9266 (ignore_next_mouse_click_timeout): New var.
9267 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
9268 Use it to filter mouse clicks following focus event.
9269
9270 2004-03-29 David Ponce <david@dponce.com>
9271
9272 * callint.c (Fcall_interactively): Fix last change.
9273
9274 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
9275
9276 * eval.c (Fcommandp): Simplify.
9277
9278 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
9279 Extend to handle all kinds of functions.
9280
9281 * lisp.h (Finteractive_form): Declare.
9282
9283 * callint.c (Fcall_interactively): Use it.
9284
9285 2004-03-26 Kim F. Storm <storm@cua.dk>
9286
9287 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
9288 to catch errors in calc_pixel_width_or_height during redisplay.
9289
9290 2004-03-26 Masatake YAMATO <jet@gyve.org>
9291
9292 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
9293
9294 * lisp.h (fix_start_end_in_overlays): Likewise.
9295
9296 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
9297
9298 * editfns.c (Ftranspose_regions): Likewise.
9299
9300 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9301
9302 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
9303
9304 2004-03-19 Richard M. Stallman <rms@gnu.org>
9305
9306 * s/sol2-6.h: Delete previous change.
9307
9308 2004-03-19 Kim F. Storm <storm@cua.dk>
9309
9310 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
9311 to_charpos corresponds to newline in right fringe. Use local
9312 BUFFER_POS_REACHED_P macro.
9313
9314 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9315
9316 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
9317 to compile on non-window system.
9318
9319 2004-03-19 Kim F. Storm <storm@cua.dk>
9320
9321 * dispextern.h (calc_pixel_width_or_height): Add prototype.
9322
9323 * image.c (Qcenter): Move to xdisp.c.
9324
9325 * xdisp.c (Qcenter): Declare here.
9326 (syms_of_xdisp): Intern and staticpro it.
9327 (handle_single_display_prop): Allow space display property on all
9328 platforms.
9329 (display_mode_line): Set mode_line_p before displaying line.
9330 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
9331 handling. Remove complex cases for fringes and scroll-bars.
9332 Add left, right, and center alignment positions. Add text (area)
9333 width/height. Return width or height for image specs.
9334 (produce_stretch_glyph): Improve handling of :align-to. Is now
9335 relative to left of text area by default, but other base offsets
9336 can be specified -- also for text lines.
9337
9338 * term.c (produce_glyphs): Handle IT_STRETCH.
9339 (produce_stretch_glyph): New function to handle space width and
9340 align-to display properties on non-window systems.
9341
9342 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9343
9344 * fileio.c (Fread_file_name): Set completion-ignore-case for
9345 case-insensitive systems.
9346
9347 2004-03-14 Masatake YAMATO <jet@gyve.org>
9348
9349 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
9350 when keymap and cursor are setup.
9351
9352 2004-03-14 Steven Tamm <steventamm@mac.com>
9353
9354 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9355
9356 2004-03-14 Kim F. Storm <storm@cua.dk>
9357
9358 * dispextern.h (x_find_image_file): Add prototype.
9359
9360 * image.c (x_find_image_file): Make extern.
9361
9362 * xfns.c (x_find_image_file): Remove prototype.
9363
9364 2004-03-13 Eli Zaretskii <eliz@gnu.org>
9365
9366 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
9367
9368 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
9369
9370 2004-03-12 Richard M. Stallman <rms@gnu.org>
9371
9372 * fns.c (internal_equal): New arg PROPS controls comparing
9373 text properties. All callers changed.
9374 (Fequal_including_properties): New function.
9375 (syms_of_fns): defsubr it.
9376
9377 2004-03-12 Kim F. Storm <storm@cua.dk>
9378
9379 Fix image support on MAC. From YAMAMOTO Mitsuharu.
9380
9381 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
9382 (image_background, image_background_transparent): Fix prototypes.
9383
9384 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
9385
9386 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
9387 (x_query_font, x_find_ccl_program, x_set_window_size)
9388 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9389 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9390 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
9391
9392 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
9393 (x_query_font, x_find_ccl_program, x_set_window_size)
9394 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9395 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9396 (mac_draw_line_to_pixmap): Add prototypes.
9397
9398 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9399
9400 * macterm.c (XTread_socket): Fix mouse click on tool bar.
9401
9402 2004-03-11 Kim F. Storm <storm@cua.dk>
9403
9404 * dispextern.h: Move image related prototypes from xfns.c section
9405 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
9406 HAVE_X_WINDOWS.
9407
9408 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
9409 Move gtkutil.o to new GTK_OBJ list.
9410 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
9411 (GTK_OBJ) [USE_GTK]: New declaration.
9412 (obj): Add $(GTK_OBJ) to list.
9413
9414 2004-03-11 Steven Tamm <steventamm@mac.com>
9415
9416 * image.c [MAC_OSX]: Include sys/stat.h.
9417
9418 * macfns.c (syms_of_macfns): Remove definitions of things now
9419 defined in image.c.
9420
9421 2004-03-11 Kim F. Storm <storm@cua.dk>
9422
9423 The following changes consolidates the identical/similar image
9424 support code previously found in xfns.c, w32fns.c, and macfns.c
9425 into a new file image.c.
9426
9427 * makefile.w32-in (OBJ1): Add image.o.
9428 ($(BLD)/image.$(O)): Add dependencies.
9429
9430 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
9431 (image.o): Add dependencies.
9432
9433 * image.c: New file with consolidated image support code.
9434 (COLOR_TABLE_SUPPORT): New define to control whether
9435 color table support is available (X only).
9436 (Bitmap_Record): Common name for x_bitmap_record,
9437 w32_bitmap_record, and mac_bitmap_record.
9438 (XImagePtr): Common name for pointer to XImage or equivalent.
9439 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
9440 to XImagePtr on X+MAC, and to HDC on W32.
9441 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
9442 (NO_PIXMAP): Common name for "None" or equivalent.
9443 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
9444 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
9445 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
9446 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
9447 Define with suitable equivalents on W32 and MAC for code sharing.
9448 (XDrawLine): Define on MAC for code sharing.
9449 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
9450 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
9451 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9452 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9453 (x_reference_bitmap, x_create_bitmap_from_data)
9454 (x_create_bitmap_from_file, x_destroy_bitmap)
9455 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9456 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9457 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9458 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9459 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9460 (define_image_type, lookup_image_type, valid_image_p)
9461 (image_error, enum image_value_type, struct image_keyword)
9462 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9463 (make_image, free_image, prepare_image_for_display, image_ascent)
9464 (four_corners_best, image_background, image_background_transparent)
9465 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9466 (make_image_cache, free_image_cache, clear_image_cache)
9467 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9468 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9469 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9470 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9471 (init_image_func_pointer, image_load_quartz2d)
9472 (struct ct_color, init_color_table, free_color_table)
9473 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9474 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9475 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9476 (x_disable_image, x_build_heuristic_mask)
9477 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9478 (TIFF support, GIF support, Ghostscript support): Consolidate image
9479 code from xfns.c, w32fns.c, and macfns.c.
9480 (syms_of_image): Consolidate image related symbol setup here.
9481 (init_image): Consolidate image related initializations here.
9482
9483 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
9484 and init_image. Remove call to init_xfns.
9485
9486 * macterm.h (struct mac_bitmap_record): Add file member.
9487 Not currently used, but simplifies code sharing.
9488
9489 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9490 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9491 (x_reference_bitmap, x_create_bitmap_from_data)
9492 (x_create_bitmap_from_file, x_destroy_bitmap)
9493 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9494 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9495 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9496 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9497 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9498 (define_image_type, lookup_image_type, valid_image_p)
9499 (image_error, enum image_value_type, struct image_keyword)
9500 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9501 (make_image, free_image, prepare_image_for_display, image_ascent)
9502 (four_corners_best, image_background, image_background_transparent)
9503 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9504 (make_image_cache, free_image_cache, clear_image_cache)
9505 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9506 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9507 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9508 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9509 (init_image_func_pointer, image_load_quartz2d)
9510 (struct ct_color, init_color_table, free_color_table)
9511 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9512 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9513 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9514 (x_disable_image, x_build_heuristic_mask)
9515 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9516 (TIFF support, GIF support, Ghostscript support): Merge with image
9517 code from xfns.c and macfns.c into image.c.
9518 (syms_of_xfns): Move image related symbols to image.c.
9519 (init_external_image_libraries, init_xfns): Remove; initialization
9520 moved to init_image in image.c.
9521
9522 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9523 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9524 (x_reference_bitmap, x_create_bitmap_from_data)
9525 (x_create_bitmap_from_file, x_destroy_bitmap)
9526 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9527 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9528 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9529 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9530 (define_image_type, lookup_image_type, valid_image_p)
9531 (image_error, enum image_value_type, struct image_keyword)
9532 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9533 (make_image, free_image, prepare_image_for_display, image_ascent)
9534 (four_corners_best, image_background, image_background_transparent)
9535 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9536 (make_image_cache, free_image_cache, clear_image_cache)
9537 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9538 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9539 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9540 (struct ct_color, init_color_table, free_color_table)
9541 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9542 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9543 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9544 (x_disable_image, x_build_heuristic_mask)
9545 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9546 (TIFF support, GIF support, Ghostscript support): Merge with image
9547 code from xfns.c and macfns.c into image.c.
9548 (syms_of_xfns): Move image related symbols to image.c.
9549 (init_external_image_libraries, init_xfns): Remove; initialization
9550 moved to init_image in image.c.
9551
9552 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9553 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9554 (x_reference_bitmap, x_create_bitmap_from_data)
9555 (x_create_bitmap_from_file, x_destroy_bitmap)
9556 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9557 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9558 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9559 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9560 (define_image_type, lookup_image_type, valid_image_p)
9561 (image_error, enum image_value_type, struct image_keyword)
9562 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9563 (make_image, free_image, prepare_image_for_display, image_ascent)
9564 (four_corners_best, image_background, image_background_transparent)
9565 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9566 (make_image_cache, free_image_cache, clear_image_cache)
9567 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9568 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9569 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9570 (struct ct_color, init_color_table, free_color_table)
9571 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9572 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9573 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9574 (x_disable_image, x_build_heuristic_mask)
9575 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9576 (TIFF support, GIF support, Ghostscript support): Merge with
9577 w32fns.c and macfns.c image code into image.c.
9578 (syms_of_xfns): Move image related symbols to image.c.
9579 (init_xfns): Remove; initialization moved to init_image in image.c.
9580
9581 * lisp.h (syms_of_image, init_image): Add protoypes.
9582 (init_xfns): Remove prototype.
9583
9584 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9585 (x_reference_bitmap, x_create_bitmap_from_data)
9586 (x_create_bitmap_from_file, x_destroy_bitmap)
9587 (x_create_bitmap_mask): Move prototypes from dispextern.h.
9588 (gamma_correct) [MAC_OS]: Add prototype.
9589
9590 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9591 (x_reference_bitmap, x_create_bitmap_from_data)
9592 (x_create_bitmap_from_file, x_destroy_bitmap)
9593 (x_create_bitmap_mask): Move prototypes to dispextern.h.
9594
9595 2004-03-09 Kenichi Handa <handa@etlken2>
9596
9597 * coding.c (decode_coding_emacs_mule): Handle insufficent source
9598 correctly.
9599
9600 2004-03-04 Richard M. Stallman <rms@gnu.org>
9601
9602 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
9603
9604 * window.c (Fdisplay_buffer): Doc fix.
9605
9606 * buffer.c (Fpop_to_buffer): Doc fix.
9607
9608 2004-03-03 Kim F. Storm <storm@cua.dk>
9609
9610 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
9611
9612 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
9613
9614 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
9615
9616 2004-03-02 Richard M. Stallman <rms@gnu.org>
9617
9618 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
9619
9620 2004-03-02 Kenichi Handa <handa@m17n.org>
9621
9622 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
9623
9624 2004-03-02 Kim F. Storm <storm@cua.dk>
9625
9626 * window.h (struct window): New member overlay_arrow_bitmap.
9627
9628 * window.c (make_window): Initialize overlay_arrow_bitmap.
9629
9630 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
9631 implement and integrate multiple overlay arrows with redisplay.
9632 (syms_of_xdisp): DEFVAR_LISP and initialize it.
9633 (last_arrow_position, last_arrow_string): Replace by properties.
9634 (Qlast_arrow_position, Qlast_arrow_string)
9635 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
9636 (syms_of_xdisp): Intern and staticpro them.
9637 (overlay_arrow_string_or_property, update_overlay_arrows)
9638 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
9639 (overlay_arrow_at_row): New functions for multiple overlay arrows.
9640 (redisplay_internal): Use them instead of directly accessing
9641 Voverlay_arrow_position etc. for multiple overlay arrows.
9642 (mark_window_display_accurate): Use update_overlay_arrows.
9643 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
9644 (try_window_id): Use overlay_arrows_changed_p.
9645 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
9646 (display_line): Use overlay_arrow_at_row to check multiple
9647 overlay arrows, and get relevant overlay-arrow-string and
9648 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
9649 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
9650 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
9651
9652 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
9653 (update_window_fringes): Remove unused code.
9654
9655 2004-03-01 Jason Rumney <jasonr@gnu.org>
9656
9657 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
9658
9659 2004-03-01 Juanma Barranquero <lektu@terra.es>
9660
9661 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
9662
9663 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
9664
9665 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9666
9667 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
9668 how many colors can be displayed.
9669
9670 2004-03-01 Kenichi Handa <handa@m17n.org>
9671
9672 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
9673 correctly.
9674
9675 2004-02-28 Kim F. Storm <storm@cua.dk>
9676
9677 * dispnew.c (update_window): Update header line also if there are
9678 no other changes in window (move code after set_cursor label).
9679
9680 * lisp.h (mark_window_display_accurate): Remove prototype.
9681
9682 * window.c (window_loop, Fforce_window_update): Force mode line
9683 updates by setting prevent_redisplay_optimizations_p and
9684 update_mode_lines.
9685
9686 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9687
9688 * xfns.c (x_window): Fix indentation.
9689
9690 * xterm.c (x_calc_absolute_position): Call x_real_positions
9691 to get WM window sizes and use those to calculate position.
9692 (x_set_offset): Remove code commented out.
9693
9694 2004-02-28 Miles Bader <miles@gnu.org>
9695
9696 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
9697
9698 2004-02-28 Kim F. Storm <storm@cua.dk>
9699
9700 * keyboard.c (kbd_buffer_store_event_hold): New function to store
9701 an event into kbd fifo, but with special handling of quit event;
9702 a quit event is saved for later, and further events are discarded
9703 until the saved quit event has been processed.
9704 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
9705 (gen_help_event): Store help event in kbd fifo.
9706 (NREAD_INPUT_EVENTS): Remove.
9707 (read_avail_input): Adapt to new read_socket_hook interface.
9708 Remove allocation and initialization of local input_event buffer,
9709 as read_socket_hook stores events directly in fifo. Allocate and
9710 initialize local hold_quit event to handle postponed quit event
9711 (and store it if set by kbd_buffer_store_event_hold).
9712
9713 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
9714 (gen_help_event): Fix prototype.
9715
9716 * macterm.c (XTread_socket): Remove bufp_r and
9717 numcharsp args. Add hold_quit arg.
9718 Rework to use just one, local, inev input_event. Store inev
9719 directly in fifo using kbd_buffer_store_event_hold.
9720
9721 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
9722 (read_input_waiting): Adapt to new read_socket_hook interface.
9723 Remove allocation and initialization of local input_event buffer,
9724 as read_socket_hook stores events directly in fifo. Allocate and
9725 initialize local hold_quit event to handle postponed quit event
9726 (and store it if set by kbd_buffer_store_event_hold).
9727
9728 * term.c (read_socket_hook): Fix arg list.
9729
9730 * termhooks.h (read_socket_hook): Fix prototype.
9731
9732 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
9733 numcharsp args. Add hold_quit arg.
9734 Rework to use just one, local, inev input_event. Store inev
9735 directly in fifo using kbd_buffer_store_event_hold.
9736
9737 * w32inevt.h (w32_console_mouse_position): Fix prototype.
9738
9739 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
9740 Add hold_quit arg. Rework to use just one, local, inev
9741 input_event. Store inev directly in fifo using
9742 kbd_buffer_store_event_hold. Update count in one place.
9743 Postpone call to gen_help_event until inev is stored; use new
9744 local do_help for this.
9745 Remove local emacs_event in handing of ButtonPress event; just use
9746 inev instead (so no reason to copy it later).
9747
9748 * xsmfns.c (x_session_check_input): Remove numchars arg.
9749
9750 * xterm.c (x_focus_changed, x_detect_focus_change):
9751 Remove numchars arg. Always store event into bufp arg.
9752 Return nothing. Callers changed accordingly.
9753 (glyph_rect): Simplify.
9754 (STORE_KEYSYM_FOR_DEBUG): New macro.
9755 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
9756 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
9757 (current_hold_quit) [USE_GTK]: Add.
9758 (event_handler_gdk): Adapt to new handle_one_xevent.
9759 (handle_one_xevent): Remove bufp_r and numcharsp args.
9760 Add hold_quit arg. Rework to use just one, local, inev
9761 input_event. Store inev directly in fifo using
9762 kbd_buffer_store_event_hold. Update count in one place.
9763 Postpone call to gen_help_event until inev is stored; use new
9764 local do_help for this.
9765 Simplify handling of keysyms (consolidate common code). Fix bug
9766 where count was updated with nchars instead of nbytes.
9767 Remove local emacs_event in handing of ButtonPress event; just use
9768 inev instead (so no reason to copy it later).
9769 Remove `out' label. Rename label `ret' to `done'; add various
9770 `goto done' to clarify code flow in deeply nested blocks.
9771 (x_dispatch_event): Simplify as handle_one_xevent now calls
9772 kbd_buffer_store_event itself.
9773 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9774 arg. Call handle_one_xevent with new arglist. Store event from
9775 x_session_check_input in fifo.
9776 [USE_GTK]: Setup current_hold_quit.
9777 Decrement handling_signal before unblocking input.
9778 (x_initialize) [USE_GTK]: Initialize current_count.
9779
9780 * xterm.h (x_session_check_input): Fix prototype.
9781
9782 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9783
9784 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9785
9786 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9787 macgui.h).
9788
9789 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9790
9791 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9792 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9793 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9794 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9795 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9796 (Bitmap): Remove typedef.
9797 (Pixmap): Change int to GWorldPtr.
9798
9799 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9800
9801 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9802 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9803 New #define to extract 16-bit depth color components from unsigned
9804 long representation.
9805 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9806 colors used for masks.
9807 (struct mac_display_info): Add color_p. Remove n_cbits.
9808
9809 * macfns.c: Include sys/types.h and sys/stat.h.
9810 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9811 Include QuickTime/QuickTime.h.
9812 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9813 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9814 functions defined in macterm.c.
9815 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9816 (ZPixmap): New #define for compatibility with xfns.c.
9817 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9818 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9819 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9820 New functions.
9821 (four_corners_best, x_create_x_image_and_pixmap)
9822 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9823 (x_edge_detection, init_color_table, colors_in_color_table)
9824 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9825 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9826 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9827 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9828 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9829 long mixup.
9830 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9831 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9832 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9833 (x_set_cursor_type, Fxw_color_values, valid_image_p)
9834 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
9835 (x_alloc_image_color, clear_image_cache, lookup_image)
9836 (x_find_image_file, xbm_read_bitmap_file_data)
9837 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
9838 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
9839 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
9840 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
9841 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
9842 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
9843 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
9844 #if 0.
9845 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
9846 #if 0. Free white_relief.gc and black_relief.gc.
9847 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
9848 New functions (from xfns.c).
9849 (Fx_create_frame): Record unwind_create_frame.
9850 (Fxw_display_color_p): Use dpyinfo->color_p.
9851 (Fx_display_grayscale_p, Fx_display_planes): Don't use
9852 dpyinfo->n_cbits.
9853 (Fx_display_color_cells): Use dpyinfo->n_planes;
9854 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
9855 (Qheuristic, cross_disabled_images, emboss_matrix)
9856 (laplace_matrix): New variables (from xfns.c).
9857 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
9858 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
9859 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
9860 (image_background_transparent): New function (from xfns.c).
9861 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9862 (image_load_quicktime): Add declaration.
9863 [MAC_OSX] (image_load_quartz2d): Likewise.
9864 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
9865 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
9866 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
9867 (xbm_load_image_from_file, x_laplace_read_row)
9868 (x_laplace_write_row, pbm_read_file): Remove functions.
9869 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
9870 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
9871 (colors_in_color_table): Sync with xfns.c (although not used).
9872 (lookup_rgb_color): Don't lookup color table. Just do gamma
9873 correction.
9874 (COLOR_INTENSITY): New #define (from xfns.c).
9875 (x_disable_image): New function (from xfns.c).
9876 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9877 (x_build_heuristic_mask): Sync with xfns.c.
9878 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9879 (HAVE_PBM): Remove #ifdef.
9880 (pbm_load): Sync with xfns.c. Set img->width and img->height
9881 before IMAGE_BACKGROUND.
9882 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
9883 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
9884 Don't enclose with #if HAVE_PNG.
9885 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
9886 symbol _CGImageCreateWithPNGDataProvider is defined.
9887 Otherwise use image_load_quicktime.
9888 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
9889 [HAVE_PNG] (png_load): Sync with xfns.c.
9890 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9891 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
9892 HAVE_JPEG.
9893 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
9894 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
9895 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
9896 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
9897 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
9898 (tiff_image_p, tiff_load): Don't enclose declarations with #if
9899 HAVE_TIFF.
9900 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
9901 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
9902 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
9903 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
9904 New functions (from xfns.c).
9905 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
9906 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
9907 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
9908 Don't enclose with #if HAVE_GIF.
9909 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
9910 animated gif. Otherwise use image_load_quicktime.
9911 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
9912 gif_DrawText to avoid conflict with QuickdrawText.h.
9913 [HAVE_GIF] (gif_load): Sync with xfns.c.
9914 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
9915 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
9916 Ghostscript is not supported yet).
9917 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
9918 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
9919 cross_disabled_images (from xfns.c). Remove #if 0 for supported
9920 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9921 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
9922 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9923 HAVE_PNG. Call EnterMovies to support animated gifs.
9924 Call init_image_func_pointer to bind a symbol
9925 _CGImageCreateWithPNGDataProvider if it is defined.
9926
9927 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9928 (x_draw_bar_cursor): Sync declaration with xterm.c.
9929 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
9930 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
9931 graphics).
9932 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
9933 (mac_draw_line_to_pixmap, XCreatePixmap)
9934 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
9935 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
9936 New functions.
9937 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
9938 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9939 Cast bits to char *.
9940 (reflect_byte): New function (from w32fns.c).
9941 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
9942 due to byte alignment.
9943 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
9944 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9945 (XSetForeground): Remove static (now used in macfns.c).
9946 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
9947 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
9948 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
9949 (x_draw_glyph_string_box, x_draw_image_foreground)
9950 (x_draw_image_foreground_1, x_draw_image_glyph_string)
9951 (x_draw_stretch_glyph_string, x_draw_glyph_string)
9952 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
9953 Sync with xterm.c.
9954 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
9955 than the xterm.c version when a strictly horizontal or vertical
9956 line is drawn.
9957 (XTset_terminal_window): Add static.
9958 (x_make_frame_visible): Add UNBLOCK_INPUT.
9959 (x_free_frame_resources): New funcion (from xterm.c).
9960 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
9961 occurs in tool bar area.
9962 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
9963 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
9964 Initialize image cache.
9965 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
9966 Enclose unused functions with #if 0.
9967 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
9968 (decode_mac_font_name): New function to apply code conversions
9969 from a mac font name to an XLFD font name according to its script code.
9970 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
9971 font name to a mac font name according to REGISTRY and ENCODING fields.
9972 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
9973 whose name starts with `.'.
9974 (init_font_name_table): Use decode_mac_font_name. Add both
9975 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
9976 of a font is smJapanese.
9977 (mac_do_list_fonts): New function to list fonts that match a given
9978 pattern.
9979 (x_list_fonts, XLoadQueryFont): Use it.
9980 (XLoadQueryFont): Set rbearing field for each variable width
9981 character to avoid needless redraw.
9982 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
9983
9984 2004-02-26 Kim F. Storm <storm@cua.dk>
9985
9986 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
9987 as read_socket_hook handler on X aborts if buffer is too small
9988 and W32 handler doesn't always check buffer limit.
9989
9990 * xdisp.c (handle_single_display_prop): Handle left-fringe and
9991 right-fringe similar to a display margin image. Specifically,
9992 the characters having the fringe prop are no longer shown, and
9993 we use IT_IMAGE/next_element_from_image with image_id = -1 to
9994 do this. Set fringe bitmap face_id in it->face_id.
9995 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
9996 still realize it->face (i.e. the fringe bitmap face).
9997
9998 2004-02-25 Miles Bader <miles@gnu.org>
9999
10000 * xdisp.c (check_it): Check string/string_pos consistency.
10001 (init_iterator): Initialize string-related fields properly.
10002
10003 2004-02-11 Miles Bader <miles@gnu.org>
10004
10005 * xdisp.c (produce_image_glyph): Force negative descents to zero.
10006
10007 2004-02-10 Miles Bader <miles@gnu.org>
10008
10009 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
10010 BLOCK_INPUT can be nested, so it doesn't make much sense.
10011
10012 2004-02-24 Michael Mauger <mmaug@yahoo.com>
10013
10014 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
10015 (xbm_read_bitmap_data): Use unsigned char for image data.
10016
10017 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
10018
10019 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
10020
10021 2004-02-22 Jason Rumney <jasonr@gnu.org>
10022
10023 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
10024 correctly over other bitmaps.
10025
10026 2004-02-21 Eli Zaretskii <eliz@gnu.org>
10027
10028 * emacs.c (USAGE1): Split into two halves.
10029 (USAGE2): Second half of the old USAGE1.
10030 (USAGE3): Rename from USAGE2.
10031 (USAGE4): Rename from USAGE3.
10032
10033 2004-02-21 Juri Linkov <juri@jurta.org>
10034
10035 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
10036 Fix --multibyte. Move --help, --version to USAGE2. Add alias
10037 --file. Fix -f, -l. Sort options. Untabify.
10038 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
10039
10040 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
10041
10042 * category.c (Fdefine_category, Fcategory_docstring)
10043 (Fget_unused_category, Fset_category_table)
10044 (Fcategory_set_mnemonics): Doc fixes.
10045
10046 2004-02-20 Kim F. Storm <storm@cua.dk>
10047
10048 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
10049 The following changes are relative to the 2004-01-21 revision.
10050 (NREAD_INPUT_EVENTS): Define as max number of input events to read
10051 in one call to read_socket_hook. Value is 8.
10052 (read_avail_input): Separate and rework handling of read_socket_hook
10053 and non-read_socket_hook cases. Use smaller input_event buffer
10054 in read_socket_hook case, and repeat if full buffer is read.
10055 Use new local variable 'discard' to skip input after C-g.
10056 In non-read_socket_hook case, just use a single input_event, and
10057 call kbd_buffer_store_event on the fly for each character.
10058
10059 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10060
10061 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
10062 Remove unused `gu' alternative.
10063
10064 2004-02-19 Andreas Schwab <schwab@suse.de>
10065
10066 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
10067 warning.
10068
10069 2004-02-18 Kim F. Storm <storm@cua.dk>
10070
10071 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
10072 Fix last change.
10073
10074 2004-02-17 Kim F. Storm <storm@cua.dk>
10075
10076 * xdisp.c (fast_find_position): Fix return value of new version;
10077 it was inverted compared to the 21.1 version.
10078 (get_window_cursor_type): Don't look at glyph if NULL.
10079 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
10080
10081 * keyboard.c: Rework previous change; it didn't consider that the
10082 buf array was allocated on the stack.
10083 (prev_read): Remove variable.
10084 (read_avail_input_buf): New static event buffer array.
10085 (in_read_avail_input): New static variable to handle re-entrancy.
10086 (read_avail_input): Change buf to pinter to read_avail_input_buf.
10087 Use in_read_avail_input to handle re-entrance; when re-entered,
10088 fully initialize and use tmp_buf array instead of read_avail_input_buf.
10089 Do not initialize read_avail_input_buf in full here; instead assume it
10090 is always cleared on entry. To ensure that, we clear (just) the
10091 entries that were used before we return.
10092 (init_keyboard): Initialize read_avail_input_buf here.
10093
10094 2004-02-16 Jesper Harder <harder@ifa.au.dk>
10095
10096 * cmds.c (Fend_of_line): Doc fix.
10097
10098 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
10099
10100 * keyboard.c (prev_read): New static variable.
10101 (read_avail_input): Use it to zero out only those slots in buf[]
10102 that were used last time we were called.
10103
10104 2004-02-16 Eli Zaretskii <eliz@gnu.org>
10105
10106 * Makefile.in (obj): Move fringe.o from here...
10107 (XOBJ, MAC_OBJ): ...to here.
10108
10109 2004-02-16 Stephen Eglen <stephen@gnu.org>
10110
10111 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
10112
10113 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
10114
10115 * data.c (Fbyteorder):
10116 * fringe.c (Fdefine_fringe_bitmap):
10117 * xdisp.c (handle_single_display_prop):
10118 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
10119
10120 2004-02-16 Jason Rumney <jasonr@gnu.org>
10121
10122 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
10123
10124 2004-02-15 Steven Tamm <steventamm@mac.com>
10125
10126 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
10127 controlling emulation of a three button mouse with option and
10128 command keys.
10129 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
10130 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
10131
10132 2004-02-15 Kim F. Storm <storm@cua.dk>
10133
10134 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
10135
10136 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
10137 Perform byte-swapping.
10138
10139 2004-02-14 Kim F. Storm <storm@cua.dk>
10140
10141 * dispextern.h (struct draw_fringe_bitmap_params): Change member
10142 bits from char to short to facilitate wider bitmaps.
10143 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
10144 member.
10145
10146 * fringe.c (struct fringe_bitmap): Change member bits from char to
10147 short to facilitate 16 bits wide bitmaps. Modify all standard
10148 bitmaps accordingly.
10149 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
10150 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
10151 (draw_fringe_bitmap): Ditto.
10152 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
10153 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
10154 handle up to 16 bits wide bitmaps.
10155 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
10156 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
10157
10158 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
10159 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
10160 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
10161
10162 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
10163 so it is no longer necessary to expand them here.
10164
10165 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
10166
10167 2004-02-12 Kim F. Storm <storm@cua.dk>
10168
10169 * window.c (Fwindow_fringes): Doc fix.
10170
10171 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10172
10173 * xselect.c (x_get_foreign_selection): Add new optional parameter
10174 time_stamp.
10175 (Fx_get_selection_internal): Ditto, pass time_stamp to
10176 x_get_foreign_selection.
10177
10178 * data.c (Fbyteorder): New function.
10179
10180 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10181
10182 * atimer.c: Move include stdio.h to same place as in other files.
10183
10184 * region-cache.c: Ditto.
10185
10186 * sysdep.c: Ditto.
10187
10188 * xfaces.c: Ditto.
10189
10190 2004-02-09 Sam Steingold <sds@gnu.org>
10191
10192 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
10193
10194 2004-02-09 Kim F. Storm <storm@cua.dk>
10195
10196 * fringe.c: New file. Move original fringe related declarations
10197 and code from dispextern.h and xdisp.c here.
10198 Rework code to support user defined fringe bitmaps, redefining
10199 standard bitmaps, ability to overlay user defined bitmap with
10200 overlay arrow bitmap, and add faces to bitmaps.
10201 (Voverflow_newline_into_fringe): Declare here.
10202 (enum fringe_bitmap_align): New enum.
10203 (..._bits): All bitmaps are now defined without bitswapping; that
10204 is now done in init_fringe_once (if necessary).
10205 (standard_bitmaps): New array with specifications for the
10206 standard fringe bitmaps.
10207 (fringe_faces): New array.
10208 (valid_fringe_bitmap_id_p): New function.
10209 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
10210 (draw_fringe_bitmap): New function which draws fringe bitmap,
10211 possibly overlaying bitmap with cursor in right fringe or the
10212 overlay arrow in the left fringe.
10213 (update_window_fringes): Do not handle overlay arrow here.
10214 Compare and copy fringe bitmap faces.
10215 (init_fringe_bitmap): New function.
10216 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
10217 define and destroy user defined fringe bitmaps.
10218 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
10219 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
10220 (syms_of_fringe): New function. Defsubr new DEFUNs.
10221 DEFVAR_LISP Voverflow_newline_into_fringe.
10222 (init_fringe_once, init_fringe): New functions.
10223 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
10224
10225 * Makefile.in (obj): Add fringe.o.
10226 (fringe.o): New dependencies.
10227
10228 * dispextern.h (FRINGE_ID_BITS): New definition for number of
10229 bits allocated to hold a fringe number. Increase number of bits
10230 from 4 to 8 to allow user defined fringe bitmaps.
10231 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
10232 left_user_fringe_face_id, right_user_fringe_bitmap,
10233 right_user_fringe_face_id.
10234 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
10235 Move to new file fringe.c.
10236 (MAX_FRINGE_BITMAPS): Define here.
10237 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
10238 and overlay_p. Change member which to int.
10239 (struct redisplay_interface): New members define_fringe_bitmap
10240 and destroy_fringe_bitmap.
10241 (valid_fringe_bitmap_id_p): Add prototype.
10242 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
10243
10244 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
10245 arrows.
10246 (update_frame): Do flush_display if force_flush_display_p to
10247 ensure display (specifically fringes) are updated in a timely
10248 manner when resizing the frame by dragging the mouse.
10249 (update_window_line): Update row if overlay arrow changed.
10250 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
10251 or overlay arrow changed.
10252
10253 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
10254 syms_of_fringe, and init_fringe.
10255
10256 * frame.h (struct frame): New member force_flush_display_p.
10257
10258 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
10259 Add prototypes.
10260
10261 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
10262 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
10263 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
10264 Use cursor color for displaying cursor in fringe.
10265 (x_redisplay_interface): Add null handlers for
10266 define_fringe_bitmap and destroy_fringe_bitmap functions.
10267
10268 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
10269 xterm.c to handle overlayed fringe bitmaps and to use cursor color
10270 for displaying cursor in fringe.
10271 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
10272 specific functions to define and destroy fringe bitmaps in fringe_bmp.
10273 (w32_redisplay_interface): Add them to redisplay_interface.
10274 (w32_term_init): Call w32_init_fringe instead of explicitly
10275 defining fringe bitmaps in fringe_bmp array.
10276 (x_delete_display): Call w32_reset_fringes instead of explicitly
10277 destroying fringe bitmaps in fringe_bmp array.
10278
10279 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
10280 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
10281 (continued_bits, continuation_bits, ov_bits, first_line_bits)
10282 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
10283 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
10284 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
10285 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
10286 Move fringe handling vars and code to new file fringe.c.
10287 (handle_display_prop): Handle left-fringe and right-fringe
10288 display properties; store user fringe bitmaps in iterator.
10289 (move_it_in_display_line_to): Handle cursor in fringe at eob.
10290 (clear_garbaged_frames): Set force_flush_display_p if resized.
10291 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
10292 (display_line): Handle cursor in fringe at eob.
10293 (display_line): Set row user fringe bitmaps from iterator.
10294
10295 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
10296 Use cursor color for displaying cursor in fringe.
10297 (x_redisplay_interface): Add null handlers for
10298 define_fringe_bitmap and destroy_fringe_bitmap functions.
10299
10300 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10301
10302 * macfns.c (Fx_change_window_property): Make doc string and
10303 parameters same as for X version.
10304
10305 * w32fns.c (Fx_change_window_property): Ditto.
10306
10307 2004-02-07 Kim F. Storm <storm@cua.dk>
10308
10309 * xdisp.c (hscroll_window_tree): Position cursor near to right
10310 margin in hscrolled window when jumping to end of line (rather
10311 than centering cursor).
10312
10313 * process.c (wait_reading_process_input): Don't do adaptive read
10314 buffering if waiting for a specific process.
10315
10316 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
10317
10318 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
10319 (Fread_minibuffer, Feval_minibuffer)
10320 (Fread_string, Fread_no_blanks_input)
10321 (Fcompleting_read): Doc fixes.
10322 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
10323 completion-regexp-list. Define Qcase_fold_search and staticpro it.
10324 (read_minibuf): Fix initial comment.
10325 (Ftry_completion, Fall_completions, Ftest_completion): Bind
10326 case-fold-search to the value of completion-ignore-case when
10327 checking completion-regexp-list.
10328 (Fdisplay_completion_list): Make it handle arguments that are
10329 symbols. Doc fix.
10330
10331 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10332
10333 * xterm.h: Add declaration of free_frame_menubar.
10334
10335 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
10336 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
10337 (Fx_change_window_property): Add declaration of parameters type and
10338 format. Remove unused variable cons.
10339
10340 * xselect.c: Include stdio.h.
10341
10342 2004-02-05 Kenichi Handa <handa@m17n.org>
10343
10344 * fns.c (Fset_char_table_range): Fix previous change.
10345
10346 * buffer.c (Fset_buffer_multibyte): Fix docstring.
10347
10348 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
10349
10350 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
10351
10352 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
10353
10354 * keymap.c (Vmouse_events): Rename from Vmenu_events.
10355 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
10356
10357 2004-02-04 Kenichi Handa <handa@m17n.org>
10358
10359 * fns.c (Fset_char_table_range): Handle charsets ascii,
10360 eight-bit-control, and eight-bit-graphic correctly.
10361
10362 2004-02-03 Jason Rumney <jasonr@gnu.org>
10363
10364 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
10365
10366 * w32fns.c (x_to_w32_font): Likewise.
10367
10368 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10369
10370 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
10371 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
10372
10373 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
10374 ClientMessages.
10375
10376 * xselect.c: Include termhooks.h and X11/Xproto.h
10377 (x_check_property_data, x_fill_property_data)
10378 (x_property_data_to_lisp, mouse_position_for_drop)
10379 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
10380 (Fx_send_client_event): Move here from xfns.c.
10381 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
10382
10383 * xfns.c (x-send-client-message): Move to xselect.c
10384 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
10385 OUTER_P.
10386 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
10387 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
10388 if vector_ret_p is true.
10389 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
10390
10391 2004-02-02 Eli Zaretskii <eliz@gnu.org>
10392
10393 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
10394 basename of FILE relative to it, not FILE itself.
10395
10396 2004-02-02 Kenichi Handa <handa@m17n.org>
10397
10398 * coding.c (coding_restore_composition): Check invalid
10399 composition data more rigidly.
10400
10401 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
10402
10403 * fileio.c (Fread_file_name_internal): Correctly handle the case
10404 where insert-default-directory is nil.
10405 (Fread_file_name): Always return an empty string if the user exits
10406 with an empty minibuffer. Adapt the docstring accordingly.
10407 (syms_of_fileio): Adapt the docstring of insert-default-directory
10408 to the change in Fread_file_name.
10409
10410 2004-01-29 Eli Zaretskii <eliz@gnu.org>
10411
10412 * alloca.c [!alloca]: Fix the prototype for xfree.
10413
10414 2004-01-29 Kenichi Handa <handa@m17n.org>
10415
10416 * fns.c (string_char_to_byte): Optimize for ASCII only string.
10417 (string_byte_to_char): Likewise.
10418
10419 2004-01-28 Peter Runestig <peter@runestig.com>
10420
10421 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
10422
10423 2004-01-27 Steven Tamm <steventamm@mac.com>
10424
10425 * unexmacosx.c (unexec_copy): Do not copy more than was
10426 requested to prevent overwriting during unexec.
10427
10428 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10429
10430 * process.c (sigchld_handler): Add comment about not calling malloc.
10431
10432 * process.h: Add extern to synch_process_termsig.
10433
10434 2004-01-27 Steven Tamm <steventamm@mac.com>
10435
10436 * macterm.c (make_mac_frame, make_mac_terminal_frame):
10437 Move setting of scroll bars from make_mac_frame to
10438 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
10439
10440 2004-01-26 Richard M. Stallman <rms@gnu.org>
10441
10442 * search.c (Freplace_match): Handle nonexistent
10443 back-references properly.
10444
10445 2004-01-03 Richard M. Stallman <rms@gnu.org>
10446
10447 * window.c (decode_any_window): New function.
10448 (Fwindow_height, Fwindow_width, Fwindow_edges)
10449 (Fwindow_pixel_edges, Fwindow_inside_edges)
10450 (Fwindow_inside_pixel_edges): Use decode_any_window.
10451
10452 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10453
10454 * process.h: synch_process_termsig new variable.
10455
10456 * callproc.c: Define synch_process_termsig.
10457 (Fcall_process): Initiate synch_process_termsig to zero and
10458 check if non-zero and get signal name after subprocess has ended.
10459
10460 * process.c (sigchld_handler): Set synch_process_termsig
10461 if terminated by a signal. synch_process_death setting removed.
10462
10463 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
10464
10465 2004-01-26 Andreas Schwab <schwab@suse.de>
10466
10467 * print.c (print_preprocess): Declare size as EMACS_INT to not
10468 lose bits.
10469 (print_object): Likewise.
10470 * alloc.c (Fpurecopy): Likewise.
10471
10472 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
10473
10474 * window.c (Fwindow_minibuffer_p): Doc fix.
10475
10476 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
10477
10478 * editfns.c (Fformat): Make both passes accept the same set of flags.
10479
10480 2004-01-23 Kenichi Handa <handa@m17n.org>
10481
10482 * fns.c (Fmd5): If OBJECT is a buffer different from the current
10483 one, set buffer to OBJECT temporarily.
10484
10485 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10486
10487 * keyboard.c (kbd_buffer_gcpro): Remove.
10488 (kbd_buffer_store_event, clear_event, Fdiscard_input)
10489 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
10490 Don't initialize and/or maintain the variable any more. It was made
10491 redundant by my commit of 2003-06-15.
10492
10493 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
10494
10495 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10496
10497 * lisp.h: Add undef DECL_ALIGN.
10498
10499 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10500
10501 * process.c (wait_reading_process_input) [SYNC_INPUT]:
10502 Check interrupt_input_pending explicitly.
10503
10504 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
10505
10506 * keyboard.c (handle_async_input): New fun,
10507 extracted from input_available_signal.
10508 (input_available_signal, reinvoke_input_signal): Use it.
10509
10510 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
10511
10512 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
10513
10514 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
10515 manipulation macros for when tags are in the lower bits.
10516 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
10517 (DECL_ALIGN): New macro.
10518 (DEFUN): Use it.
10519
10520 * lisp.h [ENABLE_CHECKING]: Don't force union type.
10521
10522 * s/darwin.h (__attribute__): Remove outdated workaround.
10523
10524 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
10525
10526 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
10527 Don't check range of malloc address.
10528 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
10529
10530 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
10531
10532 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
10533
10534 2004-01-19 Kenichi Handa <handa@m17n.org>
10535
10536 * fontset.c (fontset_font_pattern): Fix previous change.
10537
10538 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
10539
10540 * xdisp.c (Voverflow_newline_into_fringe)
10541 (move_it_in_display_line_to, redisplay_internal)
10542 (update_window_fringes, redisplay_window, display_line, window):
10543 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
10544 that it compiles without a window-system.
10545 * dispnew.c (direct_output_for_insert, update_window): Likewise.
10546
10547 2004-01-16 Kim F. Storm <storm@cua.dk>
10548
10549 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
10550
10551 * buffer.c (init_buffer_once): Set buffer_defaults and
10552 buffer_local_flags for indicate_buffer_boundaries.
10553 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
10554 default- variable for it.
10555
10556 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
10557 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
10558 New members exact_window_width_line_p and cursor_in_fringe_p for
10559 overflowing newlines into right fringe.
10560 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
10561 and indicate_bottom_line_p for buffer boundaries and scrolling.
10562 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
10563 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
10564 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
10565 and HOLLOW_SQUARE_BITMAP.
10566 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
10567 Add prototypes.
10568
10569 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
10570 instead of related indicator fields.
10571 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
10572 (direct_output_for_insert): Handle exact width lines like
10573 contined lines. Call update_window_fringes.
10574 (update_window): Call update_window_fringes.
10575 (scrolling_window): Don't skip desired rows with changed bitmaps.
10576 Check if fringe bitmaps changes when assigning scrolled rows.
10577
10578 * xdisp.c (Voverflow_newline_into_fringe): New variable.
10579 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
10580 (move_it_in_display_line_to): Overflow newline into fringe for
10581 rows that are exactly as wide as the window.
10582 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
10583 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
10584 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
10585 (fringe_bitmaps): Add new bitmaps.
10586 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
10587 Select proper bitmap for cursor in fringe when appropriate.
10588 Handle alignment of bitmap to top or bottom of row.
10589 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
10590 done by update_window_fringes.
10591 (update_window_fringes, draw_window_fringes): New functions.
10592 (redisplay_internal): Call update_window_fringes in case only
10593 cursor row is updated.
10594 (redisplay_window): Call update_window_fringes.
10595 Explicitly call draw_window_fringes if redisplay was done using
10596 the current matrix or the overlay arrow is in the window.
10597 (try_window_reusing_current_matrix): Mark scrolled rows for
10598 fringe update (to update buffer-boundaries / scrolling icons).
10599 (find_last_unchanged_at_beg_row): Handle exact width lines line
10600 continued lines.
10601 (display_line): Overflow newline into fringe for rows that are
10602 exactly as wide as the window. Don't append space for newline
10603 in this case.
10604 (notice_overwritten_cursor): Explicitly clear cursor bitmap
10605 in fringe as if it had been overwritten.
10606 (erase_phys_cursor): Erase cursor bitmap in fringe.
10607 (syms_of_xdisp): Mark show-trailing-whitespace and
10608 void-text-area-pointer as user options.
10609 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
10610
10611 * xterm.c (x_update_window_end): Call draw_window_fringes.
10612 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10613 in row instead of actually drawing fringe bitmaps.
10614 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10615 (x_draw_window_cursor): Draw cursor in fringe.
10616
10617 * w32term.c (x_update_window_end): Call draw_window_fringes.
10618 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10619 in row instead of actually drawing fringe bitmaps.
10620 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10621 (w32_draw_window_cursor): Draw cursor in fringe.
10622
10623 * macterm.c (x_update_window_end): Call draw_window_fringes.
10624 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10625 in row instead of actually drawing fringe bitmaps.
10626 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10627 (mac_draw_window_cursor): Draw cursor in fringe.
10628
10629 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10630
10631 * xterm.c (handle_one_xevent): Don't handle characters that are part
10632 of an old style (XLookupString) compose sequence.
10633
10634 2004-01-15 Kenichi Handa <handa@m17n.org>
10635
10636 * search.c (Freplace_match): Use make_multibyte_string or
10637 make_unibyte_string according to the buffer multibyteness.
10638
10639 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
10640
10641 * alloc.c (struct interval_block, struct string_block)
10642 (struct symbol_block, struct marker_block, live_string_p)
10643 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
10644 Better preserve alignment for objects in blocks.
10645 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
10646
10647 * lread.c (defvar_per_buffer): Remove dead declaration.
10648
10649 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
10650 space size.
10651
10652 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10653
10654 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
10655 if a key press should pop down. Only pop down if a key is pressed
10656 outside the menu/dialog.
10657 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
10658 popup_get_selection.
10659 (create_and_show_dialog): Pass 1 for down_on_keypress to
10660 popup_get_selection.
10661
10662 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10663
10664 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
10665 BLOCK/UNBLOCK_INPUT.
10666
10667 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10668
10669 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
10670 specified.
10671
10672 2004-01-08 Kenichi Handa <handa@m17n.org>
10673
10674 * editfns.c (Fformat): Fix '&' to '&&'.
10675
10676 2004-01-08 Andreas Schwab <schwab@suse.de>
10677
10678 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
10679 size if PSEUDOVECTOR_FLAG is set.
10680
10681 2004-01-07 Kenichi Handa <handa@m17n.org>
10682
10683 * charset.c (Fdeclare_equiv_charset): Fix docstring.
10684
10685 * fontset.c (fontset_ref_via_base): Fix previous change.
10686
10687 2004-01-07 Kim F. Storm <storm@cua.dk>
10688
10689 * process.c (read_process_output): Only activate adaptive
10690 buffering if we read less than 256 bytes at a time.
10691
10692 2004-01-06 Kim F. Storm <storm@cua.dk>
10693
10694 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
10695 object and image object. Return glyph width and height.
10696 (mode_line_string, marginal_area_string): Ditto.
10697
10698 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10699 (marginal_area_string): Fix prototypes.
10700
10701 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
10702 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
10703 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
10704
10705 * keyboard.c (make_lispy_position): Use modified mode_line_string,
10706 buffer_posn_from_coords, and marginal_area_string functions to
10707 include both string object and image object in the lispy position.
10708 Also add actual glyph width and height to position.
10709 (read_key_sequence): Use real buffer position from mouse
10710 event to find keymap property even when click is in marginal area.
10711
10712 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
10713 mode_line_string and marginal_area_string functions to handle
10714 both string object and image object properties.
10715
10716 2004-01-06 Andreas Schwab <schwab@suse.de>
10717
10718 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
10719 character.
10720
10721 2004-01-02 Andreas Schwab <schwab@suse.de>
10722
10723 * macterm.c (emacs_options, x_initialized, same_x_server):
10724 Remove unused (and duplicated) definitions.
10725
10726 2004-01-02 Kim F. Storm <storm@cua.dk>
10727
10728 * process.h (struct Lisp_Process): New members for adaptive read
10729 buffering: adaptive_read_buffering, read_output_delay, and
10730 read_output_skip.
10731
10732 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
10733 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
10734 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
10735 (process_output_delay_count, process_output_skip): New vars.
10736 (Vprocess_adaptive_read_buffering): New variable.
10737 (make_process): Initialize adaptive read buffering members.
10738 (Fstart_process): Set adaptive_read_buffering member.
10739 (deactivate_process): Cleanup adaptive read buffering.
10740 (wait_reading_process_input): Temporarily omit delayed
10741 subprocesses from the set of file descriptors to read from;
10742 adjust the select timeout if we skipped any subprocesses.
10743 (read_process_output): Increase adaptive read buffering delay if
10744 we read less than a full buffer; reduce delay when we read a
10745 full buffer.
10746 (send_process): Simplify using local Lisp_Process var.
10747 Reset adaptive read buffering delay after write.
10748 (init_process): Initialize process_output_delay_count and
10749 process_output_skip.
10750 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
10751
10752 2004-01-01 Jason Rumney <jasonr@gnu.org>
10753
10754 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
10755
10756 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
10757
10758 * print.c (Ferror_message_string): Add hyperlink in the docstring
10759 to the definition of `signal' in the Elisp manual.
10760 * eval.c (Fsignal): Ditto.
10761
10762 2003-12-29 James Clark <jjc@jclark.com>
10763
10764 * fns.c (internal_equal): Return t for two NaN arguments.
10765
10766 2003-12-29 Richard M. Stallman <rms@gnu.org>
10767
10768 * data.c (store_symval_forwarding): Handle setting
10769 default-fill-column, etc., by changing the value in
10770 buffers that use the default.
10771
10772 * minibuf.c (Fset_minibuffer_window): Doc fix.
10773
10774 * fileio.c (choose_write_coding_system): Ignore auto_saving
10775 if using the visited file for auto saves.
10776 (Fwrite_region): Don't update SAVE_MODIFF
10777 if auto-saving in visited file.
10778
10779 2003-12-29 Kenichi Handa <handa@m17n.org>
10780
10781 * dispextern.h (face_font_available_p): Extern it.
10782
10783 * fontset.c (Voverriding_fontspec_alist): New variable.
10784 (lookup_overriding_fontspec): New function.
10785 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10786 (fontset_font_pattern): Likewise.
10787 (regulalize_fontname): New function.
10788 (Fset_fontset_font): Call regulalize_fontname.
10789 (Fset_overriding_fontspec_internal): New function.
10790 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10791 Defsubr Sset_overriding_fontspec_internal.
10792
10793 * xfaces.c (face_font_available_p): New function.
10794
10795 2003-12-28 Richard M. Stallman <rms@gnu.org>
10796
10797 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10798 or if its name is nil.
10799
10800 * buffer.c (Fkill_buffer): Don't delete auto-save file
10801 if it's the same as the visited file.
10802
10803 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10804
10805 * coding.c (Fcheck_coding_system): Doc fix.
10806
10807 2003-12-28 Kim F. Storm <storm@cua.dk>
10808
10809 * Makefile.in (eval.o): Depend on dispextern.h.
10810
10811 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10812 image glyph using image's ascent.
10813 (mode_line_string): Return image glyph as object clicked on.
10814 Adjust y0 for image glyph using image's ascent.
10815
10816 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10817 (struct glyph): New members, ascent and descent. Used to save
10818 this glyph's ascent and descent, instead of having.
10819 (struct glyph): Declare member face_id using FACE_ID_BITS.
10820 (find_hot_spot): Add prototype.
10821
10822 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10823 (QCmap): Declare extern.
10824 (make_lispy_position): When position is inside image hot-spot,
10825 use hot-spot element's id as posn element.
10826
10827 * lisp.h (IMAGEP): New macro to test for image object type.
10828 (Qimage): Declare extern.
10829
10830 * macfns.c (Qimage): Remove extern (now in lisp.h).
10831 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10832
10833 * macterm.c (Qface, Qmouse_face): Remove unused externs.
10834
10835 * w32fns.c (Qimage): Remove extern (now in lisp.h).
10836 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10837
10838 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
10839
10840 * w32term.c (Qface, Qmouse_face): Remove unused externs.
10841
10842 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
10843 pointer types.
10844 (Qrelative_width, Qalign_to): Remove unused variables.
10845 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
10846 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
10847 image maps.
10848 (x_y_to_hpos_vpos): Return glyph relative coordinates through
10849 new dx and dy args.
10850 Remove buffer_only_p arg (always 0). Simplify code accordingly.
10851 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
10852 than row's ascent and height, to get sensible height on tall rows.
10853 (build_desired_tool_bar_string): Remove Qimage extern.
10854 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
10855 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
10856 image glyph is alone on the last line.
10857 (append_glyph, append_composite_glyph, produce_image_glyph)
10858 (append_stretch_glyph): Set glyph's ascent and descent.
10859 (on_hot_spot_p): New function to check if position is inside an
10860 rectangular, circular, or polygon-shaped image hot-spot,
10861 (find_hot_spot): New function to search for image hot-spot.
10862 (Flookup_image_map): New defun to search for image hot-spot.
10863 (define_frame_cursor1): New aux function to determine frame pointer.
10864 (note_mode_line_or_margin_highlight, note_mouse_highlight):
10865 Handle `pointer' text property and :pointer image property to
10866 control frame pointer shape. Detect image hot-spots for pointer
10867 and help_echo properties. Use define_frame_cursor1.
10868 (note_mouse_highlight): Use Vvoid_text_area_pointer.
10869 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
10870 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
10871
10872 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
10873
10874 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
10875 (Qimage): Remove extern (now in lisp.h).
10876 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10877
10878 * xmenu.c (show_help_event): Remove unused code.
10879
10880 * xterm.c (Qface, Qmouse_face): Remove unused externs.
10881 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
10882 row's ascent and descent, to get a sensible height on tall rows.
10883
10884 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
10885
10886 * minibuf.c (Fcompleting_read): Undo previous change.
10887
10888 2003-12-25 Lars Hansen <larsh@math.ku.dk>
10889
10890 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
10891 Arguments GCPRO'ed in call to file name handler.
10892
10893 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
10894
10895 * termcap.c (tgetst1): Scan for "%pN"; if all
10896 N are continuous in [1,9], remove all "%pN".
10897
10898 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10899
10900 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
10901
10902 * xfaces.c (lface_fully_specified_p): Take into account that
10903 MAC OS always have unspecified stipple.
10904
10905 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10906
10907 * tparam.c (tparam1): Add handling for `%pN', which
10908 means use param N for the next substitution.
10909
10910 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10911
10912 * xfaces.c (Fcolor_gray_p): Fix omission bug:
10913 In case `frame' is nil, consult the selected frame.
10914 (Fcolor_supported_p): Likewise.
10915
10916 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
10917
10918 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
10919 Doc fixes.
10920
10921 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
10922 and an integer. Adapt the introductory comment accordingly.
10923 (Fread_from_minibuffer): Delete code moved into read_minibuf.
10924 Doc fix.
10925 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
10926 read_minibuf.
10927 (Fcompleting_read): Delete code moved into read_minibuf.
10928 (Ftest_completion): Make it handle obarrays and hash tables correctly.
10929
10930 2003-12-03 Kenichi Handa <handa@m17n.org>
10931
10932 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
10933 encoding sequence.
10934
10935 2003-12-01 Kenichi Handa <handa@m17n.org>
10936
10937 * composite.c (syms_of_composite): Don't make the compostion hash
10938 table week.
10939
10940 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
10941
10942 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
10943 * textprop.c (Fget_char_property_and_overlay): New function.
10944 (syms_of_textprop): Defsubr it.
10945
10946 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10947
10948 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
10949 to compile on terminal configuration.
10950
10951 * fileio.c (Fread_file_name): Check use_file_dialog also before
10952 calling Fx_file_dialog.
10953
10954 * fns.c (use_file_dialog): New variable.
10955 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
10956
10957 2003-11-29 Kim F. Storm <storm@cua.dk>
10958
10959 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
10960 (syms_of_msdos): Don't intern and staticpro them.
10961
10962 2003-11-27 Kim F. Storm <storm@cua.dk>
10963
10964 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
10965 coordinates relative to glyph at posn. If glyph is an image,
10966 return that as object at posn. Callers changed.
10967 (mode_line_string, marginal_area_string): Calculate and return
10968 pixel coordinates relative to glyph. Callers changed.
10969
10970 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10971 (marginal_area_string): Fix prototypes.
10972 (window_box_left_offset, window_box_right_offset): Add prototypes.
10973
10974 * frame.h (get_specified_cursor_type, get_window_cursor_type):
10975 Remove prototypes.
10976
10977 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
10978
10979 * keyboard.c (make_lispy_position): Add x and y coordinates
10980 relative to the current glyph as 7th element of position.
10981 If glyph is an image, return it in the object element.
10982 (read_key_sequence): Skip checks for keymap property in cases
10983 where POSN_STRING is not a string (e.g. an image).
10984
10985 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
10986 (Vshow_text_cursor_in_void): New variable.
10987 (glyph_to_pixel_coords): Don't use negative hpos.
10988 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
10989 (append_stretch_glyph): Change ascent arg to be actual value
10990 in pixels rather than ratio to height. Callers changed.
10991 (calc_pixel_width_or_height): New aux function, implementing
10992 pixel based artihmetic for glyph widths and heights.
10993 (produce_stretch_glyph): Use calc_pixel_width_or_height for
10994 :width, :height, :align-to, and :ascent, thus allowing these to
10995 be specified in pixels as well as multiples of characters.
10996 Don't produce stretch glyphs with zero width or height.
10997 (get_specified_cursor_type): Declare static.
10998 (get_window_cursor_type): Declare static. Add glyph arg to be
10999 able to know when cursor is on an image; always substitute
11000 hollow-box cursor for filled-box cursor on images, to avoid
11001 negative images and flicker when blinking the cursor.
11002 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
11003 (note_mode_line_or_margin_highlight): Use non-text cursor rather
11004 than vertical scroll-bar cursor in display margins.
11005 (note_mouse_highlight): Use non-text cursor rather than text
11006 cursor in fringes and over images in the text area.
11007 Use non-text cursor when mouse pointer is outside editable text,
11008 i.e. in the void after end-of-line or end-of-buffer; this was
11009 already done for W32, but is now standard for all systems --
11010 user can toggle show-text-cursor-in-void to get old behaviour.
11011 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
11012 Vdisplay_pixels_per_inch.
11013
11014 2003-11-25 Andreas Schwab <schwab@suse.de>
11015
11016 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
11017 EMACS_INT to not lose bits.
11018 (Ffillarray): Don't set bits beyond the size of a bool vector.
11019
11020 2003-11-25 Kim F. Storm <storm@cua.dk>
11021
11022 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
11023 define this defun on systems that cannot use stderr as lvalue.
11024
11025 2003-11-24 Gerd Moellmann <gerd@gnu.org>
11026
11027 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
11028 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
11029 ld's default is incompatible with unexec.
11030
11031 2003-11-23 Kim F. Storm <storm@cua.dk>
11032
11033 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
11034 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
11035 (Fforce_window_update): New defun.
11036 (syms_of_window): Defsubr it.
11037 (Fset_window_margins, Fset_window_fringes): Doc fix.
11038
11039 * print.c (Fredirect_debugging_output): New defun.
11040 (syms_of_print): Defsubr it.
11041
11042 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
11043
11044 * fns.c (Fset_char_table_parent): Doc fix.
11045
11046 2003-11-22 Kim F. Storm <storm@cua.dk>
11047
11048 * dispnew.c (buffer_posn_from_coords): Return actual row/column
11049 for glyph clicked on, rather than (unused) pixel positions.
11050 (mode_line_string, marginal_area_string): Change X and Y args to
11051 pointers for returning actual row/column for glyph clicked on.
11052 Simplify and optimize loops.
11053
11054 * dispextern.h (mode_line_string, marginal_area_string):
11055 Update prototypes.
11056
11057 * keyboard.c (make_lispy_position): New function for generating
11058 mouse click positions from frame and pixel coordinates.
11059 Enhanced to return buffer position and actual row/column for
11060 events outside the text area using updated mode_line_string and
11061 marginal_area_string functions.
11062 Return left-fringe and right-fringe clicks as such, rather than
11063 clicks in text area.
11064 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
11065 pixel_to_glyph_coords, as we never use the results.
11066 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
11067 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
11068 Eliminate unused code in WHEEL_EVENT handling.
11069 (make_lispy_movement): Use make_lispy_position.
11070
11071 * window.c (coordinates_in_window): Remove redundant tests.
11072 Fix returned X pixel value for left-margin.
11073
11074 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
11075 mode_line_string and marginal_area_string parameters.
11076
11077 2003-11-22 Lars Hansen <larsh@math.ku.dk>
11078
11079 * w32.c (struct the_group, getgrgid): Add.
11080 * mac.c (struct my_group, getgrgid): Add.
11081
11082 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
11083
11084 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
11085
11086 2003-11-21 Lars Hansen <larsh@math.ku.dk>
11087
11088 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
11089 include in call to file name handler. Optionally translate numeric
11090 UID and GID to strings. Update docstring.
11091 (directory_files_internal): Add parameter ID-FORMAT.
11092 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
11093 include in call to file name handler and call to
11094 directory_files_internal. Update Docstring.
11095 (Fdirectory_files): Add dummy parameter in call to
11096 directory_files_internal.
11097 * lisp.h (Qinteger): Add.
11098 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
11099 (Ffile_attributes): Add parameter.
11100 * data.c (Qinteger): Export.
11101
11102 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
11103
11104 * fns.c (Freverse, Fnreverse): Doc fixes.
11105
11106 2003-11-19 Kim F. Storm <storm@cua.dk>
11107
11108 * xdisp.c (init_iterator): Initialize it->start to position
11109 before reseating (in case start position is invisible).
11110 (init_to_row_start): Set it->start to row-start.
11111 (redisplay_window): Accept optional_new_start if start position
11112 is invisible (in which case IT_CHARPOS overshoots PT).
11113 (display_line): Setup row->start from it->start (rather than
11114 it->current which is wrong if first char on line is invisible).
11115 When done, reseat it->start to it->current (= start of next row).
11116 (expose_area): Fix exposure of text area when first char (e.g. TAB)
11117 is only partially visible.
11118
11119 * dispextern.h (struct it): New member start.
11120
11121 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
11122
11123 * alloc.c (make_float, Fcons): Clear the markbit at init time.
11124 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
11125 of block_index outside of the macro call.
11126 (Fgarbage_collect): Remove null code.
11127
11128 * m/amdx86-64.h: Don't redefine XPNTR.
11129
11130 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
11131 of VALMASK.
11132
11133 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
11134 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
11135 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
11136
11137 * lisp.h (VALMASK): Only define for non-union type.
11138 (MARKBIT): Remove.
11139 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
11140 (XTYPE): Define unconditionally.
11141 (XSETTYPE): Remove one more remnant.
11142 (EQ): Define differently for the union and non-union cases.
11143 (INTMASK): New bit mask.
11144 (struct Lisp_Marker): Move down to prepare for upcoming patch.
11145 (GC_EQ): Delegate to EQ.
11146
11147 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
11148
11149 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11150
11151 * xterm.c (x_window_to_scroll_bar): Move check of display to
11152 where window_id is compared.
11153
11154 2003-11-17 Kim F. Storm <storm@cua.dk>
11155
11156 * dispextern.h (struct it): New member first_vpos.
11157
11158 * xdisp.c (start_display): Set it->first_vpos.
11159 (try_window_id): Use first_vpos to start display in first _text_
11160 line if no reusable lines at start of window with header line.
11161
11162 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11163
11164 * w32fns.c (XPutPixel):
11165 * w32bdf.c (w32_init_bdf_font):
11166 * sunfns.c (sel_read):
11167 * process.c (Fmake_network_process):
11168 * frame.c (store_frame_param):
11169 * fontset.c (Fset_fontset_font):
11170 * emacs.c (shut_down_emacs):
11171 * ccl.c (ccl_driver): Remove period at end of error message.
11172
11173 * config.in: Regenerate.
11174
11175 * xfns.c (x_window_to_frame, x_any_window_to_frame)
11176 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
11177 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
11178 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
11179 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
11180
11181 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
11182
11183 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
11184 (XTmouse_position, handle_one_xevent): Pass Display* to
11185 x_window_to_scroll_bar.
11186 (x_window_to_scroll_bar): Take a Display* argument.
11187 Check that display for frame is equal to Display* argument.
11188 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
11189 x_display_info_for_display instead. Use Display in xev instead
11190 of GDK_DISPLAY.
11191 (x_dispatch_event): Call x_display_info_for_display.
11192 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
11193 (x_connection_closed): Call xg_display_close for GTK.
11194 (x_term_init): Call xg_display_open for additional displays.
11195 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
11196 for GTK.
11197
11198 * xmenu.c (single_menu_item, mouse_position_for_popup)
11199 (x_activate_menubar): Formatting adjustments.
11200
11201 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
11202 adjustments.
11203
11204 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
11205 (xg_display_close, xg_create_default_cursor)
11206 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
11207 handling.
11208 (xg_left_ptr_cursor): Remove.
11209 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
11210 cursor here.
11211 (xg_win_to_widget): Take Display* argument, call
11212 gdk_xid_table_lookup_for_display.
11213 (xg_create_frame_widgets, xg_get_file_name, create_menus)
11214 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
11215 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
11216 in FRAME_X_DISPLAY_INFO.
11217 (xg_get_scroll_id_for_window): Take Display* argument.
11218 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
11219 (xg_initialize): Remove xg_left_ptr_cursor.
11220
11221 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
11222 Display* argument.
11223 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
11224
11225 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11226
11227 * xterm.c (x_detect_focus_change): Do not change focus frame for
11228 Enter/LeaveNotify if the current focus frame has explicit focus.
11229
11230 2003-11-14 Kim F. Storm <storm@cua.dk>
11231
11232 * dispnew.c (update_text_area): Fix redisplay error when hscroll
11233 is active and first glyph is only partially visible.
11234
11235 2003-11-13 Kenichi Handa <handa@m17n.org>
11236
11237 * xdisp.c (select_frame_for_redisplay): New function.
11238 (redisplay_internal): Record also selected_frame for
11239 unwind_redisplay. Call select_frame_for_redisplay before
11240 redrawing each frame.
11241 (unwind_redisplay): Argument changed to a cons.
11242
11243 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
11244
11245 * fns.c (Fstring_to_multibyte): Doc fix.
11246
11247 2003-11-11 Kenichi Handa <handa@m17n.org>
11248
11249 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
11250
11251 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11252
11253 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
11254 program specified positions.
11255
11256 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11257
11258 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
11259
11260 2003-11-08 Kenichi Handa <handa@m17n.org>
11261
11262 * Makefile.in (lisp): Add kannada.el.
11263 (shortlisp): Likewise.
11264
11265 2003-11-07 Kenichi Handa <handa@m17n.org>
11266
11267 * coding.c (coding_allocate_composition_data):
11268 Reset coding->composing to COMPOSITION_NO.
11269 (coding_restore_composition): Detect invalid composition data.
11270 Give Fstring and Fvector a Lispy integer, not C int.
11271
11272 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
11273
11274 * floatfns.c (Flogb): Don't use VALMASK.
11275
11276 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
11277 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
11278
11279 * lisp.h (XINT): Move the cast to clarify what is going on.
11280 (GCTYPEMASK, XSETTYPE): Remove.
11281 (XGCTYPE): Make it an alias of XTYPE.
11282
11283 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11284
11285 * xterm.c (x_term_init): Fix formatting.
11286
11287 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11288
11289 * gtkutil.h (xg_have_tear_offs): Declare.
11290 (xg_keep_popup, xg_did_tearoff): Remove.
11291
11292 * gtkutil.c: Remove variable xg_did_tearoff.
11293 (xg_have_tear_offs): New function.
11294 (tearoff_remove): Just decrease xg_detached_menus.
11295 (tearoff_activate): Increase xg_detached_menus and call
11296 tearoff_remove when tearoff is removed.
11297 (xg_keep_popup): Remove function.
11298 (create_menus): Give add_tearoff_p as argument to recursive
11299 call to create_menus.
11300 (xg_create_widget): Use variables instead of multiple
11301 strcmp. Tell create_menus to create tear off only for
11302 menu bar menus.
11303 (xg_update_menubar): Change title for a detached menu also.
11304 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
11305 of deep_p.
11306 (xg_initialize): Initialize xg_detached_menus, remove
11307 initialization of xg_did_tearoff.
11308
11309 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
11310 xg_have_tear_offs returns non-zero.
11311 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
11312 call to xg_keep_popup.
11313
11314 2003-11-01 Andrew Choi <akochoi@shaw.ca>
11315
11316 * macterm.c (XTread_socket): Handle menubar selection and grow
11317 window only for mouseDown events.
11318
11319 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11320
11321 * xterm.c (x_term_init): For GTK part, increase x_initialized
11322 to check for more than one display. Use error instead of return 0.
11323
11324 2003-10-31 Andrew Choi <akochoi@shaw.ca>
11325
11326 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
11327 (copy_dysymtab): Call it.
11328
11329 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
11330
11331 * eval.c (Fdefvaralias): Doc fix.
11332
11333 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
11334
11335 * data.c (Fsetplist): Doc fix.
11336
11337 2003-10-14 Lute Kamstra <lute@gnu.org>
11338
11339 * window.c (Fset_window_fringes): Clarify docstring.
11340
11341 2003-10-14 Kim F. Storm <storm@cua.dk>
11342
11343 * window.c (Fset_window_margins): Simplify arg checking.
11344
11345 2003-10-13 Richard M. Stallman <rms@gnu.org>
11346
11347 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
11348 (print_partial_compiled_pattern): Replace assert with a printout.
11349 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
11350
11351 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
11352
11353 * window.c (Fset_window_margins): Allow only integers as args.
11354 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
11355 Doc fixes.
11356
11357 2003-10-13 Lute Kamstra <lute@gnu.org>
11358
11359 * window.c (Fset_window_fringes): Elaborate docstring.
11360
11361 2003-10-12 Andrew Choi <akochoi@shaw.ca>
11362
11363 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
11364
11365 * s/darwin.h (GC_MARK_STACK): Define.
11366
11367 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11368
11369 * window.c (shrink_windows): New function.
11370 (size_window): Call shrink_windows to calculate window sizes when
11371 shrinking frame with more than one window.
11372
11373 2003-10-12 Kim F. Storm <storm@cua.dk>
11374
11375 * xdisp.c (compute_fringe_widths): Doc fix.
11376
11377 2003-10-08 Kenichi Handa <handa@m17n.org>
11378
11379 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
11380
11381 2003-10-07 Kenichi Handa <handa@m17n.org>
11382
11383 * coding.c (Qcoding_system_define_form): New variable.
11384 (syms_of_coding): Intern and staticpro it.
11385 (Fcheck_coding_system): Try to autoload the definition of
11386 CODING-SYSTEM.
11387
11388 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
11389
11390 * fns.c (Frequire): Doc fix.
11391
11392 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11393
11394 * xfns.c (Fx_send_client_event): New function as a base for
11395 manipulating extended window manager hints.
11396 (Fx_send_client_event): Remove unused variable s.
11397
11398 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
11399 that function is removed.
11400
11401 * xterm.c (x_set_offset): Use move_offset_left/top instead of
11402 x/y_pixels_outer_diff.
11403 (x_check_expected_move): Calculate move_offset_left/top.
11404
11405 * xterm.h (struct x_output): New members: move_offset_top/left.
11406
11407 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
11408 call x_set_offset directly.
11409
11410 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
11411
11412 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
11413
11414 * xterm.c (x_delete_display): Free font names and font_encoder
11415 in dpyinfo->font_table.
11416
11417 * xfns.c (Fx_close_connection): Only call XFreeFont here.
11418 Move xfree of font names to x_delete_display.
11419
11420 * xterm.h (struct x_display_info): New member, wm_type.
11421 (struct x_output): New members, expected_top/left and
11422 check_expected_move.
11423
11424 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
11425 is received.
11426 (handle_one_xevent): Rename x_check_expected_move from
11427 x_check_fullscreen_move.
11428 (x_set_offset): Only add WM decoration sizes to modified_top/left
11429 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
11430 (x_check_expected_move): Rename from x_check_fullscreen_move.
11431 Removed fullscreen specific code. Use check_expected_move,
11432 expected_left/top instead. Also, set wm_type.
11433 (x_term_init): Initialize wm_type to unknown.
11434
11435 * frame.c (x_fullscreen_move): Remove addition of WM decoration
11436 sizes to move_x/y.
11437
11438 2003-10-03 Kenichi Handa <handa@m17n.org>
11439
11440 * macterm.c (x_load_font): Clear all members of FONTP before start
11441 filling them.
11442
11443 2003-10-02 Kenichi Handa <handa@m17n.org>
11444
11445 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
11446 before calling find_ccl_program_func. Call find_ccl_program_func
11447 only when fontp->font_encoder is not NULL.
11448
11449 * xterm.c (x_load_font): Clear all members of FONTP before start
11450 filling them.
11451
11452 2003-10-03 John Paul Wallington <jpw@gnu.org>
11453
11454 * keymap.c (map_keymap): Don't abort when binding is a vector.
11455
11456 2003-10-02 Jason Rumney <jasonr@gnu.org>
11457
11458 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
11459 Sync dependencies with Makefile.in.
11460 (alloca.o): Remove.
11461
11462 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
11463 filling them.
11464
11465 * w32bdf.c (w32_load_bdf_font): Likewise.
11466
11467 2003-09-30 Richard M. Stallman <rms@gnu.org>
11468
11469 * term.c (set_tty_color_mode): Calculate current_mode_spec
11470 regardless of value of VAL.
11471
11472 * intervals.c (graft_intervals_into_buffer):
11473 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
11474 Handle over_used when splitting UNDER.
11475
11476 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11477
11478 * regex.c (regex_compile): Free the stack when returning from function.
11479
11480 2003-09-28 Kenichi Handa <handa@m17n.org>
11481
11482 * fontset.c (Finternal_char_font): Change return value to
11483 cons (FONT-NAME . GLYPH-CODE).
11484
11485 2003-09-28 Eli Zaretskii <eliz@gnu.org>
11486
11487 * term.c (tty_setup_colors): Treat any negative argument as -1.
11488
11489 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
11490
11491 * process.c (send_process): Delete unused temp_buf.
11492
11493 2003-09-26 Dave Love <fx@gnu.org>
11494
11495 * xterm.c (x_bitmap_mask): Declare.
11496
11497 2003-09-25 Dave Love <fx@gnu.org>
11498
11499 * Makefile.in (fns.o): Depend on md5.h.
11500
11501 2003-09-25 Kim F. Storm <storm@cua.dk>
11502
11503 * window.c (set_window_buffer): Fix redisplay problems when
11504 switching between buffers with different display margin widths.
11505
11506 2003-09-23 Kim F. Storm <storm@cua.dk>
11507
11508 * process.c (set_socket_option): Fix :bindtodevice option.
11509 (Fset_network_process_option): Update process contact list when
11510 setting option succeeds.
11511 (Fmake_network_process): Doc fix.
11512
11513 2003-09-23 Dave Love <fx@gnu.org>
11514
11515 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
11516
11517 2003-09-22 Eli Zaretskii <eliz@gnu.org>
11518
11519 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
11520 color mode is an integer number (it could be -1).
11521
11522 2003-09-22 Richard M. Stallman <rms@gnu.org>
11523
11524 * intervals.c (graft_intervals_into_buffer): Correct the main loop
11525 in the case where OVER is longer than UNDER.
11526
11527 2003-09-22 Masatake YAMATO <jet@gyve.org>
11528
11529 * window.c (Fset_window_scroll_bars): Validate the value of
11530 `vertical_type'.
11531
11532 2003-09-21 Kim F. Storm <storm@cua.dk>
11533
11534 * frame.c (Vdefault_frame_scroll_bars): New variable.
11535 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
11536 (syms_of_frame): DEFVAR_LISP it, and initialize according to
11537 window-system default scroll bar position.
11538
11539 * window.c (Fwindow_scroll_bars): Doc fix.
11540
11541 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11542
11543 * xterm.c (x_set_offset): Take window manager decorations into account.
11544
11545 2003-09-19 Richard M. Stallman <rms@gnu.org>
11546
11547 * atimer.h: Don't include lisp.h.
11548 (P_): Define it here (as well as elsewhere).
11549
11550 * print.c (Fprin1_to_string): Move the PRINTPREPARE
11551 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
11552
11553 * data.c (Fvariable_binding_locus): New function.
11554 (syms_of_data): defsubr it.
11555 (Flocal_variable_p): Delete duplicate call to indirect_variable.
11556
11557 2003-09-18 Dave Love <fx@gnu.org>
11558
11559 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
11560
11561 * process.c (Fnetwork_interface_info): Fix type error.
11562 (Fnetwork_interface_list): Doc fix.
11563 (read_process_output, read_process_output): Delete unused var.
11564
11565 2003-09-17 Kim F. Storm <storm@cua.dk>
11566
11567 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
11568 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
11569 (Fnetwork_interface_info): Check that ifreq struct has required
11570 fields before accessing them; this requires that those fields are
11571 defined as macros, which may be too restrictive on some platforms,
11572 but it is better than failing on other platforms.
11573 (syms_of_process): Only defsubr above fns when included.
11574
11575 2003-09-17 Dave Love <fx@gnu.org>
11576
11577 * unexalpha.c: Don't include varargs.h.
11578
11579 2003-09-17 Kim F. Storm <storm@cua.dk>
11580
11581 * process.c (Fset_process_sentinel): Add sentinel to childp plist
11582 for network process.
11583 (socket_options): Add `:' prefix to option names. Add optbit field.
11584 (set_socket_option): Remove no_error arg and special handling of s < 0.
11585 Return 1<<optbit for known option, 0 for unknown.
11586 Do not interpret 0 as false for boolean option (only nil).
11587 Pass failed option and value to report_file_error.
11588 (Fset_network_process_options): Replace by Fset_network_process_option.
11589 (Fset_network_process_option): New function to set just one option.
11590 (Fmake_network_process): Allow :coding arg to be a cons.
11591 Allow :server arg to be an integer specifying backlog size.
11592 Remove :options arg, and allow options to be specified directly
11593 as :KEY, VALUE pairs. Parse these options before binding socket.
11594 As before, :reuseaddr t is default for a server process, but this
11595 can now be disabled by specifying :reuseaddr nil.
11596 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
11597 (init_process): Availability of network options is now checked with
11598 simpler syntax (featurep 'make-network-process :OPTION); use loop to
11599 setup features.
11600 (syms_of_process): Fix defsubr's for the replaced functions.
11601
11602 2003-09-16 Dave Love <fx@gnu.org>
11603
11604 * Makefile.in: Depend on coding.h.
11605
11606 2003-09-14 Kim F. Storm <storm@cua.dk>
11607
11608 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
11609 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
11610 (syms_of_process): Defsubr them.
11611
11612 * config.in: Regenerate.
11613
11614 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
11615
11616 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
11617 * m/news-r6.h (XUNMARK): Remove.
11618 * m/mips.h (XUNMARK): Remove.
11619 * m/mips-siemens.h (XUNMARK): Remove.
11620 * m/iris4d.h (XUNMARK): Remove.
11621 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
11622
11623 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
11624
11625 * lisp.h (VALBITS): Don't remove 1 for the markbit.
11626 (union Lisp_Object): Use unsigned int for types. Remove markbit.
11627 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
11628 (XTYPE): Use unsigned right-shift.
11629 (XMARKBIT, XMARK, XUNMARK): Remove.
11630
11631 * alloc.c (init_intervals, init_symbol, init_marker):
11632 Don't preallocate anything.
11633 (Fgarbage_collect, mark_object): Ignore the markbit.
11634
11635 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
11636
11637 2003-09-08 Lute Kamstra <lute@gnu.org>
11638
11639 * xdisp.c (pint2hrstr): New function.
11640 (decode_mode_spec): Add `%i' and `%I' specs.
11641 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
11642 for `mode-line-format'.
11643
11644 2003-09-07 Andreas Schwab <schwab@suse.de>
11645
11646 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
11647 avoid warning.
11648
11649 2003-09-07 Eli Zaretskii <eliz@gnu.org>
11650
11651 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
11652
11653 2003-09-03 Kim F. Storm <storm@cua.dk>
11654
11655 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
11656 change (superseded by 2002-08-30 change); the default blink-off
11657 cursor is now again "no cursor".
11658
11659 2003-09-01 Jason Rumney <jasonr@gnu.org>
11660
11661 * makefile.w32-in (alloca.o): Remove.
11662 (coding.o): Depend on intervals.h
11663 (emacs.o, bytecode.o): Depend on window.h
11664
11665 2003-09-01 Dave Love <fx@gnu.org>
11666
11667 * Makefile.in (alloca.o): Remove commands.
11668 (coding.o): Depend on intervals.h composite.h window.h.
11669 (emacs.o): Depend on window.h keyboard.h keymap.h.
11670 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
11671 (bytecode.o): Depend on window.h.
11672
11673 2003-08-31 Jason Rumney <jasonr@gnu.org>
11674
11675 * w32term.c (w32_per_char_metric): Allow cached metrics to be
11676 returned even when font_type is unknown.
11677
11678 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
11679
11680 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11681
11682 * xterm.c (x_term_init): Initialize new fields in x_display_info.
11683
11684 * xterm.h (struct x_display_info): Add red/green/blue_bits and
11685 *_offset.
11686
11687 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
11688 calculate pixel value.
11689
11690 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
11691
11692 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
11693 Don't tell redisplay display is accurate when it's actually been
11694 paused for pending input.
11695
11696 2003-08-29 Richard M. Stallman <rms@gnu.org>
11697
11698 * dispnew.c (adjust_glyph_matrix): Call window_box
11699 whenever W is nonzero.
11700
11701 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11702 (Fkill_local_variable, Fmake_variable_frame_local)
11703 (Flocal_variable_p, Flocal_variable_if_set_p):
11704 Use indirect_variable to trace thru variable aliases.
11705
11706 * config.in: Updated.
11707
11708 * callint.c (Fcall_interactively): Save and restore
11709 Vthis_command, Vthis_original_command, real_this_command,
11710 and current_kboard->Vlast_command.
11711
11712 * abbrev.c (Fexpand_abbrev): Insert before deleting.
11713
11714 2003-08-29 Gerd Moellmann <gerd@gnu.org>
11715
11716 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
11717
11718 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
11719
11720 * coding.c (decode_coding_iso2022): Initialize local variable c2.
11721 (decode_coding_sjis_big5): Likewise.
11722
11723 2003-08-27 Jason Rumney <jasonr@gnu.org>
11724
11725 * w32.c (sys_pipe): Protect against file descriptor overflow.
11726
11727 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
11728
11729 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
11730
11731 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
11732
11733 * xfns.c (Vgtk_version_string): New variable.
11734 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
11735
11736 2003-08-24 Eli Zaretskii <eliz@gnu.org>
11737
11738 * term.c (term_init): Remove `const' from buffer_size's declaration.
11739
11740 * Makefile.in (msdos.o): Depend on intervals.h.
11741
11742 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
11743
11744 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11745
11746 * xterm.h (struct x_display_info): New fields: client_leader_window
11747 and Xatom_wm_client_leader.
11748
11749 * xterm.c (x_initialize): Move call to x_session_initialize to ...
11750 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
11751
11752 * xsmfns.c (create_client_leader_window): New function.
11753 (x_session_initialize): Call create_client_leader_window, take
11754 dpyinfo as argument.
11755
11756 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
11757
11758 * Makefile.in (xsmfns.o): Add more depenedencies.
11759
11760 2003-08-21 Dave Love <fx@gnu.org>
11761
11762 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
11763
11764 2003-08-21 Kenichi Handa <handa@m17n.org>
11765
11766 * term.c (term_init): Fix previous change; don't rely on the
11767 length of `buffer' if TERMINFO is defined.
11768
11769 2003-08-20 Dave Love <fx@gnu.org>
11770
11771 * atimer.h: Include lisp.h.
11772
11773 * lisp.h (EMACS_LISP_H): New.
11774 (popup_activated_flag): Don't declare.
11775
11776 * alloca.c: Some merging with gnulib. Change logic and doc
11777 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11778 [DO_BLOCK_INPUT]: Don't include lisp.h.
11779 (xmalloc, xfree): Declare.
11780 (malloc): Don't declare.
11781
11782 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11783 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11784 atimer.h, blockinput.h.
11785
11786 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11787
11788 * alloca.s: Remove.
11789
11790 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11791
11792 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11793 use -lncurses.
11794
11795 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11796 FreeBSD returns something longer than 2044. Abort if the end of
11797 the buffer is overwritten.
11798
11799 2003-08-19 Miles Bader <miles@gnu.org>
11800
11801 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11802
11803 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11804
11805 * alloc.c (lisp_align_malloc): Check for memory full when
11806 allocating ablocks, which also avoids freeing a pointer into an
11807 ablocks structure.
11808
11809 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11810
11811 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11812
11813 2003-08-16 Richard M. Stallman <rms@gnu.org>
11814
11815 * editfns.c (Fencode_time): Doc fix.
11816
11817 2003-08-16 David Ponce <david@dponce.com>
11818
11819 * fileio.c (Fwrite_region): Fix conditional expression to issue
11820 the right message.
11821
11822 2003-08-16 Juri Linkov <juri@jurta.org>
11823
11824 * syntax.c (Fforward_word): Argument changed to optional.
11825 Set default value to 1.
11826
11827 2003-08-15 Kenichi Handa <handa@m17n.org>
11828
11829 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11830 what autoscaled.
11831 (best_matching_font): Once we find a better scalable font, set
11832 non_scalable_has_exact_height_p to 1.
11833 (try_font_list): Call try_alternative_families to try any family
11834 with the given registry.
11835
11836 2003-08-09 Andreas Schwab <schwab@suse.de>
11837
11838 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
11839
11840 * print.c (print_string): Fix printing of multibyte string with
11841 nontrivial printcharfun.
11842
11843 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11844
11845 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
11846
11847 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
11848
11849 2003-07-31 Kenichi Handa <handa@m17n.org>
11850
11851 * process.c (read_process_output): Return the actually read bytes
11852 instead of the result of decoding.
11853
11854 2003-07-31 Kenichi Handa <handa@m17n.org>
11855
11856 * xterm.h (struct x_bitmap_record): New member have_mask.
11857
11858 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
11859 to 0.
11860 (x_create_bitmap_from_file): Likewise.
11861 (x_destroy_bitmap): Check have_mask member before freeing a mask.
11862 (x_destroy_all_bitmaps): Likewise.
11863 (x_create_bitmap_mask): Set have_mask member to 1.
11864
11865 2003-07-30 Richard M. Stallman <rms@gnu.org>
11866
11867 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
11868
11869 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11870
11871 * gtkutil.c (xg_mark_data): Update calls to mark_object.
11872
11873 2003-07-29 Richard M. Stallman <rms@gnu.org>
11874
11875 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
11876 Conditionalize XIM code on HAVE_XIM.
11877
11878 * fns.c (Fclear_string): New function.
11879 (syms_of_fns): defsubr it.
11880
11881 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11882
11883 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
11884
11885 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
11886
11887 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
11888
11889 * buffer.c (delete_all_overlays): New function.
11890 * buffer.h (delete_all_overlays): Declare.
11891 * coding.c (run_pre_post_conversion_on_str):
11892 * print.c (temp_output_buffer_setup):
11893 * fileio.c (Finsert_file_contents):
11894 * minibuf.c (get_minibuffer): Use it.
11895
11896 2003-07-22 Andrew Choi <akochoi@shaw.ca>
11897
11898 * unexmacosx.c (unexec_regions_sort_compare):
11899 (unexec_regions_merge): New functions. Sort and merge unexec
11900 regions before dumping them.
11901
11902 2003-07-22 Dave Love <fx@gnu.org>
11903
11904 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
11905
11906 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
11907
11908 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
11909 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
11910 MARKBIT as the gcmarkbit for strings.
11911
11912 2003-07-21 Richard M. Stallman <rms@gnu.org>
11913
11914 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
11915
11916 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
11917 (syms_of_fns): Corresponding change.
11918
11919 * alloc.c (syms_of_alloc): Doc fixes.
11920
11921 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
11922
11923 * s/netbsd.h: Use -Wl syntax.
11924
11925 2003-07-17 Richard M. Stallman <rms@gnu.org>
11926
11927 * xterm.c (xim_initialize): Redo 6/24 change.
11928
11929 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
11930
11931 * buffer.c (copy_overlays): Use EMACS_INT for positions.
11932 (Fswitch_to_buffer): Don't signal an error when switching to the same
11933 buffer in a dedicated window.
11934
11935 * alloc.c: Use bitmaps for cons, as was done for floats.
11936 (init_float, init_cons): Let the normal code allocate the first block.
11937 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
11938 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
11939 New macros.
11940 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
11941 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
11942 (live_cons_p): Check the pointer is not past the `conses' array.
11943 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
11944 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
11945 (survives_gc_p): Use CONS_MARKED_P and simplify.
11946 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
11947
11948 2003-07-13 Paul Eggert <eggert@twinsun.com>
11949
11950 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
11951 puts it into BSS instead, at least on Solaris 8 and 9.
11952 This is a valid optimization, and it may occur on other platforms,
11953 so Emacs should not assume that initializing a static variable to
11954 zero puts it into data.
11955 * alloc.c (pure, staticvec):
11956 Initialize these arrays to nonzero, so that they're not
11957 put into BSS by that optimization.
11958
11959 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
11960
11961 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
11962 (lisp_align_malloc): Use posix_memalign is available.
11963 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
11964 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
11965 for consistency. Update users.
11966
11967 2003-07-13 Richard M. Stallman <rms@gnu.org>
11968
11969 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
11970
11971 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
11972
11973 * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask,
11974 and use the Gtk+ function gtk_window_icon_from_file if available.
11975
11976 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
11977 handle mask of bitmaps.
11978 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
11979 mask property.
11980 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
11981
11982 * xterm.h (xg_set_icon): New function.
11983
11984 2003-07-12 Paul Eggert <eggert@twinsun.com>
11985
11986 * unexelf.c (unexec): Consider a section to precede the .bss
11987 section if its addresses overlap that of .bss.
11988
11989 2003-07-12 Richard M. Stallman <rms@gnu.org>
11990
11991 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
11992
11993 * config.in (HAVE_CRTIN): Add #undef.
11994 (INLINE): Really inline only if OPTIMIZE is defined.
11995
11996 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
11997 END_FILES_1.
11998 (START_FILES_1, END_FILES_1): New macros (conditional).
11999 (LD_SWITCH_SYSTEM_TEMACS): Define.
12000
12001 * s/openbsd.h: Don't include bsd4-3.h.
12002 (TERMINFO): Define.
12003 (LIBS_TERMCAP): Define.
12004 (LD_SWITCH_SYSTEM): Define (two definitions).
12005
12006 * xfns.c: Include libpng/png.h instead of png.h.
12007
12008 2003-07-11 Andreas Schwab <schwab@suse.de>
12009
12010 * buffer.c (modify_overlay): Update prototype.
12011 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
12012 Likewise.
12013
12014 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
12015
12016 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
12017 (struct interval): Move to intervals.h.
12018 (struct Lisp_Marker): Use EMACS_INT for position info.
12019 (forward_point): Remove prototype of defunct function.
12020 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
12021 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
12022 (syms_of_textprop, set_text_properties): Remove prototypes that are
12023 already in intervals.h.
12024
12025 * intervals.h (struct interval): Move from lisp.h.
12026 Use EMACS_INT for position and size info.
12027
12028 * coding.c: Include intervals.h for Fset_text_properties.
12029
12030 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
12031 position and length information.
12032
12033 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
12034
12035 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
12036 position and length information.
12037
12038 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
12039
12040 Change overlays_after and overlays_before so the overlays themselves
12041 are linked into lists, rather than using cons cells. After all each
12042 Lisp_Misc already occupies 5 words, so we can add a `next' field to
12043 Lisp_Overlay for free and save up one cons cell per overlay (not
12044 to mention one indirection when traversing the list of overlay).
12045
12046 * lisp.h (struct Lisp_Overlay): New field `next'.
12047
12048 * buffer.h (struct buffer): Change overlays_before and overlays_after
12049 from Lisp lists of overlays to pointers to overlays.
12050
12051 * buffer.c (overlay_strings, recenter_overlay_lists):
12052 Fix typo in eassert in last commit.
12053 (unchain_overlay): New function.
12054 (add_overlay_mod_hooklist): Use AREF.
12055 (copy_overlays, reset_buffer, overlays_at, overlays_in)
12056 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
12057 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
12058 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
12059 (report_overlay_modification, evaporate_overlays, init_buffer_once):
12060 Adjust to new type of overlays_(before|after).
12061
12062 * alloc.c (mark_object): Mark the new `next' field of overlays.
12063 (mark_buffer): Manually mark the overlays_(after|before) fields.
12064
12065 * coding.c (run_pre_post_conversion_on_str):
12066 * editfns.c (overlays_around):
12067 * xdisp.c (load_overlay_strings):
12068 * fileio.c (Finsert_file_contents):
12069 * indent.c (current_column):
12070 * insdel.c (signal_before_change, signal_after_change):
12071 * intervals.c (set_point_both):
12072 * print.c (temp_output_buffer_setup): Use new type for
12073 overlays_(before|after).
12074
12075 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
12076
12077 * buffer.c (report_overlay_modification): Don't run hooks while
12078 traversing the list of overlays.
12079
12080 * buffer.h (struct buffer): Use an int for overlay_center.
12081 (overlays_at, evaporate_overlays, recenter_overlay_lists)
12082 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
12083
12084 * buffer.c (reset_buffer, recenter_overlay_lists)
12085 (adjust_overlays_for_insert, adjust_overlays_for_delete)
12086 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
12087 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
12088 (overlays_at, evaporate_overlays, recenter_overlay_lists)
12089 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
12090
12091 * xdisp.c (fast_find_position): Remove unused var.
12092
12093 * cmds.c (Qexpand_abbrev): New sym.
12094 (syms_of_cmds): Initialize it.
12095 (internal_self_insert): Use it to call expand-abbrev.
12096
12097 2003-07-09 Kim F. Storm <storm@cua.dk>
12098
12099 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
12100 was configured with --without-xim.
12101 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
12102
12103 2003-07-07 Richard M. Stallman <rms@gnu.org>
12104
12105 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
12106
12107 * alloc.c (Fgarbage_collect): Doc fix.
12108
12109 2003-07-07 Nozomu Ando <nand@mac.com>
12110
12111 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
12112
12113 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
12114
12115 * minibuf.c (read_minibuf): UNGCPRO before returning.
12116 (Ftry_completion, Fall_completions): Doc fix.
12117
12118 * alloc.c (live_float_p): Check that p is not past the `floats' array,
12119 now that `floats' is not the last element of the struct any more.
12120
12121 2003-07-06 Jason Rumney <jasonr@gnu.org>
12122
12123 * w32term.h (ClipboardSequence_Proc): New type.
12124
12125 * w32fns.c (clipboard_sequence_fn): New variable.
12126 (globals_of_w32fns): Initialize it.
12127
12128 * w32select.c (last_clipboard_sequence_number): New variable.
12129 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
12130 number if possible.
12131
12132 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
12133
12134 * m/amdx86-64.h (MARKBIT):
12135 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
12136 MARKBIT and ARRAY_MARK_FLAG any more.
12137
12138 * m/hp800.h (XSETMARKBIT):
12139 * m/sr2k.h (XSETMARKBIT):
12140 * lisp.h (XSETMARKBIT): Remove unused macro.
12141
12142 * lisp.h (mark_object): Change prototype.
12143
12144 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
12145 (last_marked): Change accordingly.
12146 (mark_interval, mark_maybe_object, mark_maybe_pointer)
12147 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
12148 (mark_buffer): Update calls to mark_object.
12149
12150 * bytecode.c (mark_byte_stack):
12151 * fns.c (sweep_weak_table):
12152 * keyboard.c (mark_kboards): Update calls to mark_object.
12153
12154 2003-07-06 Jason Rumney <jasonr@gnu.org>
12155
12156 * alloc.c (struct ablock): Only include padding when there is some.
12157
12158 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
12159
12160 * alloc.c (ALIGN): Add casts to simplify usage.
12161 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
12162 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
12163 (struct ablock, struct ablocks): New types.
12164 (free_ablock): New global var.
12165 (lisp_align_malloc, lisp_align_free): New functions.
12166 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
12167 (struct float_block): Reorder and add gcmarkbits.
12168 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
12169 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
12170 (init_float, make_float): Use lisp_align_malloc.
12171 (free_float, live_float_p): Don't use `type' any more.
12172 (make_float): Use FLOAT_UNMARK to access to mark bit.
12173 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
12174 Use FLOAT_MARKED_P to access the mark bit.
12175 (pure_alloc): Simplify use of ALIGN.
12176 (mark_object): Use FLOAT_MARK to access the mark bit.
12177 (gc_sweep): Use new macros to access the float's mark bit.
12178 (init_alloc_once): Init free_ablock.
12179
12180 * lisp.h (struct Lisp_Float): Remove unused field `type'.
12181
12182 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
12183
12184 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
12185 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
12186 (allocate_buffer): Move.
12187 (string_bytes): Don't mask markbit of `size_byte'.
12188 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
12189 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
12190 Use the `size' field of buffers (rather than the `name' field) for
12191 the mark bit, as is done for all other vectorlike objects.
12192 Use the new macros to access the mark bit of vectorlike objects.
12193
12194 2003-06-26 Richard M. Stallman <rms@gnu.org>
12195
12196 * puresize.h (BASE_PURESIZE): Increment base size.
12197
12198 * xdisp.c (fast_find_position): Enable Gerd's new definition.
12199
12200 * xterm.c (xim_initialize): Undo previous change.
12201
12202 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
12203
12204 * alloc.c (survives_gc_p): Simplify.
12205
12206 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
12207
12208 * window.c (Fset_window_dedicated_p): Simplify.
12209 (display_buffer_1): Don't raise the win from which minibuf was entered.
12210 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
12211 (Fminibuffer_selected_window): Simplify.
12212
12213 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
12214
12215 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
12216 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
12217
12218 * insdel.c (check_markers, adjust_markers_for_delete)
12219 (adjust_markers_for_insert, adjust_markers_for_replace)
12220 (prepare_to_modify_buffer, RESTORE_VALUE):
12221 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
12222 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
12223 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
12224 * alloc.c (Fmake_marker, free_marker, gc_sweep):
12225 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
12226 * editfns.c (save_excursion_restore, transpose_markers):
12227 * window.c (delete_window):
12228 * xdisp.c (message_dolog): Update for new types.
12229
12230 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12231
12232 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
12233 (realize_default_face): Use default_face_done_p for the force_p
12234 argument to set_lface_from_font_name. Set default_face_done_p to one.
12235
12236 * frame.c (make_frame): Initialize default_face_done_p.
12237
12238 * frame.h (struct frame): Add default_face_done_p.
12239
12240 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
12241 will be defined.
12242
12243 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
12244
12245 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
12246 Initialize the new field `gcmarkbit'.
12247 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
12248 (mark_interval_tree): Don't mark the tree separately from the nodes.
12249 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
12250 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
12251 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
12252
12253 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
12254 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
12255 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
12256 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
12257 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
12258
12259 2003-06-24 Dave Love <fx@gnu.org>
12260
12261 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
12262
12263 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
12264 from gnulib.
12265
12266 2003-06-21 Richard M. Stallman <rms@gnu.org>
12267
12268 * fileio.c (Fwrite_region): Alternate messages
12269 for append and partial write.
12270
12271 * keyboard.c (read_key_sequence): When converting upcase fn key to
12272 downcase, update fkey and keytran so `backspace' gets translated.
12273
12274 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
12275
12276 * process.c (wait_reading_process_input): Don't signal SIGIO
12277 in batch mode.
12278
12279 2003-06-17 Kenichi Handa <handa@m17n.org>
12280
12281 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
12282 composite.h.
12283
12284 * xselect.c: Don't include charset.h, coding.h, composite.h.
12285 (Qforeign_selection): New variable.
12286 (syms_of_xselect): Intern and static it.
12287 (selection_data_to_lisp_data): Return a unibyte string made from
12288 data with `foreign-selection' text property.
12289
12290 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
12291
12292 * termhooks.h (EVENT_INIT): New macro.
12293
12294 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
12295
12296 * alloc.c (mark_kboards): Move to keyboard.c.
12297
12298 * keyboard.c (record_asynch_buffer_change, read_avail_input):
12299 * xterm.c (x_dispatch_event):
12300 * xmenu.c (find_and_call_menu_selection):
12301 * xdisp.c (handle_tool_bar_click):
12302 * w32menu.c (menubar_selection_callback):
12303 * sysdep.c (kbd_input_ast, read_input_waiting):
12304 * msdos.c (dos_rawgetc):
12305 * macterm.c (mac_check_for_quit_char):
12306 * macmenu.c (menubar_selection_callback):
12307 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
12308 data to kbd_buffer_store_event.
12309
12310 2003-06-15 Kim F. Storm <storm@cua.dk>
12311
12312 * xdisp.c (x_fix_overlapping_area): Always use area relative X
12313 to fix redisplay problem with tall characters (such as \e,AC\e(B).
12314
12315 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12316
12317 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
12318
12319 2003-06-12 Kenichi Handa <handa@m17n.org>
12320
12321 * fileio.c (Fwrite_region): Save and restore restriction.
12322
12323 2003-06-12 Dave Love <fx@gnu.org>
12324
12325 * alloca.c (alloca): Declare arg as size_t.
12326
12327 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
12328 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
12329
12330 2003-06-11 Dave Love <fx@gnu.org>
12331
12332 * search.c (shrink_regexp_cache): Use xrealloc.
12333 (syms_of_search): Use xmalloc.
12334
12335 2003-06-10 Kim F. Storm <storm@cua.dk>
12336
12337 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
12338 Adjust phys_cursor.x to be relative to window box, rather than
12339 text area before checking -- to ensure cursor is redrawn when
12340 exposing window.
12341 Note: This also fixes a similar (older) bug if display margins
12342 are present.
12343
12344 2003-06-06 Kenichi Handa <handa@m17n.org>
12345
12346 * coding.c (encoding_buffer_size): If coding->type is
12347 coding_type_ccl, double magnification on CRLF encoding.
12348
12349 2003-06-06 Jason Rumney <jasonr@gnu.org>
12350
12351 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
12352 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
12353
12354 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
12355 Mac too.
12356
12357 2003-06-05 Dave Love <fx@gnu.org>
12358
12359 * strftime.c: Merge changes from gnulib.
12360
12361 * mktime.c (__mktime_internal): Merge changes from gnulib
12362 involving year 69 and dst2.
12363
12364 Changes to merge with gnulib version and be consistent with the
12365 autoconf test:
12366
12367 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
12368 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
12369 [HAVE_LOCALE_H]: Include locale.h.
12370 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
12371
12372 2003-06-05 Kim F. Storm <storm@cua.dk>
12373
12374 * window.c (coordinates_in_window): Convert X and Y to window
12375 relative coordinates inside mode-line and header-line parts.
12376 Convert X and Y to margin area relative coordinates inside left
12377 and right display margin parts.
12378
12379 2003-06-05 Jason Rumney <jasonr@gnu.org>
12380
12381 * w32fns.c (add_system_logical_colors_to_map): New function.
12382 (Fx_open_connection): Use it.
12383
12384 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
12385
12386 * process.c (allocate_pty): Revert part of the previous patch.
12387 (Faccept_process_output): Simplify.
12388
12389 2003-06-04 Jason Rumney <jasonr@gnu.org>
12390
12391 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
12392
12393 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
12394 (lispy_mouse_wheel_names): Remove.
12395 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
12396 Always define drag_and_drop_syms.
12397
12398 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
12399 WHEEL_EVENT events.
12400
12401 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
12402
12403 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
12404
12405 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
12406
12407 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12408
12409 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
12410 menu item label.
12411
12412 2003-06-03 Richard M. Stallman <rms@gnu.org>
12413
12414 * window.c (Fwindow_edges): Doc fix.
12415 (Fwindow_pixel_edges, Fwindow_inside_edges)
12416 (Fwindow_inside_pixel_edges): New functions.
12417 (syms_of_window): defsubr them.
12418
12419 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
12420 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
12421
12422 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
12423
12424 * dispnew.c (Fsit_for): Don't lie about the number of args.
12425
12426 2003-06-02 Dave Love <fx@gnu.org>
12427
12428 * callproc.c: Use HAVE_FCNTL_H, not USG5.
12429 (syms_of_callproc) <process-environment>: Doc fix.
12430
12431 * doc.c: Use HAVE_FCNTL_H, not USG5.
12432
12433 * xfaces.c (font_rescale_ratio): Fix for K&R.
12434
12435 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
12436
12437 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
12438
12439 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
12440
12441 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
12442 (xg_create_frame_widgets): Use ENCODE_UTF_8.
12443
12444 * xterm.c (Qutf_8): Move to coding.c
12445
12446 * xmenu.c (ENCODE_MENU_STRING): New.
12447 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
12448 Use it.
12449
12450 * coding.h (ENCODE_UTF_8): New.
12451 (Qutf_8): Declare.
12452
12453 * coding.c (Qutf_8): New.
12454 (syms_of_coding): Intern it.
12455
12456 * fns.c: Doc fixes.
12457
12458 2003-06-02 Kenichi Handa <handa@m17n.org>
12459
12460 * buffer.c (Fset_buffer_multibyte): Fix previous change.
12461
12462 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
12463
12464 * lread.c (openp): Make sure STR is a string.
12465
12466 2003-06-01 David Ponce <david@dponce.com>
12467
12468 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
12469 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
12470
12471 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
12472 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
12473 (discard_mouse_events): Discard WHEEL_EVENT events too.
12474 (lispy_wheel_names, wheel_syms): New.
12475 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
12476 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
12477 (make_lispy_event): Add WHEEL_EVENT handler.
12478
12479 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
12480 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12481 WHEEL_EVENT events.
12482
12483 2003-05-31 John Paul Wallington <jpw@gnu.org>
12484
12485 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
12486 timer are in lisp/emacs-lisp.
12487
12488 2003-05-31 Kenichi Handa <handa@m17n.org>
12489
12490 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
12491 region when a buffer is changed to unibyte.
12492
12493 * charset.h (VALID_LEADING_CODE_P): New macro.
12494 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
12495
12496 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
12497 is nonzero, accept multibyte form of eight-bit-control chars.
12498 (decode_composition_emacs_mule): Likewise.
12499 (decode_coding_emacs_mule): Likewise.
12500 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
12501 multibyte form of eight-bit-control chars.
12502
12503 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
12504 (Finsert_file_contents): If coding-system-for-read is bound to
12505 Qauto_save_coding, use the coding system emacs-mule with special
12506 setting for recovering a file.
12507 (choose_write_coding_system): On auto saving, use the coding
12508 system emacs-mule with special setting for auto saving.
12509 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
12510
12511 2003-05-30 Kenichi Handa <handa@m17n.org>
12512
12513 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
12514 properly before calling ccl_driver.
12515
12516 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
12517
12518 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
12519 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
12520 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
12521
12522 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
12523
12524 * xfaces.c (realize_default_face): Do not abort if lface is
12525 non-existent - reverts change from 2003-05-19.
12526
12527 2003-05-29 Kenichi Handa <handa@m17n.org>
12528
12529 * coding.c (decode_coding_iso2022): Pay attention to the byte
12530 sequence of CTEXT extended segment, and retain those bytes as is.
12531
12532 2003-05-28 Kenichi Handa <handa@m17n.org>
12533
12534 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
12535 of CODING_REPLACEMENT_CHARACTER.
12536 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
12537 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
12538 check this flag on encoding.
12539 (encode_coding_sjis_big5):
12540 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
12541 (Fset_terminal_coding_system_internal):
12542 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
12543 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
12544
12545 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
12546 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
12547 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
12548
12549 2003-05-28 Richard M. Stallman <rms@gnu.org>
12550
12551 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
12552
12553 * eval.c (unbind_to): Move init of this_binding to separate statement.
12554
12555 2003-05-28 Kim F. Storm <storm@cua.dk>
12556
12557 * xdisp.c (expose_window): Fix error in calculation of
12558 window relative coordinates of area to redisplay.
12559
12560 2003-05-27 Jason Rumney <jasonr@gnu.org>
12561
12562 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
12563
12564 2003-05-27 David Ponce <david@dponce.com>
12565
12566 Handle W32 mouse wheel events as mouse click events, like in X.
12567
12568 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
12569 MOUSE_WHEEL_EVENT anymore.
12570
12571 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
12572 Scrolling down/up the mouse wheel is respectively mapped to mouse
12573 button 4 and 5.
12574 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12575 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
12576 WM_MOUSEWHEEL events.
12577
12578 2003-05-27 Andreas Schwab <schwab@suse.de>
12579
12580 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
12581
12582 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
12583 partially visible line.
12584
12585 * alloc.c (Fgarbage_collect): Fix last change.
12586
12587 2003-05-26 John Paul Wallington <jpw@gnu.org>
12588
12589 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
12590
12591 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
12592
12593 * window.c (Fset_window_buffer): Add type of `keep_margins'.
12594 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
12595
12596 * window.h (window_box_text_cols): Declare.
12597
12598 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
12599 (x_draw_vertical_border): Remove unused var `f'.
12600
12601 * xfaces.c (build_scalable_font_name): Remove `unused var
12602 pixel_size' warning.
12603
12604 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
12605
12606 * unexelf.c (unexec): Remove `unused var n' warning.
12607
12608 * strftime.c (my_strftime_localtime_r): Remove `defined but
12609 unused' warning.
12610
12611 * process.c (allocate_pty): Remove `unused var stb' and
12612 `cp might be used uninitialized' warnings.
12613
12614 * dispnew.c (mode_line_string): Remove unused var `f'.
12615
12616 * coding.c (find_safe_codings): Remove unused var `i'.
12617
12618 * bytecode.c (Fbyte_code): Remove `unused val' warning.
12619
12620 * buffer.c (Fkill_buffer): Remove unused var `list'.
12621
12622 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
12623
12624 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12625
12626 * frame.c (make_frame): Condition want_fullscreen with
12627 HAVE_WINDOW_SYSTEM.
12628
12629 2003-05-25 Juanma Barranquero <lektu@terra.es>
12630
12631 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
12632 (Fwindow_scroll_bars): Fix typo in docstring.
12633
12634 2003-05-24 Kim F. Storm <storm@cua.dk>
12635
12636 The following changes serve several purposes:
12637
12638 1) Swap the position of fringes and display margins in windows, i.e.
12639 the fringes are now displayed between the margins and the text area
12640 (by default).
12641
12642 2) Allow fringe and scroll bar parameters to be set per-buffer and
12643 per-window (like display margins). Such settings are now stored
12644 in window configurations, preserved when frames are resized, and
12645 copied when windows are split vertically or horizontally.
12646 Several bugs related to display margins have been fixed.
12647
12648 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
12649
12650 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
12651 rather than FRAME_WIDTH (FRAME_FONT (f)).
12652
12653 5) Introduce a consistent naming of variables, members and macros
12654 depending on whether their value is measured in pixels or in
12655 canonical columns/lines. Pixel dimensions are named *_width and
12656 *_height, while canonical columns/lines are named *_cols and
12657 *_lines. Pixel positions are named *_x and *_y, while column/line
12658 positions are named *_col and *_line.
12659
12660 6) Consolidate more of the X, W32, and MAC gui code by moving
12661 common data into struct frame, and generalize it for the non-gui
12662 case by using suitable defaults.
12663
12664 7) Cleanup and consolidate the macros controlling frame and window
12665 layout into frame.h and window.h, and generalize the use of the
12666 various window_box_* functions (enhanced to handle the new fringe
12667 position and the per-window fringe and scroll bar settings).
12668
12669 * frame.h (struct frame): Rename members height to text_lines,
12670 width to text_cols, window_height to total_lines, window_width to
12671 total_cols, new_height to new_text_lines, new_width to
12672 new_text_cols. All uses changed.
12673 (struct frame): New members which consolidate common members of
12674 x_output, w32_output, and mac_output structures: left_pos,
12675 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
12676 win_gravity, size_hint_flags, border_width, internal_border_width,
12677 line_height, fringe_cols, left_fringe_width, right_fringe_width,
12678 want_fullscreen. All uses changed.
12679 (struct frame): New member column_width contaning the canonical
12680 column width, analogue to line_height. All uses changed.
12681 (struct frame): Rename members scroll_bar_pixel_width to
12682 config_scroll_bar_width, and scroll_bar_cols to
12683 config_scroll_bar_cols. All uses changed.
12684 (struct frame): New member scroll_bar_actual_width which
12685 consolidates and renames the vertical_scroll_bar_extra member of
12686 x_output, w32_output, and mac_output structures. All uses changed.
12687 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
12688 from x/w32/macterm.h files. All uses changed. Also change code
12689 which referred to f->output_data...->pixel_height.
12690 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
12691 from x/w32/macterm.h files. All uses changed. Also change code
12692 which referred to f->output_data...->pixel_width.
12693 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
12694 Also change code which referred to f->height.
12695 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
12696 Also change code which referred to f->width.
12697 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
12698 to update new_text_lines and new_text_cols members directly.
12699 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
12700 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
12701 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
12702 FRAME_SCROLL_BAR_COLS. All uses changed.
12703 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
12704 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
12705 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
12706 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
12707 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
12708 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
12709 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
12710 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
12711 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
12712 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
12713 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
12714 Unconditionally return line_height member (it now has proper value
12715 also for non-window frames).
12716 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
12717 return new column_width member (rather than the default font width).
12718 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
12719 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
12720 from x/w32/macterm.h files. Unconditionally return corresponding
12721 member of frame structure (they now have proper values also for
12722 non-window frames).
12723 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
12724 Calculate return value from left and right widths.
12725 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
12726 internal_border_width member (has proper value for non-window frame).
12727 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
12728 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
12729 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
12730 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
12731 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
12732 consolidated from xterm.h, macterm.h, and w32term.h.
12733 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
12734 consolidated from xterm.h, macterm.h, and w32term.h.
12735 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
12736 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
12737 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
12738 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
12739 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
12740 consolidated from x/mac/w32term.h.
12741 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
12742 consolidated from x/mac/w32term.h.
12743 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
12744 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
12745 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
12746 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
12747
12748 * window.h (struct window): Rename members left to left_col,
12749 top to top_line, height to total_lines, width to total_cols,
12750 left_margin_width to left_margin_cols, right_margin_width to
12751 right_margin_cols, orig_height to orig_total_lines, orig_top to
12752 orig_top_line. All uses changed.
12753 (struct window): New members left_fringe_width, right_fringe_width,
12754 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
12755 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
12756 New macros primarily used to simplify other macros.
12757 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
12758 referred to XINT (w->width).
12759 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
12760 referred to XINT (w->height).
12761 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
12762 referred to XINT (w->width) * canon_x_unit.
12763 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
12764 referred to XINT (w->height) * canon_y_unit.
12765 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
12766 referred to XINT (w->left).
12767 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
12768 all uses and code that referred to XINT (w->left) + XINT (w->width).
12769 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
12770 referred to XINT (w->top).
12771 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
12772 referred to XINT (w->top) + XINT (w->height).
12773 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12774 referred to XINT (w->left) * canon_x_unit.
12775 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12776 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12777 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12778 referred to XINT (w->top) * canon_y_unit.
12779 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12780 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12781 (WINDOW_LEFTMOST_P): New macro.
12782 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12783 All uses changed.
12784 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12785 All uses changed.
12786 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12787 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12788 Do not exclude left fringe width.
12789 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12790 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12791 Do not exclude fringe widths.
12792 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12793 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12794 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12795 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12796 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12797 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12798 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12799 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12800 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12801 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12802 New macros. Change code which referenced corresponding
12803 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12804 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12805 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12806 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12807 allow per-window scroll-bar settings.
12808 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12809 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12810 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12811 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12812 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12813 FRAME_SCROLL_BAR_WIDTH.
12814 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12815 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12816 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12817 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12818 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12819 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12820 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12821 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12822 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12823 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12824 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12825 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12826 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12827 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12828 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12829 (window_from_coordinates): Update prototype.
12830 (Fset_window_buffer): Update EXFUN.
12831 (set_window_buffer): Update prototype.
12832
12833 * dispextern.h (struct glyph_matrix): Rename members window_left_x
12834 to window_left_col, window_top_y to window_top_line. All uses
12835 changed.
12836 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
12837 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
12838 internal_border_width is now set to 0 for non-window frames.
12839 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
12840 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
12841 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
12842 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
12843 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
12844 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12845 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12846 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
12847 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
12848 Move to window.h and renamed [see window.h changes].
12849 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
12850 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
12851 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
12852 Use WINDOW_TOTAL_LINES.
12853 (frame_update_line_height): Remove prototype.
12854
12855 * buffer.h (struct buffer): Rename members measured in columns:
12856 left_margin_width to left_margin_cols, right_margin_width to
12857 right_margin_cols. All uses changed.
12858 New members left_fringe_width, right_fringe_width,
12859 fringes_outside_margins for per-buffer fringe settings.
12860 New members scroll_bar_width and vertical_scroll_bar_type for
12861 per-buffer scroll bar settings.
12862
12863 * buffer.c (init_buffer_once): Set buffer_defaults and
12864 buffer_local_flags for new buffer-local variables
12865 left_fringe_width, right_fringe_width, fringes_outside_margins,
12866 scroll_bar_width, and vertical_scroll_bar_type.
12867 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
12868 default-* variables for them.
12869
12870 * dispnew.c: Make (many) trivial substitutions for renamed and
12871 new macros in dispextern.h, frame.h and window.h.
12872 (mode_line_string): No need to adjust width for mode lines, as it
12873 is already adjusted by the caller.
12874 (marginal_area_string): Handle fringes inside/outside margins.
12875
12876 * frame.c: Make (many) trivial substitutions for renamed and
12877 new macros in dispextern.h, frame.h and window.h.
12878 (make_frame): Initialize left_fringe_width, right_fringe_width,
12879 fringe_cols, scroll_bar_actual_width, border_width,
12880 internal_border_width, column_width, line_height, x_pixels_diff,
12881 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
12882 members with values suitable for a non-window frames.
12883
12884 * gtkutil.c: Make (many) trivial substitutions for renamed and
12885 new macros in dispextern.h, frame.h and window.h.
12886
12887 * indent.c: Make (few) trivial substitutions for renamed and
12888 new macros in dispextern.h, frame.h and window.h.
12889
12890 * keyboard.c: Make (many) trivial substitutions for renamed and
12891 new macros in dispextern.h, frame.h and window.h.
12892 (make_lispy_event): Use window positions returned from
12893 window_from_coordinates when constructing the lisp event for
12894 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
12895 (incorrect) values locally.
12896 (make_lispy_movement): Use window positions returned from
12897 window_from_coordinates when constructing the lisp event, rather
12898 than calculating (incorrect) values locally.
12899
12900 * scroll.c: Make (some) trivial substitutions for renamed and
12901 new macros in dispextern.h, frame.h and window.h.
12902
12903 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
12904 scroll-bars.
12905
12906 * sysdep.c: Make (few) trivial substitutions for renamed and
12907 new macros in dispextern.h, frame.h and window.h.
12908
12909 * term.c: Make (some) trivial substitutions for renamed and
12910 new macros in dispextern.h, frame.h and window.h.
12911
12912 * widget.c: Make (few) trivial substitutions for renamed and
12913 new macros in dispextern.h, frame.h and window.h.
12914
12915 * window.c: Make (many) trivial substitutions for renamed and
12916 new macros in dispextern.h, frame.h and window.h.
12917 (make_window): Initialize new members
12918 left_margin_cols, right_margin_cols, left_fringe_width,
12919 right_fringe_width, fringes_outside_margins, scroll_bar_width,
12920 and vertical_scroll_bar_type.
12921 (coordinates_in_window): Adapt to new fringe/margin positions
12922 and per-window fringes and scroll-bars.
12923 Fix bug related to incorrectly adjusting coordinates by
12924 frame's internal_border_width (the effect normally negible since
12925 the internal_border_width is typically 0 or 1 pixel, but very
12926 noticeable for an internal_border_width of e.g. 25 pixels).
12927 Upon successful return (other than ON_NOTHING), the coordinates
12928 are now always properly converted to window relative for the
12929 given display element.
12930 (window_from_coordinates): Add new parameters wx and wy to
12931 return the window relative x and y position in the returned
12932 window and part. A null arg means, don't return the position.
12933 All callers changed.
12934 (adjust_window_margins): New function which may reduce the width
12935 of the display margins if a window's text area is too small after
12936 resizing or splitting windows.
12937 (size_window): Fix bug that did not account for display margin
12938 widths when checking the minimum width of a window; use
12939 adjust_window_margins.
12940 (set_window_buffer): Call Fset_window_fringes and
12941 Fset_window_scroll_bars to setup per-window elements.
12942 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
12943 existing display margin, fringe widths, and scroll bar settings
12944 (e.g. after splitting a window or resizing the frame).
12945 All callers changed.
12946 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
12947 (Fsplit_window): Duplicate original window's display margin,
12948 fringe, and scroll-bar settings; then call Fset_window_buffer with
12949 KEEP_MARGINS non-nil. This fixes a bug which caused a split
12950 window to only preserve the display margins in one of the windows.
12951 When splitting horizontally, call adjust_window_margins on both
12952 windows to ensure that the text area of the new windows is non too
12953 narrow. This fixes a bug which could cause Emacs to trap if the
12954 width of the split window was less than the width of the display
12955 margins.
12956 (window_box_text_cols): Rename from window_internal_width.
12957 All uses changed. Adapt to per-window fringes and scroll bars.
12958 Fix bug that caused vertical separator to be subtracted also on
12959 window frames. Fix another bug that did not reduce the returned
12960 value by the columns used for display margins.
12961 (window_scroll_line_based): Fix bug related to scrolling too much
12962 when display margins are present (implicitly fixed by the fix to
12963 window_box_text_cols).
12964 (scroll_left, scroll_right): Fix bug related to scrolling too far
12965 by default when display margins are present (implicitly fixed by
12966 the fix to window_box_text_cols).
12967 (struct saved_window): Rename members left to left_col, top to
12968 top_line, width to total_cols, height to total_lines, orig_top to
12969 orig_top_line, orig_height to orig_total_lines. All uses changed.
12970 New members left_margin_cols, right_margin_cols,
12971 left_fringe_width, right_fringe_width, fringes_outside_margins,
12972 scroll_bar_width, and vertical_scroll_bar_type for saving
12973 per-window display elements.
12974 (Fset_window_configuration): Restore display margins, fringes,
12975 and scroll bar settings. This fixes a bug which caused display
12976 margins to be discarded when saving and restoring a window
12977 configuration.
12978 (save_window_save): Save display margins, fringes, and scroll bar
12979 settings. This fixes a bug which caused display margins to be
12980 discarded when saving and restoring a window configuration.
12981 (Fset_window_margins): Do nothing if display margins are not
12982 really changed. Otherwise, call adjust_window_margins to ensure
12983 the text area doesn't get too narrow. This fixes a bug which
12984 could cause Emacs to trap if setting display margins wider than
12985 the width of the window.
12986 (Fset_window_fringes): New defun to allow user to specifically set
12987 this window's fringe widths and position vs. display margins.
12988 (Fwindow_fringes): New defun to return window's actual fringe settings.
12989 (Fset_window_scroll_bars): New defun to allow user to specifically
12990 set this window's scroll bar width and position.
12991 (Fwindow_scroll_bars): New defun to return window's actual scroll
12992 bar settings.
12993 (compare_window_configurations): Also compare display margins,
12994 fringes, and scroll bar settings.
12995 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
12996
12997 * xdisp.c: Make (many) trivial substitutions for renamed and
12998 new macros in dispextern.h, frame.h and window.h.
12999 (window_box_width): Adapt to per-window fringes and scroll bars,
13000 and new fringe vs. display margin position. Note that returned
13001 value is no longer guaranteed to be a whole multiple of the frame
13002 column width, since per-window fringes may now be any width.
13003 (window_box_left_offset): New function like window_box_left, but
13004 value is relative to left border of window (rather than frame).
13005 (window_box_right_offset): New function like window_box_right,
13006 but value is relative to left border of window.
13007 (window_box_left): Adapt to per-window fringes and scroll bars,
13008 and new fringe vs. display margin position. Simplify by using
13009 WINDOW_LEFT_EDGE_X and window_box_left_offset.
13010 (window_box): Allow null args for unnecessary return values;
13011 change/simplify relevant callers.
13012 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
13013 and new fringe vs. display margin position.
13014 Use window_box_left_offset and window_box_right_offset
13015 (get_glyph_string_clip_rect): Adapt to per-window fringes and
13016 scroll bars, and new fringe vs. display margin position.
13017 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
13018 (draw_fringe_bitmap): Rework to handle per-window fringes and new
13019 fringe vs. display margin position.
13020 (hscroll_window_tree): Use window_box_width instead of window_box.
13021 (redisplay_window): Adapt to per-window scroll bars.
13022 (draw_glyphs): Rework to handle per-window fringes and scroll
13023 bars, and new fringe vs. display margin position.
13024 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
13025 (x_clear_end_of_line): Adapt to per-window fringes and scroll
13026 bars, and new fringe vs. display margin position. Fix bug which
13027 increased total width of full_width rows by width of scroll bars
13028 although window's total width already includes that.
13029 (x_fix_overlapping_area): Simplify using window_box_left_offset.
13030 (expose_area): Simplify using window_box_left_offset.
13031 (x_draw_vertical_border): Handle per-window scroll bar settings,
13032 mixing windows with left, right and no scroll bars.
13033
13034 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
13035 where it's used in x_list_fonts (for clarity).
13036 (frame_update_line_height): Remove unused function; functionality
13037 is now done directly when setting the default font in x_set_font.
13038
13039 * xfns.c: Make (many) trivial substitutions for renamed and
13040 new macros in dispextern.h, frame.h and window.h.
13041
13042 * xmenu.c: Make (some) trivial substitutions for renamed and
13043 new macros in dispextern.h, frame.h and window.h.
13044
13045 * xterm.h (struct x_output): Move members left_pos, top_pos,
13046 border_width, pixel_height, pixel_width, line_height,
13047 internal_border_width, vertical_scroll_bar_extra,
13048 left_fringe_width, right_fringe_width, fringe_cols,
13049 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
13050 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
13051 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
13052 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
13053 (PIXEL_WIDTH, PIXEL_HEIGHT)
13054 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
13055 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
13056 frame.h and renamed [see frame.h changes].
13057 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
13058 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
13059 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
13060 and renamed [see frame.h changes].
13061
13062 * xterm.c: Make (several) trivial substitutions for renamed and
13063 new macros in dispextern.h, frame.h and window.h.
13064 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
13065 (scroll_run): Adapt to new fringe position.
13066 (glyph_rect): Use window coordinates returned from
13067 window_from_coordinates rather than frame_to_window_pixel_xy.
13068 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
13069 scroll-bars.
13070 (handle_one_xevent): Simplify a USE_GTK conditional.
13071 (x_clip_to_row): Remove superfluous whole_line_p arg and code
13072 (fringes are now inside margins, i.e. always in the clipping area).
13073 All callers changed.
13074 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
13075 directly, then call compute_fringe_widths. Don't call
13076 frame_update_line_height.
13077
13078 * w32term.h (struct w32_output): Move members left_pos, top_pos,
13079 border_width, pixel_height, pixel_width, line_height,
13080 internal_border_width, vertical_scroll_bar_extra,
13081 left_fringe_width, right_fringe_width, fringe_cols,
13082 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
13083 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
13084 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
13085 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
13086 (PIXEL_WIDTH, PIXEL_HEIGHT)
13087 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
13088 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
13089 frame.h and renamed [see frame.h changes].
13090 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
13091 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
13092 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
13093 and renamed [see frame.h changes].
13094
13095 * w32term.c: Make (several) trivial substitutions for renamed and
13096 new macros in dispextern.h, frame.h and window.h.
13097 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
13098 (glyph_rect): Use window coordinates returned from
13099 window_from_coordinates rather than frame_to_window_pixel_xy.
13100 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
13101 scroll-bars.
13102 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
13103 (fringes are now inside margins, i.e. always in the clipping area).
13104 All callers changed.
13105 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
13106 directly, then call compute_fringe_widths. Don't call
13107 frame_update_line_height.
13108
13109 * w32console.c: Make (few) trivial substitutions for renamed and
13110 new macros in dispextern.h, frame.h and window.h.
13111
13112 * w32fns.c: Make (many) trivial substitutions for renamed and
13113 new macros in dispextern.h, frame.h and window.h.
13114
13115 * w32menu.c: Make (few) trivial substitutions for renamed and
13116 new macros in dispextern.h, frame.h and window.h.
13117
13118 * macterm.h (struct mac_output): Move members left_pos, top_pos,
13119 border_width, pixel_height, pixel_width, line_height,
13120 internal_border_width, vertical_scroll_bar_extra,
13121 left_fringe_width, right_fringe_width, fringe_cols,
13122 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
13123 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
13124 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
13125 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
13126 (PIXEL_WIDTH, PIXEL_HEIGHT)
13127 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
13128 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
13129 frame.h and renamed [see frame.h changes].
13130 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
13131 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
13132 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
13133 and renamed [see frame.h changes].
13134
13135 * macterm.c: Make (several) trivial substitutions for renamed and
13136 new macros in dispextern.h, frame.h and window.h.
13137 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
13138 (glyph_rect): Use window coordinates returned from
13139 window_from_coordinates rather than frame_to_window_pixel_xy.
13140 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
13141 scroll-bars.
13142 (x_clip_to_row): Remove superfluous whole_line_p arg and code
13143 (fringes are now inside margins, i.e. always in the clipping area).
13144 All callers changed.
13145 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
13146 directly, then call compute_fringe_widths. Don't call
13147 frame_update_line_height.
13148
13149 * macfns.c: Make (several) trivial substitutions for renamed and
13150 new macros in dispextern.h, frame.h and window.h.
13151 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
13152
13153 * macmenu.c: Make (few) trivial substitutions for renamed and
13154 new macros in dispextern.h, frame.h and window.h.
13155
13156 * msdos.h (struct x_output): Remove members left_pos, top_pos,
13157 and line_height, and use corresponding new members in struct
13158 frame. All uses changed.
13159 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
13160 superseeded by corresponding macros in frame.h.
13161
13162 * msdos.c: Make (several) trivial substitutions for renamed and
13163 new macros in dispextern.h, frame.h and window.h.
13164 (IT_note_mouse_highlight): Use updated window coordinates returned
13165 by window_from_coordinates, rather than adjusting them locally.
13166 (internal_terminal_init): No need to initialize line_height here;
13167 it now defaults to 1.
13168
13169 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
13170
13171 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
13172 dropping `down' events.
13173
13174 2003-05-24 Andreas Schwab <schwab@suse.de>
13175
13176 * coding.c (find_safe_codings): Fix last change.
13177
13178 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
13179
13180 * xfns.c (x_window): Fix typo from 2003-05-21 change.
13181
13182 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
13183
13184 * xdisp.c (display_mode_element): Increase max depth.
13185 Simplify the error handling code. Use a different error string
13186 for the case where we hit the depth limit.
13187
13188 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
13189
13190 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
13191
13192 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
13193
13194 * intervals.c (get_local_map): Don't get char-property of previous
13195 point any more: get_pos_property already does it and better.
13196
13197 2003-05-21 Dave Love <fx@gnu.org>
13198
13199 [Merged from unicode branch.]
13200
13201 * xfns.c (x_window, x_window): Use use_xim.
13202
13203 * xterm.c (use_xim): Initialize.
13204 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
13205 (x_term_init): Maybe set use_xim.
13206
13207 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
13208
13209 2003-05-21 Jason Rumney <jasonr@gnu.org>
13210
13211 * unexw32.c (_start): Remove _fmode initialization.
13212
13213 * emacs.c (main) [WINDOWSNT]: Move it here.
13214
13215 2003-05-20 Dave Love <fx@gnu.org>
13216
13217 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
13218
13219 2003-05-19 Richard M. Stallman <rms@gnu.org>
13220
13221 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
13222 as value for QCfont attribute.
13223 (realize_default_face): lface should already exist; crash if not.
13224 Specify 0 for FORCE_P when calling set_lface_from_font_name.
13225
13226 * frame.c (Fignore_event): Doc fix.
13227
13228 2003-05-19 Kenichi Handa <handa@m17n.org>
13229
13230 * coding.c (decode_coding_string): Handle post-read-conversion
13231 even if the coding doesn't require decoding.
13232
13233 2003-05-18 Richard M. Stallman <rms@gnu.org>
13234
13235 * callproc.c (Fcall_process_region): Doc fix.
13236
13237 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
13238
13239 * lread.c (Fload): Print a message if package is obsolete.
13240
13241 * window.c (Fselect_window): Add optional `norecord' arg.
13242 (select_window_1): Fold into Fselect_window.
13243 (select_window_norecord): New function.
13244 (temp_output_buffer_show): Use it. Preserve current buffer.
13245
13246 * window.h (Fselect_window): Update declaration.
13247
13248 * window.c (delete_window, Fother_window, Fset_window_configuration):
13249 * minibuf.c (read_minibuf):
13250 * macterm.c (x_new_focus_frame):
13251 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
13252 * callint.c (Fcall_interactively):
13253 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
13254
13255 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
13256
13257 2003-05-17 David Kastrup <dak@gnu.org>
13258
13259 * process.c (read_process_output): Back out change from 2003-03-09.
13260
13261 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
13262
13263 * editfns.c (get_pos_property): Don't assume that `object' = nil.
13264
13265 * textprop.c (text_property_stickiness): New arg `buffer'.
13266
13267 * intervals.h (text_property_stickiness): New arg `buffer'.
13268 (get_pos_property): Declare.
13269
13270 * intervals.c (get_local_map): Use get_pos_property, to obey
13271 stickiness and empty overlays.
13272 (create_root_interval, graft_intervals_into_buffer): Use BEG.
13273 (merge_properties, intervals_equal, merge_properties_sticky):
13274 Use XCAR, XCDR.
13275 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
13276
13277 2003-05-17 Richard M. Stallman <rms@gnu.org>
13278
13279 * minibuf.c (read_minibuf): If buffer is empty, record the default
13280 in the history.
13281 (Fminibuffer_complete_word): When deleting the overlap, take account
13282 of its real position.
13283
13284 * fns.c (map_char_table): Fix previous change.
13285
13286 * syntax.c (find_defun_start):
13287 When open_paren_in_column_0_is_defun_start,
13288 return beginning of buffer.
13289
13290 * lisp.h (map_char_table): Declare added arg.
13291
13292 * fns.c (map_char_table): New arg TABLE gets the master table.
13293 All calls changed.
13294 Process default and inheritance, resorting to Faref if necessary.
13295
13296 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13297 (Faccessible_keymaps): Pass new arg to map_char_table.
13298
13299 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
13300
13301 * casetab.c (set_case_table): Pass new arg to map_char_table.
13302
13303 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
13304
13305 * lisp.h (specbinding_func): New typedef.
13306 (struct specbinding): Use specbinding_func, to put the `volatile'
13307 in the right place.
13308
13309 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
13310 to avoid GCC warning.
13311
13312 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
13313
13314 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
13315
13316 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
13317
13318 * keyboard.c (apply_modifiers): Don't fill the other cache.
13319
13320 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
13321
13322 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
13323
13324 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
13325 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
13326 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
13327 (Fset_window_configuration, Fcurrent_window_configuration)
13328 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
13329 (Fpos_visible_in_window_p, mark_window_cursors_off)
13330 (window_internal_height, window_internal_width, Frecenter)
13331 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
13332 (replace_buffer_in_all_windows, init_window_once, init_window)
13333 (syms_of_window, keys_of_window): Move from lisp.h.
13334 * lisp.h: Move window.c declarations to window.h.
13335
13336 * bytecode.c: Include window.h.
13337 * emacs.c: Include window.h.
13338
13339 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
13340 (keyremap): Add `parent' field.
13341 (keyremap_step): Use it. Remove `parent' argument.
13342 (read_key_sequence): Setup and use the new `parent' field.
13343
13344 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
13345
13346 * keyboard.c (adjust_point_for_property): Ensure termination.
13347
13348 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
13349
13350 * keyboard.c (follow_key): Remove dead variable `did_meta'.
13351 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
13352 duplicated handling of function-key-map and key-translation-map
13353 in read_key_sequence.
13354 (read_key_sequence): Use them.
13355
13356 * keyboard.c (adjust_point_for_property): Try harder to move point
13357 to the non-sticky end of an invisible property.
13358
13359 * xdisp.c (single_display_prop_intangible_p): Make `space' display
13360 property intangible as well.
13361
13362 2003-05-10 Andreas Schwab <schwab@suse.de>
13363
13364 * xmenu.c (single_menu_item): Change last parameter to void* to
13365 avoid warning.
13366
13367 2003-05-09 Richard M. Stallman <rms@gnu.org>
13368
13369 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
13370 Bind Qinhibit_modification_hooks to t so there will be no GC.
13371 Rename local `tem' to `save_deactivate_mark'.
13372
13373 * eval.c (specpdl_ptr): Declare volatile.
13374 (unbind_to): Copy the whole binding and decrement specpdl_ptr
13375 before doing the work of unbinding it.
13376
13377 * lisp.h (struct specbinding): Declare elements volatile.
13378 (specpdl_ptr): Declare volatile.
13379
13380 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
13381
13382 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
13383 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
13384
13385 2003-05-08 Dave Love <fx@gnu.org>
13386
13387 * coding.c (Vlast_coding_system_used): Doc fix.
13388
13389 2003-05-07 Jason Rumney <jasonr@gnu.org>
13390
13391 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
13392 when system does not support them.
13393
13394 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
13395
13396 * fileio.c (Qwrite_region_annotate_functions): New var.
13397 (build_annotations): Use it to process the global part of the hook.
13398 (syms_of_fileio): Init and staticpro it.
13399
13400 * keyboard.c (safe_run_hooks_error): Display a message instead of
13401 silently ignoring the error.
13402
13403 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
13404
13405 * keyboard.c (input_available_signal): Mark static.
13406 (menu_bar_items): Use map_keymap.
13407 (menu_bar_one_keymap): Remove.
13408 (menu_bar_item): Adjust arglist (for use in map_keymap).
13409 Properly hide a second binding when not both are keymaps.
13410
13411 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
13412 (single_keymap_panes): Use it and map_keymap.
13413 (single_menu_item): Use skp as well.
13414
13415 * keymap.h (map_keymap_function_t): New type.
13416 (map_keymap): Declare.
13417
13418 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
13419 (map_keymap_call, Fmap_keymap): New functions.
13420 (syms_of_keymap): Defsubr map-keymap.
13421
13422 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13423
13424 * gtkutil.c (create_dialog, make_widget_for_menu_item)
13425 (make_menu_item, create_menus, xg_update_menu_item): Don't call
13426 ..._with_mnemonic functions for menu items.
13427
13428 2003-05-01 Kenichi Handa <handa@m17n.org>
13429
13430 * coding.c (coding_system_accept_latin_extra_p): Delete this
13431 function.
13432 (find_safe_codings): Pay attention to
13433 the property tranlsation-table-for-encode of each codings.
13434 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
13435
13436 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
13437
13438 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
13439
13440 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
13441
13442 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
13443
13444 * lisp.h (CHECK): Wrap args in parenthesis.
13445 (specbind): Fix doc: symbol = Qnil is not supported any more.
13446
13447 * bytecode.c (Fbyte_code) <unwind-protect>:
13448 Use Fprogn rather than 0 and Qnil.
13449
13450 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
13451 `double', and `triple' modifiers as well.
13452
13453 2003-04-30 Richard M. Stallman <rms@gnu.org>
13454
13455 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
13456
13457 * alloc.c (abort_on_gc): New variable.
13458 (Fgarbage_collect): Abort if abort_on_gc is set.
13459
13460 * lisp.h (abort_on_gc): Add decl.
13461
13462 * eval.c (Fsignal): Clear abort_on_gc.
13463
13464 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
13465 Reinit FORMAT_START and END before second scan.
13466
13467 * xdisp.c (move_it_vertically_backward): Do the final big else
13468 even if nlines is 0.
13469
13470 * xdisp.c (redisplay_internal): Finish the per-frame loop
13471 even if redisplay is suspended by input.
13472
13473 2003-04-24 Andrew Choi <akochoi@shaw.ca>
13474
13475 * macterm.c (x_list_fonts): Return all fonts that match if
13476 maxnames = -1.
13477
13478 2003-04-25 Kenichi Handa <handa@m17n.org>
13479
13480 * syntax.c (skip_chars): Fix previous change.
13481
13482 2003-04-24 Kenichi Handa <handa@m17n.org>
13483
13484 * syntax.c (skip_chars): Make the code faster by using the common
13485 technique of *p, *stop, and *endp.
13486
13487 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13488
13489 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
13490 tool_bar_items so GTK tool bar expose callback does not access items
13491 being updated.
13492
13493 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
13494
13495 * eval.c (Fapply): Undo last change and add a comment about why.
13496
13497 2003-04-18 Miles Bader <miles@gnu.org>
13498
13499 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
13500 pickier PARSE_MULTIBYTE_SEQ.
13501
13502 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
13503
13504 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
13505 Use XCDR, XCAR, CONSP.
13506 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
13507 (Fapply): Remove unnecessary GCPRO.
13508
13509 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
13510
13511 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
13512
13513 * buffer.h: Don't hardcode BEG==1.
13514
13515 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
13516
13517 2003-04-16 Richard M. Stallman <rms@gnu.org>
13518
13519 * xdisp.c (try_window, try_window_reusing_current_matrix):
13520 When at end of window, set window_end_pos to Z-ZV.
13521
13522 * buffer.c (Foverlay_recenter): Doc fix.
13523
13524 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
13525
13526 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
13527
13528 2003-04-14 Andrew Choi <akochoi@shaw.ca>
13529
13530 * macterm.c (mac_check_for_quit_char): Don't check more often than
13531 once a second.
13532
13533 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
13534
13535 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
13536 specially, so that they can't hide an implicit switch-frame event.
13537 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
13538 (head_table): Use switch-frame as event_kind for select-window.
13539 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
13540
13541 * editfns.c (Fformat): Lisp_Object/int mixup.
13542 (format2): Remove unused var numargs.
13543
13544 2003-04-11 Kenichi Handa <handa@m17n.org>
13545
13546 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
13547 (Qafter_insert_file_set_coding): New variable.
13548 (syms_of_fileio): Initialize and staticpro it. Delete declaration
13549 for after-insert-file-adjust-coding-function.
13550 (Finsert_file_contents): Call Qafter_insert_file_set_coding
13551 instead of Vafter_insert_file_adjust_coding_function.
13552
13553 2003-04-11 Kenichi Handa <handa@m17n.org>
13554
13555 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
13556
13557 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
13558 string. Callers changed.
13559
13560 2003-04-10 Kenichi Handa <handa@m17n.org>
13561
13562 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
13563 (syms_of_fileio): Declare it as a lisp variable.
13564 (Finsert_file_contents):
13565 Call Vafter_insert_file_adjust_coding_function before calling
13566 decode-format.
13567
13568 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13569
13570 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
13571 get GtkAdjustment as widget now is a GtkRange.
13572
13573 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
13574 GtkRange to avoid memory leak.
13575
13576 2003-04-09 Kenichi Handa <handa@m17n.org>
13577
13578 * xfaces.c (Vface_font_rescale_alist): New variable.
13579 (struct font_name): New member rescale_ratio.
13580 (font_rescale_ratio): New function.
13581 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
13582 (better_font_p): On comparing point sized, pay attention to
13583 recale_ratio member of fonts.
13584 (build_scalable_font_name): Reflect font->rescale_ratio in the
13585 font name.
13586 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13587
13588 * lread.c (read1): Before calling index, check if the 2nd
13589 arguemnt is in ASCII range.
13590
13591 2003-04-08 Richard M. Stallman <rms@gnu.org>
13592
13593 * fileio.c (Ffile_symlink_p): Doc fix.
13594
13595 * editfns.c (Fformat): Translate positions of text properties
13596 in the format string to apply them to the result.
13597
13598 * fileio.c (Finsert_file_contents): Doc fix.
13599 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
13600
13601 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
13602
13603 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
13604
13605 2003-04-08 Steven Tamm <steventamm@mac.com>
13606
13607 * mac.c (init_mac_osx_environment): Switch libexec and bin so
13608 that self-contained application finds libexec files.
13609
13610 2003-04-08 Kenichi Handa <handa@m17n.org>
13611
13612 * coding.c (code_convert_region_unwind):
13613 Set Vlast_coding_system_used to the argument.
13614 (code_convert_region): If post-read-conversion function changed
13615 the value of last-coding-sytem, keep the new value in
13616 coding->symbol so that it won't be overridden.
13617 (run_pre_post_conversion_on_str): Likewise.
13618 (coding_system_accept_latin_extra_p): New function.
13619 (find_safe_codings): Pay attention to characters registered in
13620 latin-extra-code-table.
13621
13622 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
13623
13624 * Makefile.in (md5.o): Add missing dependency info.
13625
13626 2003-04-06 Richard M. Stallman <rms@gnu.org>
13627
13628 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
13629
13630 * marker.c (verify_bytepos): New function.
13631
13632 * intervals.c (set_intervals_multibyte_1): When becoming
13633 multibyte, adjust right and left child sizes to a whole set of
13634 characters. If an interval gets zero total-length, delete it.
13635 If an interval consists of just its children, delete one of them.
13636
13637 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
13638 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
13639
13640 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
13641 All calls deleted.
13642 (lisp_malloc): Do the work here directly.
13643
13644 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
13645
13646 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
13647 char tables.
13648
13649 2003-04-04 Kenichi Handa <handa@m17n.org>
13650
13651 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
13652 destructively change "%S" to "%s".
13653
13654 2003-04-03 Miles Bader <miles@gnu.org>
13655
13656 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
13657 always set.
13658
13659 2003-04-01 Dave Love <fx@gnu.org>
13660
13661 * xfns.c (xpm_lookup_color): Grok "opaque".
13662
13663 2003-03-31 Andrew Choi <akochoi@shaw.ca>
13664
13665 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
13666 parent window ID.
13667
13668 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
13669
13670 * macterm.h (struct mac_output): Define x_pixels_diff and
13671 y_pixels_diff.
13672
13673 2003-03-31 Juanma Barranquero <lektu@terra.es>
13674
13675 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
13676 blockinput.h and files included from it.
13677
13678 2003-03-31 Kim F. Storm <storm@cua.dk>
13679
13680 The following changes consolidates the common code related to
13681 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
13682 files into frame.c.
13683
13684 * frame.c: Include blockinput.h.
13685 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
13686 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
13687 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
13688 related vars here.
13689 (struct frame_parm_table, frame_parms): New table for describing
13690 frame parameters and their associated Q-variable.
13691 The order of the parameters corresponds to the sequence of the
13692 frame_parm_handlers table in redisplay_interface.
13693 (x_fullscreen_move, x_set_frame_parameters)
13694 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
13695 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
13696 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13697 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
13698 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
13699 Generic functions for processing of frame parameters.
13700 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
13701 (display_x_get_resource, x_get_resource_string): Functions for
13702 generic access to X resources.
13703 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13704 (x_default_parameter, Fx_parse_geometry): Functions for generic
13705 access to frame parameters.
13706 (x_figure_window_size): Generic calculation of frame size.
13707 Fixed to add space needed for tool bar. Also setup size_hint_flags.
13708 (syms_of_frame): Intern and staticpro frame parameter variables.
13709 Defvar_lisp Vx_resource_class and Vx_resource_name here.
13710 Defsubr Sx_get_resource and Sx_parse_geometry.
13711
13712 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
13713 parameter related vars defined in frame.c.
13714 (EMACS_CLASS): Define here.
13715 (enum FULLSCREEN_*): Define here.
13716 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
13717 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
13718 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
13719 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
13720 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
13721 (x_set_visibility, x_set_autoraise, x_set_autolower)
13722 (x_set_unsplittable, x_set_vertical_scroll_bars)
13723 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
13724 (x_figure_window_size): Add prototypes.
13725
13726 * dispextern.h (frame_parm_handler): New typedef.
13727 (struct redisplay_interface): New member frame_parm_handlers.
13728 (enum resource_types): Move declaration here.
13729 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13730 (x_default_parameter): Add prototypes.
13731
13732 * window.c: Remove extern decl for frame parameter vars.
13733 (change_window_heights): New generic function;
13734 replaces x_change_window_heights. All users changed.
13735
13736 * window.h (change_window_heights): Add prototype.
13737
13738 * xfaces.c: Remove extern decl for frame parameter vars.
13739
13740 * xterm.h (EMACS_CLASS): Remove. Use generic define.
13741 (struct w32_display_info): Fix type of xrdb member.
13742 (enum FULLSCREEN_*): Remove.
13743 Remove prototypes for generic functions (in frame.h).
13744
13745 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13746 parameters now defined in frame.h and frame.c.
13747 (Vx_resource_name): Remove. Use generic var.
13748 (enum x_frame_parms): Remove (bogus, unused enum).
13749 (check_x_display_info): Make non-static (for frame.c).
13750 (struct x_frame_parm_table, x_frame_parms): Remove.
13751 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13752 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13753 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13754 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13755 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13756 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13757 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13758 Remove. Use generic functions instead.
13759 (enum resource_types): Remove.
13760 (x_set_scroll_bar_default_width): New global function (for frame.c).
13761 (Fx_create_frame): Depend on x_figure_window_size to add space for
13762 toolbar and setup size_hint_flags.
13763 (x_frame_parm_handlers): New table for redisplay_interface.
13764 (syms_of_xfns): Don't intern/staticpro removed vars.
13765
13766 * xterm.c: Remove unnecessary extern declarations.
13767 (x_fullscreen_adjust): Remove. Use generic instead.
13768 (x_redisplay_interface): Add x_frame_parm_handlers member.
13769
13770 * w32gui.h (XrmDatabase): New (dummy) typedef.
13771
13772 * w32term.h (EMACS_CLASS): Remove. Use generic define.
13773 (struct w32_display_info): Fix type of xrdb member.
13774 (enum FULLSCREEN_*): Remove.
13775 (x_fullscreen_adjust): Remove prototype.
13776
13777 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13778 parameters now defined in frame.h and frame.c.
13779 (Vx_resource_name): Remove. Use generic var.
13780 (enum x_frame_parms): Remove (bogus, unused enum).
13781 (check_x_display_info): Make non-static (for frame.c).
13782 (struct x_frame_parm_table, x_frame_parms): Remove.
13783 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13784 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13785 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13786 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13787 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13788 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13789 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13790 Remove. Use generic functions instead.
13791 (enum resource_types): Remove.
13792 (x_set_scroll_bar_default_width): New global function (for frame.c).
13793 (Fx_create_frame): Depend on x_figure_window_size to add space for
13794 toolbar and setup size_hint_flags.
13795 (w32_frame_parm_handlers): New table for redisplay_interface.
13796 (syms_of_w32fns): Don't intern/staticpro removed vars.
13797
13798 * w32term.c: Remove unnecessary extern declarations.
13799 (x_fullscreen_adjust): Remove. Use generic instead.
13800 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13801
13802 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13803
13804 * macgui.h (XrmDatabase): New (dummy) typedef.
13805
13806 * macterm.h (EMACS_CLASS): Remove.
13807 (struct mac_display_info): Add xrdb member.
13808 (struct mac_output): Add want_fullscreen member.
13809
13810 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13811 parameters now defined in frame.h and frame.c.
13812 (Vx_resource_name): Remove. Use generic var.
13813 (check_x_display_info): Make non-static (for frame.c).
13814 (struct x_frame_parm_table, x_frame_parms): Remove.
13815 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13816 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13817 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13818 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13819 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13820 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13821 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13822 Remove. Use generic functions instead.
13823 (enum resource_types): Remove.
13824 (x_set_scroll_bar_default_width): New global function (for frame.c).
13825 (mac_frame_parm_handlers): New table for redisplay_interface.
13826 (syms_of_macfns): Don't intern/staticpro removed vars.
13827
13828 * macterm.c: Remove unnecessary extern declarations.
13829 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13830
13831 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13832 included from it (atimer.h and systime.h).
13833
13834 2003-03-30 Andreas Schwab <schwab@suse.de>
13835
13836 * xdisp.c (x_insert_glyphs): Fix swapped width and height
13837 parameters for shift_glyphs_for_insert.
13838
13839 * macterm.c (x_redisplay_interface): Add missing entry for
13840 draw_vertical_window_border.
13841
13842 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13843
13844 * fileio.c (Fexpand_file_name): In the no-handler case, after
13845 expanding, look again for a handler and invoke it. This is needed
13846 for filenames like "/foo/../user@host:/bar/../baz" -- the first
13847 expansion produces "/user@host:/bar/../baz" which needs to be
13848 expanded again for the finame result "/user@host:/baz".
13849
13850 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13851
13852 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
13853 of area to be redrawn for better performance.
13854
13855 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
13856
13857 * xterm.c (take_vertical_position_into_account): Remove.
13858 (xt_action_hook): Call set_vertical_scroll_bar if needed.
13859 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
13860 (xm_scroll_callback, x_create_toolkit_scroll_bar)
13861 (x_set_toolkit_scroll_bar_thumb): Simplify.
13862 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
13863 (XTread_socket): Remove unused var.
13864 (x_make_frame_invisible): Replace goto with else.
13865
13866 * xdisp.c (set_vertical_scroll_bar): New fun.
13867 (redisplay_window): Use it.
13868
13869 2003-03-26 Richard M. Stallman <rms@gnu.org>
13870
13871 * xdisp.c (update_tool_bar): Recompute tool bar if
13872 update_mode_lines is set. Set w->update_mode_line
13873 only if the tool bar contents actually change.
13874 (update_menu_bar): Undo previous change.
13875
13876 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13877
13878 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
13879 (xg_frame_set_char_size): Calculate scroll bar width before frame
13880 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
13881 (xg_separator_p): Check for all documented separator types.
13882 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
13883 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
13884
13885 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
13886 so tool bar gets updated.
13887
13888 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
13889
13890 * data.c (store_symval_forwarding): Re-instate part of the code
13891 that was deleted with too much enthusiasm.
13892
13893 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
13894
13895 * data.c (store_symval_forwarding): Delete special read-only
13896 hack for type == -1, since we now use ->constant instead.
13897 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
13898
13899 * buffer.c (overlays_in): Declare static.
13900 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
13901 `constant' field rather than the variable's `type' field.
13902
13903 2003-03-24 Andrew Choi <akochoi@shaw.ca>
13904
13905 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
13906
13907 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
13908
13909 * fns.c [MAC_OSX]: Do not redefine vector.
13910
13911 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
13912
13913 * macgui.h: Remove definition of No_Cursor.
13914
13915 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
13916
13917 * xdisp.c: Define No_Cursor.
13918 (x_write_glyphs, notice_overwritten_cursor)
13919 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
13920 (note_mouse_highlight): Remove Mac-specific code.
13921 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
13922
13923 2003-03-24 John Paul Wallington <jpw@gnu.org>
13924
13925 * xdisp.c (redisplay_window): If mini window's buffer is not
13926 empty, then redisplay it like other windows.
13927
13928 2003-03-23 Kim F. Storm <storm@cua.dk>
13929
13930 * w32term.c (w32_draw_window_cursor): Fix last change.
13931
13932 2003-03-23 Kenichi Handa <handa@m17n.org>
13933
13934 * alloc.c (make_string_from_bytes, make_specified_string):
13935 Add `const' for the arg CONTENTS.
13936
13937 * lisp.h (make_string_from_bytes, make_specified_string):
13938 Prototypes adjusted.
13939
13940 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13941
13942 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
13943
13944 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
13945 (XG_SB_RANGE): New define.
13946
13947 * gtkutil.c (xg_fixed_handle_expose): New function.
13948 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
13949 expose events.
13950 (xg_update_scrollbar_pos): Take two more arguments, left and width
13951 of scroll bar including borders.
13952 Clear left and right part outside scroll bar separately as some
13953 themes have bars that are not an even number of pixels.
13954 Don't set reallocate_redraws, don't call
13955 gdk_window_process_all_updates.
13956 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
13957 so no need to change it. Calculate size and value with XG_SB_RANGE.
13958
13959 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
13960 Pass left and width of scroll bar including borders to
13961 xg_update_scrollbar_pos.
13962
13963 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
13964
13965 * Makefile.in: Make sure space precedes end-of-line backslashes.
13966
13967 2003-03-22 Kim F. Storm <storm@cua.dk>
13968
13969 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
13970 Add generic versions here. Remove system specific versions
13971 defined elsewhere.
13972
13973 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
13974 Add prototypes.
13975
13976 * xterm.h (STORE_NATIVE_RECT): New macro.
13977
13978 2003-03-21 Kim F. Storm <storm@cua.dk>
13979
13980 * xdisp.c (get_glyph_string_clip_rect):
13981 Use FRAME_INTERNAL_BORDER_WIDTH.
13982
13983 * dispextern.h (struct redisplay_interface): Add active_p
13984 argument to draw_window_cursor member. All uses changed.
13985
13986 2003-03-21 Kim F. Storm <storm@cua.dk>
13987
13988 The following changes consolidate code related to writing and
13989 inserting glyphs, exposing frame, the tool bar, the mouse face,
13990 the output cursor, and help echo from xterm.c, w32term.c and
13991 macterm.c into xdisp.c. It also generalizes the use of the
13992 window_part enum instead of using numeric values throughout.
13993
13994 * xdisp.c: Consolidate gui-independent code here.
13995 Include keymap.h.
13996 (Qhelp_echo): Import.
13997 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
13998 (help_echo_string, help_echo_window, help_echo_object)
13999 (previous_help_echo_string, help_echo_pos): Declare here.
14000 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
14001 (estimate_mode_line_height): Define here. Handle windowing
14002 systems directly (without using estimate_mode_line_height_hook).
14003 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
14004 (update_window_cursor, update_cursor_in_window_tree)
14005 (fast_find_position, fast_find_string_pos)
14006 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
14007 (expose_area, expose_line, expose_overlaps, expose_window)
14008 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
14009 declared static as they are only used locally in xdisp.c.
14010 (draw_glyphs): Rename from x_draw_glyphs and make static.
14011 (tool_bar_item_info, notice_overwritten_cursor): Make static.
14012 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
14013 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
14014 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
14015 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
14016 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
14017 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
14018 (note_mouse_highlight, x_clear_window_mouse_face)
14019 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
14020 (x_intersect_rectangles): New generic functions for use by xdisp.c
14021 and GUI front-ends.
14022 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
14023 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
14024
14025 * dispextern.h (Display_Info): Generic typedef for *_display_info.
14026 (NativeRectangle): Generic typedef for rectangle type.
14027 (enum window_part): Move here from window.c.
14028 (struct redisplay_interface): New members flush_display_optional,
14029 define_frame_cursor, clear_frame_area, draw_window_cursor,
14030 draw_vertical_window_border, shift_glyphs_for_insert.
14031 Rename member clear_mouse_face to clear_window_mouse_face.
14032 (estimate_mode_line_height_hook): Remove hook.
14033 (auto_raise_tool_bar_buttons_p): Don't declare extern.
14034 (tool_bar_item_info): Remove prototype.
14035 (help_echo_string, help_echo_window, help_echo_object)
14036 (previous_help_echo_string, help_echo_pos)
14037 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
14038 (x_stretch_cursor_p, output_cursor): Declare extern.
14039 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
14040 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
14041 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
14042 (display_and_set_cursor, set_output_cursor, x_cursor_to)
14043 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
14044 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
14045 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
14046 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
14047 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
14048 Add prototypes.
14049 (mode_line_string, marginal_area_string): Fix prototypes.
14050
14051 * window.c (enum window_part): Move to dispextern.h.
14052 (coordinates_in_window): Use enum window_part member names
14053 instead of numbers to describe return value.
14054 (struct check_window_data): Change part member to window_part.
14055 (check_window_containing): Return window_part unaltered.
14056 (window_from_coordinates): Change part arg from int to enum
14057 window_part. Allow part arg to be null. All users changed.
14058
14059 * window.h (window_from_coordinates): Fix prototype.
14060
14061 * term.c (estimate_mode_line_height): Move to xdisp.c.
14062
14063 * keyboard.c (make_lispy_event): Use enum window_part.
14064
14065 * dispnew.c (mode_line_string, marginal_area_string): Use enum
14066 window_part instead of int in arg list. Users changed.
14067
14068 * xterm.h (No_Cursor): Declare as None for X.
14069 (struct mac_output): Replace member cross_cursor by hand_cursor.
14070
14071 * xterm.c: Remove consolidated defines and code.
14072 (BETWEEN): Remove unused macro.
14073 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
14074 (x_define_frame_cursor, x_clear_frame_area)
14075 (x_draw_window_cursor): New X-specific functions for RIF.
14076 (x_redisplay_interface): Add new members.
14077
14078 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
14079
14080 * w32term.h (struct w32_output): Remove cross_cursor member.
14081
14082 * w32term.c: Remove consolidated defines and code.
14083 (BETWEEN): Remove unused macro.
14084 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
14085 (w32_define_frame_cursor, w32_clear_frame_area)
14086 (w32_draw_window_cursor): New W32-specific functions for RIF.
14087 (w32_redisplay_interface): Add new members.
14088
14089 * w32gui.h (No_Cursor): Define as 0 for W32.
14090 (XRectangle): Add X compatible rectangle type.
14091 (NativeRectangle): Declare as RECT for W32.
14092 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
14093
14094 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
14095
14096 * w32console.c: Remove consolidated defines and code.
14097
14098 * msdos.h (Display_Info): Add generic typedef.
14099
14100 * msdos.c: Remove consolidated defines and code.
14101 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
14102
14103 * macterm.h (struct mac_output): Replace member cross_cursor by
14104 hand_cursor.
14105 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
14106
14107 * macterm.c: Remove consolidated defines and code.
14108 (BETWEEN): Remove unused macro.
14109 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
14110 (mac_define_frame_cursor, mac_clear_frame_area)
14111 (mac_draw_window_cursor): New Mac-specific functions for RIF.
14112 (x_redisplay_interface): Add new members.
14113
14114 * macgui.h (No_Cursor): Define as 0 for Mac.
14115 (XRectangle): Add X compatible rectangle type.
14116 (NativeRectangle): Declare as Rect for Mac.
14117 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
14118
14119 * macfns.c (x_set_mouse_color): Setup hand_cursor.
14120 (x_set_cursor_color): Use x_display_and_set_cursor.
14121
14122 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
14123 included from it. Add dependency on keymap.h.
14124
14125 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
14126
14127 2003-03-21 Kenichi Handa <handa@m17n.org>
14128
14129 * fileio.c (Fexpand_file_name): Fix previous change.
14130
14131 2003-03-19 Kenichi Handa <handa@m17n.org>
14132
14133 * fileio.c (Ffile_name_directory): Reconstruct file name by
14134 make_specified_string.
14135 (Ffile_name_nondirectory, Ffile_name_as_directory)
14136 (Fdirectory_file_name, Fexpand_file_name)
14137 (Fsubstitute_in_file_name): Likewise.
14138 (Fread_file_name): Compare decoded homedir with DIR and
14139 DEFAULT_FILENAME.
14140
14141 * alloc.c (make_specified_string): If NCHARS is negative, count
14142 the number of characters.
14143
14144 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14145
14146 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
14147 all widgets.
14148
14149 * gtkutil.h: Removed xg_ignore_next_thumb.
14150
14151 2003-03-18 Kenichi Handa <handa@m17n.org>
14152
14153 * coding.c (Vchar_coding_system_table): Remove this variable.
14154 (Vcoding_system_safe_chars): New variable.
14155 (intersection): Remove this function.
14156 (find_safe_codings): Don't use Vchar_coding_system_table, but try
14157 all codings in SAFE_CODINGS.
14158 (Ffind_coding_systems_region_internal): Adjust for the change of
14159 find_safe_codings. Get generic coding systems from
14160 Vcoding_system_safe_chars.
14161 (Fdefine_coding_system_internal): New function.
14162 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
14163 Initialize and staticpro Vcoding_system_safe_chars.
14164
14165 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14166
14167 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
14168 equal old values before updating.
14169
14170 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
14171
14172 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
14173
14174 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14175
14176 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
14177 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
14178 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
14179 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
14180 (xg_create_scroll_bar): Pass bar to button event callback.
14181 (xg_find_top_left_in_fixed): New function.
14182 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
14183 whole scroll bar area. Get old position with
14184 xg_find_top_left_in_fixed, calculate and only clear needed areas.
14185 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
14186 dragging is in progress. Calculate whole as for Motif.
14187 Remove code that saved last values. Call gtk_range functions to
14188 set scroll bar sizes.
14189
14190 * gtkutil.h: Removed xg_ignore_next_thumb.
14191
14192 2003-03-17 Juanma Barranquero <lektu@terra.es>
14193
14194 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
14195 and files included from it.
14196
14197 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
14198
14199 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
14200 multiple occurrences of the same keymap under different prefixes.
14201 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
14202
14203 2003-03-16 Jason Rumney <jasonr@gnu.org>
14204
14205 * w32gui.h: Use HDC for Display.
14206
14207 * w32term.c (w32_encode_char): Prevent double-byte chars from
14208 crashing Emacs.
14209
14210 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
14211 as binary.
14212
14213 2003-03-16 Juanma Barranquero <lektu@terra.es>
14214
14215 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
14216
14217 2003-03-16 Kim F. Storm <storm@cua.dk>
14218
14219 The following changes consolidate some of the gui-independent
14220 parts of the processing and drawing of "glyph strings" from
14221 xterm.c, w32term.c, and macterm.c into xdisp.c.
14222
14223 * dispextern.h (struct glyph): Reduce face_id member from 22 to
14224 21 bits (this reduces number of faces from 4M to 2M).
14225 Replace W32 specific w32_font_type member (2 bits) by generic
14226 font_type member (3 bits) for portability.
14227 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
14228 (enum draw_glyphs_face): Define here.
14229 (struct glyph_string): Define here. Merge W32 and X versions.
14230 (struct redisplay_interface): New members per_char_metric,
14231 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
14232 (VCENTER_BASELINE_OFFSET): Define here.
14233 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
14234 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
14235
14236 * xdisp.c: Consolidate gui-independent "glyph string" code here.
14237 (dump_glyph_string): Moved here.
14238 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
14239 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
14240 (fill_composite_glyph_string, fill_glyph_string)
14241 (fill_image_glyph_string, fill_stretch_glyph_string)
14242 (left_overwritten, left_overwriting, right_overwritten)
14243 (right_overwriting, get_char_face_and_encoding)
14244 (set_glyph_string_background_width, compute_overhangs_and_x)
14245 (append_glyph, append_composite_glyph, produce_image_glyph)
14246 (take_vertical_position_into_account, append_stretch_glyph)
14247 (produce_stretch_glyph): New generic functions (based on X version).
14248 Call platform specific functions through rif.
14249 (INIT_GLYPH_STRING): New macro, hides W32 details.
14250 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
14251 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
14252 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
14253 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
14254 (notice_overwritten_cursor):
14255 Generic functions exported to platform modules. Users changed.
14256
14257 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
14258 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
14259 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
14260 New macros for consolidated code.
14261
14262 * xterm.c: Remove consolidated defines and code.
14263 (x_per_char_metric, x_encode_char)
14264 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
14265 (x_redisplay_interface): Add new members.
14266
14267 * w32gui.h (Display): Add dummy typedef for consolidation.
14268 (XChar2b): Define alias for wchar_t for consolidation.
14269 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
14270
14271 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
14272 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
14273 New macros for consolidation.
14274
14275 * w32term.c: Remove consolidated defines and code.
14276 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
14277 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
14278 (w32_per_char_metric): Change font_type arg to int for RIF.
14279 (w32_encode_char): Return int according to RIF requirements.
14280 (w32_compute_glyph_string_overhangs): Adapt to RIF.
14281 (w32_get_glyph_overhangs): New function for RIF. Uses generic
14282 x_get_glyph_overhangs.
14283 (w32_redisplay_interface): Add new members.
14284
14285 * macgui.h (XChar2b): Move typedef here for consolidation.
14286 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
14287
14288 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
14289 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
14290 consolidation.
14291
14292 * macterm.c: Remove consolidated defines and code.
14293 (mac_per_char_metric): New function for RIF.
14294 (mac_encode_char): Adapt to new RIF requirements.
14295 (mac_compute_glyph_string_overhangs): Adapt for RIF.
14296 (x_redisplay_interface): Add new members.
14297
14298 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
14299
14300 * keymap.c (Vmenu_events): New var.
14301 (syms_of_keymap): Initialize it.
14302 (where_is_internal): Check more carefully what is a menu event.
14303
14304 2003-03-14 Richard M. Stallman <rms@gnu.org>
14305
14306 * lread.c (read1): After #!, exit loop on eof.
14307
14308 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14309
14310 * gtkutil.h: Add declaration for xg_frame_cleared.
14311
14312 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
14313
14314 * gtkutil.c (struct xg_last_sb_pos): New structure.
14315 (handle_fixed_child): New function.
14316 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
14317 and force a redraw on them.
14318 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
14319 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
14320 so we can avoid unneeded redraws.
14321 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
14322 and force a redraw on the scroll bar.
14323 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
14324 if xg_last_sb_pos shows the positions are up to date.
14325 (xg_frame_cleared): New function.
14326
14327 2003-03-13 Kenichi Handa <handa@m17n.org>
14328
14329 * coding.c (Fdetect_coding_region): Fix docstring.
14330 (Fdetect_coding_string): Fix docstring.
14331
14332 2003-03-13 Andreas Schwab <schwab@suse.de>
14333
14334 * gtkutil.c: Add prototype for create_menus.
14335
14336 * data.c (long_to_cons): Fix type of top.
14337
14338 * xselect.c (selection_data_to_lisp_data): Use int instead of
14339 long for an integer of size 4.
14340
14341 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
14342 (xg_tool_bar_help_callback): Likewise.
14343
14344 2003-03-12 Andreas Schwab <schwab@suse.de>
14345
14346 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
14347
14348 2003-03-12 Kim F. Storm <storm@cua.dk>
14349
14350 The following changes consolidate the fringe handling from
14351 xterm.c, w32term.c, and macterm.c into xdisp.c.
14352
14353 * xdisp.c: Consolidate fringe handling code here.
14354 (left_bits, right_bits, continued_bits, continuation_bits)
14355 (ov_bits, zv_bits): Define fringe bitmaps.
14356 (fringe_bitmaps): New array holding fringe bitmaps.
14357 (draw_fringe_bitmap): Draw a specific bitmap; call display
14358 specific drawing routine via rif->draw_fringe_bitmap.
14359 (draw_row_fringe_bitmaps): Generic replacement for
14360 x_draw_row_fringe_bitmaps; all callers changed.
14361 (compute_fringe_widths): Generic replacement for
14362 x_compute_fringe_widths; all callers changed.
14363
14364 * dispextern.h (enum fringe_bitmap_type): Define here.
14365 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
14366 (fringe_bitmaps): Declare extern.
14367 (struct redisplay_interface): New member draw_fringe_bitmap.
14368 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
14369
14370 * xterm.c: Remove generic fringe code.
14371 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14372 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14373
14374 * w32term.c: Remove generic fringe code.
14375 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
14376 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
14377
14378 * macterm.c: Remove generic fringe code.
14379 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14380 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14381
14382 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
14383
14384 * print.c (Fprin1_to_string): Return unibyte string if possible.
14385
14386 2003-03-09 David Kastrup <dak@gnu.org>
14387
14388 * process.c (read_process_output): We have allocated enough space
14389 for readmax and carryover, so actually use the alloted space.
14390
14391 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14392
14393 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
14394 toolkit scrollbar click.
14395
14396 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
14397 for USE_GTK.
14398 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
14399 also.
14400 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
14401 scrollbar and control is pressed, call x_scroll_bar_handle_click.
14402
14403 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
14404
14405 * gtkutil.c (xg_get_scroll_id_for_window): New function.
14406 (xg_tool_bar_item_expose_callback): New function.
14407 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
14408 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
14409 on the tool bar widget.
14410 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
14411 to expose on the tool bar item widgets.
14412
14413 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14414
14415 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
14416 struct image* when deciding to update (struct image* may have been
14417 deleted from the image cache).
14418
14419 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
14420 the event isn't for a frame (i.e. for dialogs).
14421
14422 2003-03-07 Kenichi Handa <handa@m17n.org>
14423
14424 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
14425 composition components reaches the limit, terminate composing.
14426 (COMPOSITION_OK): New macro.
14427 (detect_coding_iso2022): Use it if an escape sequence for
14428 composition is found.
14429 (coding_restore_composition): Adjust the number of composition
14430 components if it is not sane.
14431
14432 2003-03-06 Juanma Barranquero <lektu@terra.es>
14433
14434 * w32term.h (struct w32_display_info): Add xrdb member to support
14435 passing resources via -xrm on Windows.
14436
14437 * w32term.c (w32_make_rdb): New function.
14438 (w32_term_init): Use it to initialize xrdb member of w32_display_info
14439 struct. Delete leftover code.
14440
14441 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
14442 for resources passed on the command line.
14443
14444 * w32reg.c (w32_get_rdb_resource): New function.
14445 (x_get_string_resource): Use it, so resources passed with -xrm
14446 supercede the ones in the registry.
14447
14448 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14449
14450 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
14451 instead of x_top_window_to_frame.
14452
14453 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14454
14455 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
14456 when restarting Emacs.
14457
14458 2003-03-03 Richard M. Stallman <rms@gnu.org>
14459
14460 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
14461 to run kill-buffer-query-functions.
14462 (Qkill_buffer_query_functions): New var.
14463 (syms_of_buffer): Init and staticpro it.
14464
14465 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14466
14467 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
14468
14469 2003-02-25 Kim F. Storm <storm@cua.dk>
14470
14471 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
14472 If centering point failed to make whole line visible and vscroll
14473 is non-zero, disable vscroll and try centering point again.
14474
14475 * lread.c (read1): Accept `single space' syntax like (? x).
14476
14477 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14478
14479 * keyboard.c (cancel_hourglass_unwind): Surround with
14480 #ifdef HAVE_X_WINDOWS
14481
14482 2003-02-25 Kenichi Handa <handa@m17n.org>
14483
14484 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
14485 process only when "subprocesses" is defined.
14486
14487 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
14488
14489 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
14490
14491 2003-02-24 Juanma Barranquero <lektu@terra.es>
14492
14493 * callint.c (fix_command): Declare as static void and move before
14494 Fcall_interactively.
14495
14496 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
14497 (syms_of_xdisp): Don't initialize Qwhen.
14498
14499 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14500
14501 * keyboard.c (cancel_hourglass_unwind): New function.
14502 (command_loop_1): Cancel hourglass with unwind-protect.
14503
14504 2003-02-23 Richard M. Stallman <rms@gnu.org>
14505
14506 * callint.c (fix_command): New subroutine, from Fcall_interactively.
14507 Detect (when ... (region-beginning)) etc.
14508 (Fcall_interactively): Call fix_command.
14509 (Qif, Qwhen): New variables.
14510 (syms_of_callint): Init and staticpro them.
14511
14512 * regex.c (print_partial_compiled_pattern): Output to stderr.
14513
14514 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14515
14516 * dired.c (directory_files_internal): Don't expand directory.
14517 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
14518 instead. From Lars Hansen <larsh@math.ku.dk>.
14519
14520 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
14521
14522 * fns.c (string_to_multibyte): Remove unused var i.
14523 (Flanginfo): Fix int/Lisp_Object mixup.
14524 (void_call2): New fun.
14525 (Fmap_char_table): Use it in place of call2.
14526
14527 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
14528
14529 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
14530
14531 * keymap.c (copy_keymap_1): Make it static.
14532
14533 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
14534
14535 2003-02-22 David Ponce <david@dponce.com>
14536
14537 * lread.c (Fload): Don't check STRING_MULTIBYTE.
14538
14539 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14540
14541 * process.h: Removed subtty field from struct Lisp_Process.
14542
14543 * process.c (create_process): Remove setting of subtty.
14544 (emacs_get_tty_pgrp): New function.
14545 (Fprocess_running_child_p, process_send_signal):
14546 Call emacs_get_tty_pgrp instead of ioctl.
14547 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
14548
14549 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14550
14551 * keymap.c (Fdefine_key): Doc fix.
14552
14553 2003-02-21 Juanma Barranquero <lektu@terra.es>
14554
14555 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
14556
14557 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
14558 POLLING_PROBLEM_IN_SELECT.
14559
14560 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
14561 Delete #undef of POLLING_PROBLEM_IN_SELECT.
14562
14563 * s/hpux10-20.h: New file.
14564
14565 * process.c (wait_reading_process_input):
14566 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
14567
14568 2003-02-20 Kenichi Handa <handa@m17n.org>
14569
14570 * fontset.c (check_fontset_name): If NAME is nil, return the
14571 default fontset.
14572 (override_font_info): New function.
14573 (Fset_fontset_font): Document that NAME nil means the default fontset.
14574 (Ffontset_info): If FONTSET is not the default fontset, merge
14575 FONTSET onto the copy of the default fontset, and work on that
14576 copy. Document that NAME nil means the default fontset.
14577 (Ffontset_font): Document that NAME nil means the default fontset.
14578
14579 * process.c (setup_process_coding_systems): If the process's
14580 in/out descriptor is -1, do nothing.
14581
14582 2003-02-19 Andreas Schwab <schwab@suse.de>
14583
14584 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
14585 Add prototypes.
14586
14587 2003-02-19 Kenichi Handa <handa@m17n.org>
14588
14589 * xfaces.c (try_alternative_families): Try all scalable fonts if
14590 Vscalable_fonts_allowed is not Qt.
14591
14592 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14593
14594 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
14595
14596 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14597
14598 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
14599 names.
14600
14601 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
14602 (sorted_font_list): Move allocation of struct font_name to
14603 x_face_list_fonts.
14604 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
14605 (Fx_list_fonts): Set maxnames to -1 to get all font names.
14606
14607 2003-02-18 Kim F. Storm <storm@cua.dk>
14608
14609 * lread.c (read1): Fix last change.
14610 "`" is not always special. Allow "?" after a character constant.
14611
14612 2003-02-18 Andrew Choi <akochoi@shaw.ca>
14613
14614 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
14615
14616 2003-02-18 Andreas Schwab <schwab@suse.de>
14617
14618 * window.c (window_scroll_pixel_based): Move outside a
14619 multi-glyph character before setting new window start.
14620
14621 * xdisp.c (in_display_vector_p): New function.
14622 * dispextern.h (in_display_vector_p): Declare.
14623
14624 2003-02-18 Kim F. Storm <storm@cua.dk>
14625
14626 * lread.c (read1): Fix and relax read syntax.
14627 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
14628 Only recognize "," after dotted-pair dot if inside backquote.
14629 Never include "`" or "," (inside backquote) in a symbol.
14630 Allow dotted-pair dot after a character constant.
14631 Allow "`" and "," (inside backquote) after a character constant.
14632
14633 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14634
14635 * gtkutil.c (xg_tool_bar_expose_callback): New function.
14636 (xg_create_tool_bar): Force style of tool bar to be horizontal with
14637 icons. Set name of tool bar to emacs-toolbar.
14638 (update_frame_tool_bar): Connect expose event to
14639 xg_tool_bar_expose_callback.
14640
14641 2003-02-17 Richard M. Stallman <rms@gnu.org>
14642
14643 * keyboard.c (this_command_key_count_reset): New variable.
14644 Initiatize to 0 where this_command_key_count is set.
14645 (read_char): Save and restore this_command_key_count_reset
14646 around input method code.
14647 (read_char): If this_command_key_count_reset, echo reread commands.
14648 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
14649
14650 2003-02-17 Kenichi Handa <handa@m17n.org>
14651
14652 * fns.c (string_to_multibyte): Always return a multibyte string.
14653
14654 2003-02-16 Jason Rumney <jasonr@gnu.org>
14655
14656 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
14657 Negative max_fonts parameter means list all.
14658
14659 2003-02-14 Dave Love <fx@gnu.org>
14660
14661 * fns.c (Flanginfo): Doc fix.
14662
14663 2003-02-13 Kim F. Storm <storm@cua.dk>
14664
14665 * lread.c (read_escape): Interpret \s as a SPACE character, except
14666 for \s-X in a character constant which still is the super modifier.
14667 (read1): Signal an `invalid read syntax' error if a character
14668 constant is immediately followed by a digit or symbol character.
14669
14670 * search.c (Fmatch_data): Doc fix. Explicitly state that
14671 match-data is undefined if last search failed.
14672
14673 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
14674 All uses changed.
14675
14676 2003-02-12 Juanma Barranquero <lektu@terra.es>
14677
14678 * eval.c (Fdefmacro): Fix typo.
14679
14680 2003-02-12 Kim F. Storm <storm@cua.dk>
14681
14682 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
14683 macro is a string, convert meta modifiers in string when copying
14684 the string into a vector.
14685
14686 2003-02-11 Kim F. Storm <storm@cua.dk>
14687
14688 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
14689
14690 2003-02-11 Kenichi Handa <handa@m17n.org>
14691
14692 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
14693
14694 2003-02-10 Kim F. Storm <storm@cua.dk>
14695
14696 * process.c: Doc fixes.
14697 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
14698
14699 2003-02-10 Kenichi Handa <handa@m17n.org>
14700
14701 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
14702
14703 * process.c (QCfilter_multibyte): New variable.
14704 (setup_process_coding_systems): New function.
14705 (Fset_process_buffer, Fset_process_filter):
14706 Call setup_process_coding_systems.
14707 (Fstart_process): Initialize the member `filter_multibyte' of
14708 struct Lisp_Process.
14709 (create_process): Call setup_process_coding_systems.
14710 (Fmake_network_process): New keyward `:filter-multibyte'.
14711 Initialize the member `filter_multibyte' of struct Lisp_Process.
14712 Call setup_process_coding_systems.
14713 (server_accept_connection): Call setup_process_coding_systems.
14714 (read_process_output): If the process has a filter, decide the
14715 multibyteness of a string to given to the filter by
14716 `filter_multibyte' member of the process. If the process doesn't
14717 have a filter and the result of conversion is unibyte, use
14718 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
14719 multibyte form.
14720 (Fset_process_coding_system): Call setup_process_coding_systems.
14721 (Fset_process_filter_multibyte): New function.
14722 (Fprocess_filter_multibyte_p): New function.
14723 (syms_of_process): Intern and staticpro QCfilter_multibyte.
14724 Defsubr Sset_process_filter_multibyte and
14725 Sprocess_filter_multibyte_p.
14726
14727 * process.h (struct Lisp_Process): New member filter_multibyte.
14728
14729 * lisp.h (setup_process_coding_systems): Add prototype.
14730
14731 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
14732 process, update coding systems for the process.
14733
14734 2003-02-09 Kenichi Handa <handa@m17n.org>
14735
14736 * fns.c (string_to_multibyte): New function.
14737 (Fstring_to_multibyte): New function.
14738 (syms_of_fns): Defsubr it.
14739
14740 2003-02-08 Andreas Schwab <schwab@suse.de>
14741
14742 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
14743 instead of the substitution.
14744
14745 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14746
14747 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
14748
14749 * xmenu.c (menu_position_func): Adjust menu popup position so that
14750 the menu is fully visible.
14751
14752 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14753
14754 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
14755 (x_make_frame_invisible, x_wm_set_icon_position):
14756 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
14757
14758 * xfns.c (x_set_name, x_set_title): Ditto.
14759
14760 2003-02-04 Richard M. Stallman <rms@gnu.org>
14761
14762 * keyboard.c (echo_now): Update before_command_echo_length.
14763 (Freset_this_command_lengths): Reset this_command_key_count etc.
14764 immediately rather than arranging to do it later.
14765 (before_command_key_count_1, before_command_echo_length_1)
14766 (before_command_restore_flag): Vars deleted.
14767 (add_command_key): Don't handle before_command_restore_flag.
14768 (read_char, record_menu_key): Don't update before_command_key_count or
14769 before_command_echo_length.
14770 (read_char): Don't handle before_command_restore_flag.
14771
14772 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
14773 in direct-output clauses if it wouldn't be called in the ordinary case.
14774
14775 2003-02-04 Kim F. Storm <storm@cua.dk>
14776
14777 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14778
14779 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14780
14781 * gtkutil.c (remove_from_container): Copying list is not needed.
14782 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14783 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14784 on list returned from gtk_container_get_children to avoid memory leak.
14785
14786 2003-02-01 Jason Rumney <jasonr@gnu.org>
14787
14788 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14789 local malloc.
14790 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14791 definitions in xpm.h.
14792 (init_xpm_functions): New function.
14793 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14794 (init_external_image_libraries): Try to load libXpm.dll.
14795
14796 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14797 timestamp.
14798
14799 2003-01-31 Dave Love <fx@gnu.org>
14800
14801 * syntax.c (Fskip_chars_forward)
14802 (open-paren-in-column-0-is-defun-start): Doc fix.
14803
14804 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14805
14806 * fileio.c: Support // at start of name for Cygwin (just added proper
14807 preprocessor tests).
14808
14809 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14810
14811 * Makefile.in: Use @EXEEXT@ for Cygwin.
14812
14813 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14814
14815 * s/cygwin.h: Added for Cygwin port.
14816
14817 2003-01-31 Juanma Barranquero <lektu@terra.es>
14818
14819 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14820 when including gif_lib.h.
14821 (init_gif_functions, init_tiff_functions): New functions.
14822 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14823 Windows. Disable color table lookups. Call library functions
14824 through pointers determined at runtime.
14825 (init_external_image_libraries): Try to load libungif.dll and
14826 libtiff.dll.
14827
14828 2003-01-31 Kenichi Handa <handa@m17n.org>
14829
14830 * xdisp.c (SKIP_GLYPHS): New macro.
14831 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14832
14833 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14834
14835 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
14836
14837 2003-01-30 Dave Love <fx@gnu.org>
14838
14839 * alloc.c (Vgc_elapsed, gcs_done): New variables.
14840 (Fgarbage_collect): Use them.
14841 (init_alloc, syms_of_alloc): Set them up.
14842
14843 2003-01-30 Juanma Barranquero <lektu@terra.es>
14844
14845 * w32fns.c (init_external_image_libraries): Add missing operator.
14846
14847 2003-01-29 Jason Rumney <jasonr@gnu.org>
14848
14849 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
14850 an alternative name for jpeg.dll.
14851
14852 2003-01-29 Kenichi Handa <handa@m17n.org>
14853
14854 * xdisp.c (set_cursor_from_row): Pay attention to string display
14855 properties.
14856
14857 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
14858
14859 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
14860 <escape>.
14861 (keycode_to_xkeysym_table): Reformat and add more comments.
14862 (XTread_socket): Drop special case for backspace.
14863
14864 2003-01-28 Andrew Choi <akochoi@shaw.ca>
14865
14866 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
14867 values in old-style RGB specs.
14868
14869 2003-01-27 Juanma Barranquero <lektu@terra.es>
14870
14871 * w32fns.c (init_external_image_libraries): Try alternate names for the
14872 jpeg dll.
14873
14874 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14875
14876 * gtkutil.c (create_dialog, xg_separator_p)
14877 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
14878 before calling strcmp or strlen.
14879
14880 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14881
14882 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
14883 and handle image load failure.
14884
14885 2003-01-26 Jason Rumney <jasonr@gnu.org>
14886
14887 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
14888 New functions.
14889 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
14890 Disable color table lookups. Call jpeg library functions
14891 through pointers determined at runtime.
14892 (init_external_image_libraries): Try to load jpeg.dll.
14893
14894 2003-01-25 Richard M. Stallman <rms@gnu.org>
14895
14896 * lisp.h: Declare format2 instead of format1.
14897
14898 * fileio.c (barf_or_query_if_file_exists):
14899 Call format2 instead of format1.
14900
14901 * editfns.c (format2): New function, replaces format1
14902 but takes exactly two Lisp Objects as format args.
14903
14904 * buffer.c (Fkill_buffer): Call format2 instead of format1.
14905
14906 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14907
14908 * xterm.h: Change to return value of x_dispatch_event to int.
14909
14910 * xterm.c (x_filter_event): New function.
14911 (event_handler_gdk, XTread_socket): Call x_filter_event.
14912 (x_dispatch_event): Change to return value of finish.
14913 (event_handler_gdk): Use return value from x_dispatch_event.
14914
14915 * xfns.c (x_window): Call create_frame_xic for GTK version to
14916 initialize input methods.
14917
14918 * gtkutil.h: Add (void) prototypes.
14919
14920 * gtkutil.c (create_menus): Remove code that puts the help menu to
14921 the right.
14922
14923 2003-01-25 Jason Rumney <jasonr@gnu.org>
14924
14925 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
14926 [HAVE_PNG]: Sync with xfns.c version.
14927 (png_load): Adjust colors for Windows. Use Windows
14928 bitmaps. Disable color table lookups.
14929 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
14930 (init_png_functions): New function.
14931 (png_read_from_memory, png_load): Call png library functions
14932 through pointers determined at runtime.
14933 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
14934 (init_external_image_libraries): New function.
14935 (init_xfns): Call it.
14936
14937 2003-01-24 Andreas Schwab <schwab@suse.de>
14938
14939 * minibuf.c (Fminibuffer_message): Verify type of parameter.
14940
14941 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14942
14943 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
14944 of static initializer.
14945
14946 2003-01-24 Dave Love <fx@gnu.org>
14947
14948 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
14949 architectures.
14950
14951 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
14952 Use __alignof__.
14953
14954 2003-01-24 Kenichi Handa <handa@m17n.org>
14955
14956 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
14957 It it is nonzero, don't pretend that an invisible area doesn't exist.
14958 (command_loop_1): Call adjust_point_for_property with proper
14959 second arg.
14960
14961 2003-01-22 Jason Rumney <jasonr@gnu.org>
14962
14963 Sync changes with xterm.c and xfns.c.
14964
14965 * w32term.c (x_draw_glyph_string_foreground)
14966 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14967
14968 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
14969 phys_cursor's hpos is overwritten. This is still not completely
14970 correct, as it doesn't really make sense to use hpos at all to
14971 get the cursor glyph (as that is relative to the width of the
14972 characters on the line, which may have changed during the update).
14973
14974 * w32term.c (notice_overwritten_cursor): Handle the special case
14975 of the cursor being in the first blank non-text line at the
14976 end of a window.
14977
14978 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14979 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14980 Compute from the x position returned by x_draw_glyphs.
14981
14982 (x_display_and_set_cursor): Don't set phys_cursor_width here,
14983 except for NO_CURSOR and system caret, to make phys_cursor_width
14984 contain what its name suggests.
14985 (notice_overwritten_cursor): Consider the cursor image erased if
14986 the output area intersects the cursor image in y-direction.
14987
14988 * w32term.c (note_mode_line_or_margin_highlight): Rename from
14989 note_mode_line_highlight and extend.
14990
14991 * w32term.c (last_window): New variable.
14992 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
14993 (note_mouse_movement): Remove reimplemented code in #if 0.
14994
14995 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
14996 not update_mode_lines, and always set it to 1.
14997
14998 2003-01-21 Jason Rumney <jasonr@gnu.org>
14999
15000 * w32fns.c (IDC_HAND): Define it if system headers don't.
15001
15002 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
15003
15004 * w32term.h (struct w32_output): New member hand_cursor.
15005 (WM_EMACS_SETCURSOR): New message definition.
15006
15007 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
15008 function w32_define_cursor.
15009 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
15010 position, change member name output_data.x to output_data.w32 and
15011 add function w32_define_cursor.
15012 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
15013 and change member name output_data.x to output_data.w32.
15014 (w32_initialize_display_info):
15015 Setup dpyinfo->vertical_scroll_bar_cursor.
15016
15017 * w32fns.c (Vx_hand_shape): New variable.
15018 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
15019 WM_EMACS_SETCURSOR.
15020 (x-create-frame): Setup Cursor types.
15021
15022 2003-01-21 David Ponce <david@dponce.com>
15023
15024 * w32term.c (w32_encode_char): For DIM=1 charset, set
15025 ccl->reg[2] to -1 before calling ccl_driver.
15026 (Sync. with xterm.c x_encode_char change by Kenichi Handa
15027 <handa@m17n.org> on 2002-09-30.)
15028 (w32_draw_relief_rect): Declare all args.
15029 (w32_define_cursor): New.
15030
15031 * w32fns.c (w32_load_cursor): New function.
15032 (w32_init_class): Use it.
15033 (x_put_x_image): Declare all args.
15034
15035 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
15036
15037 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
15038
15039 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15040
15041 * gtkutil.c: Must include stdio.h before termhooks.h
15042
15043 2003-01-21 Dave Love <fx@gnu.org>
15044
15045 * alloc.c (Fgc_status): Print zombie list.
15046 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
15047 Fix assignment of zombies.
15048 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
15049 Don't take car of non-cons.
15050
15051 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15052
15053 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15054
15055 2003-01-20 David Ponce <david@dponce.com>
15056
15057 * w32menu.c (digest_single_submenu): Declare all args.
15058
15059 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
15060 changes in xmenu.c:
15061
15062 (parse_single_submenu): Use individual keymap's prompt
15063 string as pane name, if there is one.
15064 (set_frame_menubar): Save menu_items_n_panes from each call to
15065 parse_single_submenu and use it when calling digest_single_submenu.
15066
15067 2003-01-20 Steven Tamm <steventamm@mac.com>
15068
15069 * macterm.c (XTread_socket): Check for valid, visible window
15070 before sending a scroll-wheel event.
15071
15072 2003-01-20 Richard M. Stallman <rms@gnu.org>
15073
15074 * xdisp.c (redisplay_window): If mini window's buffer is not
15075 a minibuffer, then redisplay it like other windows.
15076
15077 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15078
15079 * gtkutil.c (xg_create_frame_widgets): Check if there is an
15080 external tool bar before setting tool bar height.
15081
15082 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15083
15084 * xterm.c (handle_one_xevent): Surround popup_activated
15085 with #ifdef:s for non-toolkit version.
15086
15087 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
15088 (gtkutil.o): New file.
15089 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
15090 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
15091
15092 * gtkutil.c: New file for GTK version.
15093
15094 * gtkutil.h: New file for GTK version.
15095
15096 * xterm.h: Add xt_or_gtk_widget.
15097 Include gtk files for USE_GTK.
15098 (struct x_output): Add toolbar_height.
15099 (struct x_output): Add GTK widgets and Gdk size_hints.
15100 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
15101 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
15102 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
15103
15104 * xterm.c: Include gtkutil.h for USE_GTK.
15105 (free_frame_menubar): Declare extern void for USE_GTK.
15106 (note_mouse_highlight): Check popup_activated for USE_GTK.
15107 (xt_action_hook): Don't compile if USE_GTK.
15108 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
15109 (xg_scroll_callback): New function.
15110 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
15111 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
15112 for USE_GTK.
15113 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
15114 xg_show_scroll_bar for USE_GTK.
15115 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
15116 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
15117 (event_handler_gdk): New function for USE_GTK.
15118 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
15119 (handle_one_xevent): Make sure widget is mapped before
15120 calling x_real_positions for USE_GTK.
15121 (XTread_socket): Add GTK event loop for USE_GTK.
15122 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
15123 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
15124 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
15125 (x_iconify_frame): Add code for USE_GTK.
15126 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
15127 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
15128 is in gtkutil.c.
15129 (x_term_init): Add initialization for GTK.
15130 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
15131
15132 * xmenu.c: Include gtkutil.h for USE_GTK.
15133 (Fx_popup_menu): Use current position if x and y is NIL.
15134 (single_menu_item, single_menu_item, Fx_popup_dialog):
15135 Check for USE_GTK.
15136 (popup_widget_loop): New function for USE_GTK.
15137 (x_activate_menubar): Add code for USE_GTK.
15138 (popup_activate_callback, popup_deactivate_callback)
15139 (menu_highlight_callback, menubar_selection_callback):
15140 Add USE_GTK versions.
15141 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
15142 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
15143 (free_frame_menubar): Only compile if not USE_GTK. GTK version
15144 is in gtkutil.c.
15145 (popup_selection_callback): New version for USE_GTK.
15146 (create_and_show_popup_menu): New fuction, one USE_GTK version and
15147 one USE_X_TOOLKIT version.
15148 (xmenu_show): Call create_and_show_popup_menu.
15149 (dialog_selection_callback): New version for USE_GTK.
15150 (create_and_show_dialog): New fuction, one USE_GTK version and
15151 one USE_X_TOOLKIT version.
15152 (xdialog_show): Call create_and_show_dialog.
15153
15154 * xfns.c: Include gtkutil for USE_GTK.
15155 (x_window_to_frame, x_any_window_to_frame)
15156 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
15157 (x_top_window_to_frame): Add code for USE_GTK.
15158 (x_set_background_color): Call xg_set_background_color for GTK.
15159 (x_set_menu_bar_lines): Check for USE_GTK.
15160 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
15161 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
15162 (x_window): Call xg_create_frame_widgets for USE_GTK.
15163 (Fx_create_frame): Check for USE_GTK
15164 (Fx_file_dialog): New implementation for USE_GTK.
15165
15166 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
15167 (update_menu_bar): Add check for USE_GTK.
15168 (update_tool_bar): Add check for USE_GTK and external tool bar.
15169 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
15170 (redisplay_internal): Add check for USE_GTK and popup_activated.
15171 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
15172 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
15173 (display_menu_bar): Add check for USE_GTK
15174
15175 * lisp.h (Vx_resource_name): Declare extern.
15176
15177 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
15178 for USE_GTK.
15179 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
15180
15181 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
15182 (FRAME_EXTERNAL_TOOL_BAR): New macro.
15183 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
15184
15185 * fileio.c (Fread_file_name): Add check for USE_GTK.
15186
15187 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
15188 Add check for USE_GTK.
15189
15190 * config.in: Added HAVE_GTK
15191
15192 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
15193
15194 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
15195
15196 * charset.h (Funibyte_char_to_multibyte): Export.
15197
15198 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15199
15200 * xmenu.c (mouse_position_for_popup): New function.
15201 (Fx_popup_menu): Call mouse_position_for_popup for X and
15202 mouse_position_hook for others.
15203
15204 2003-01-17 Kim F. Storm <storm@cua.dk>
15205
15206 * editfns.c (Finsert): Mention `string-make-multibyte' and
15207 `string-as-multibyte' in doc string.
15208
15209 2003-01-17 Kenichi Handa <handa@m17n.org>
15210
15211 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
15212
15213 * editfns.c (Fformat): Convert an unibyte char argument that is
15214 formatted by "%c" to multibyte if the total result must be a
15215 multibyte string.
15216
15217 2003-01-16 Kim F. Storm <storm@cua.dk>
15218
15219 * process.c (set-process-filter): Document unibyte/multibyte-ness
15220 of string argument.
15221
15222 2003-01-16 Kenichi Handa <handa@m17n.org>
15223
15224 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
15225
15226 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
15227 (re_search_2): Likewise.
15228
15229 2003-01-15 Kenichi Handa <handa@m17n.org>
15230
15231 * xdisp.c (message_dolog): Fix bug of the case that *Message*
15232 buffer is unibyte.
15233
15234 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
15235
15236 * fns.c (Fsubstring): Clarify doc string.
15237
15238 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
15239 (Fprevious_char_property_change)
15240 (Fnext_single_char_property_change)
15241 (Fprevious_single_char_property_change, Fnext_property_change)
15242 (Fnext_single_property_change, Fprevious_property_change)
15243 (Fprevious_single_property_change, Fadd_text_properties)
15244 (Fput_text_property, Fset_text_properties)
15245 (Fremove_text_properties, Fremove_list_of_text_properties)
15246 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
15247
15248 2003-01-14 Kim F. Storm <storm@cua.dk>
15249
15250 * process.h (struct Lisp_Process): New member plist replaces old
15251 member private_vars. All uses changed.
15252
15253 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
15254 (QCplist): Rename from QCvars. Change all uses.
15255 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
15256 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
15257 (syms_of_process): Intern, staticpro, defsubr these.
15258 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
15259
15260 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
15261
15262 * m/delta.h: Remove (obsolete).
15263
15264 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
15265
15266 * fileio.c (Fdelete_directory, Fdelete_file): Document the
15267 behaviour in front of symlinks.
15268 (Fdelete_file): Raise an error on directories.
15269
15270 2003-01-13 Dave Love <fx@gnu.org>
15271
15272 * fns.c (Freverse): Use QUIT.
15273
15274 2003-01-13 Richard M. Stallman <rms@gnu.org>
15275
15276 * minibuf.c (minibuffer_completion_contents):
15277 Error if point is inside prompt.
15278
15279 * keyboard.c (command_loop_1): Don't redisplay directly
15280 if there's a post-command-hook.
15281
15282 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
15283 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
15284
15285 2003-01-12 Kim F. Storm <storm@cua.dk>
15286
15287 * process.h (struct Lisp_Process): New member private_vars.
15288
15289 * process.c (QCvars): New variable.
15290 (syms_of_process): Intern and staticpro it.
15291 (Fset_process_contact): Removed function.
15292 (Fprocess_variable, Fset_process_variable): New functions.
15293 (syms_of_process): Defsubr them.
15294 (Fstart_process): Initialize private_vars plist to nil.
15295 (Fmake_network_process): New arg :vars to setup the private
15296 variables for new network process.
15297 (server_accept_connection): Copy server's private variables to
15298 client process.
15299
15300 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
15301 crashes). Code rewritten and simplified. Now directly aligns the
15302 pointer and recalculates pure_bytes_used, rather than aligning the
15303 size and adjusting the pointer.
15304
15305 2003-01-11 Kim F. Storm <storm@cua.dk>
15306
15307 * process.c (Fset_process_contact): New function.
15308 (syms_of_process): defsubr it.
15309 (make-network-process): Update doc.
15310
15311 2003-01-10 Andreas Schwab <schwab@suse.de>
15312
15313 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
15314 Reported by Berthold Gunreben <b.gunreben@web.de>.
15315
15316 2003-01-10 Dave Love <fx@gnu.org>
15317
15318 * composite.c (syms_of_composite): Make composition_hash_table weak.
15319
15320 2003-01-09 Kim F. Storm <storm@cua.dk>
15321
15322 * process.c (Fmake_network_process): Convert new port number
15323 to host byte order for `:service t' case. From Mario Lang.
15324
15325 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15326
15327 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
15328 instead of XtAppProcessEvent.
15329
15330 * xterm.c (handle_one_xevent): New function.
15331 (x_dispatch_event): New function.
15332 (XTread_socket): Call handle_one_xevent.
15333
15334 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
15335
15336 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
15337 call XQueryPointer to get coordinates.
15338 (popup_get_selection): Do not set popup_activated_flag to zero,
15339 let popup_deactivate_callback do that. Needed for Motif.
15340 Call x_dispatch_event instead of XtDispatchEvent.
15341 (xmenu_show): Calculate root coordinate from frame top/left position.
15342
15343 2003-01-08 Kim F. Storm <storm@cua.dk>
15344
15345 * process.c (server_accept_connection): Fix recording of new
15346 connection's local address in :local property of contact info.
15347 (Fmake_network_process): Record local network address for new
15348 client processes in :local property of contact info.
15349 (format-network-address): Add arg OMIT-PORT. Change callers.
15350
15351 2003-01-07 Dave Love <fx@gnu.org>
15352
15353 * Makefile.in (fns.o): Depend on coding.h.
15354
15355 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
15356
15357 * minibuf.c (Fread_variable): Doc fix.
15358
15359 * eval.c (Fuser_variable_p): Doc change. For custom variables,
15360 use the same test as for custom-variable-p.
15361
15362 2003-01-05 Richard M. Stallman <rms@gnu.org>
15363
15364 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
15365 Count LAST_LINE_MISFIT in scroll margin for end of window.
15366 Move label too_near_end before setting SCROLL_MARGIN_POS.
15367 Set LAST_LINE_MISFIT before jumping there.
15368
15369 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
15370 scroll_conservatively case. If scrolling that much doesn't change
15371 STARTP, move it down one line.
15372
15373 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
15374 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
15375
15376 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
15377 selected frame.
15378
15379 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
15380 (syms_of_keymap): Staticpro them.
15381 (Fapropos_internal): Initialize them and clear them out.
15382 Don't GCPRO them.
15383
15384 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
15385 Doc fixes.
15386
15387 * lisp.h: New misc type Lisp_Save_Value.
15388 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
15389 (XSAVE_VALUE): New macro.
15390 (struct Lisp_Save_Value): New data type.
15391 (union Lisp_Misc): Add u_save_value alternative.
15392 (make_save_value): Declare.
15393
15394 * alloc.c (make_save_value): New function.
15395
15396 * xterm.c (x_catch_errors): Save dpy using make_save_value.
15397 (x_catch_errors_unwind): Call XSync.
15398
15399 2003-01-01 Richard M. Stallman <rms@gnu.org>
15400
15401 * window.c (window_scroll_pixel_based): Partially undo last change.
15402
15403 * keyboard.c (command_loop_1): Call adjust_point_for_property
15404 in direct action cases for Qforward_char and Qbackward_char.
15405 Set already_adjusted so it won't be done twice.
15406
15407 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
15408
15409 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
15410 type definition of size_t.
15411
15412 2003-01-02 Steven Tamm <steventamm@mac.com>
15413
15414 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
15415 distinguish Carbon GUI builds from X11 builds on darwin.
15416
15417 2002-12-30 Steven Tamm <steventamm@mac.com>
15418
15419 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
15420 to default to t.
15421
15422 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
15423
15424 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
15425
15426 2002-12-28 Steven Tamm <steventamm@mac.com>
15427
15428 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
15429 allow building in a different directory than source. Uses some
15430 GNU Make extensions, but there is no other make on Mac OS X.
15431
15432 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
15433
15434 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
15435 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
15436 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
15437 (Fstring_to_number): Mention the returned value in the doc strings.
15438
15439 2002-12-23 Richard M. Stallman <rms@gnu.org>
15440
15441 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
15442 <scroll-down-aggressively>: Doc fix.
15443
15444 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
15445 string as pane name, if there is one.
15446 (set_frame_menubar): Save menu_items_n_panes from each call to
15447 parse_single_submenu and use it when calling digest_single_submenu.
15448
15449 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
15450 Don't try to make last line fully visible if it is past end of window.
15451
15452 2002-12-22 Steven Tamm <steventamm@mac.com>
15453
15454 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
15455 (mac_menu_show): Add support for hierarchical popup menus.
15456 (add_menu_item): Remove indentation support.
15457 (fill_submenu, fill_menu): Create hierarchical menus
15458 instead of using indentation.
15459
15460 2002-12-22 Richard M. Stallman <rms@gnu.org>
15461
15462 * xdisp.c (try_cursor_movement): Don't call try_window here.
15463 (redisplay_window): Never redisplay minibuffer when inactive.
15464
15465 * window.c (select_window_1): Undo 9/21 change.
15466
15467 2002-12-22 Steven Tamm <steventamm@mac.com>
15468
15469 * macterm.c (XTread_socket): Call KeyTranslate for control and
15470 meta to deal correctly shifted non-alpha characters, like C-S-5
15471 being treated like C-%. Do not look for shift key to deal
15472 with masking off control-key with mac-reverse-ctrl-meta.
15473
15474 2002-12-21 Richard M. Stallman <rms@gnu.org>
15475
15476 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
15477 If it is non-nil, run timers. Use an unwind-protect to requeue
15478 the events that were read ahead.
15479 (popup_get_selection_unwind): New subroutine.
15480 (popup_get_selection_queue): File-scope variable now holds that queue.
15481 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
15482 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
15483 Use an unwind-protect to pop down the dialog box.
15484 (xdialog_show_unwind): New subroutine implements that.
15485
15486 * xdisp.c (row_containing_pos): Change exit test using last_y.
15487 (try_window_id): Abort if row_containing_pos returns null.
15488
15489 * lread.c (load_error_handler): New function.
15490 (Fload): Handle errors in Fsubstitute_in_file_name.
15491 Don't expect Fsignal to return.
15492
15493 * eval.c: Errors and throws work right with interrupt blocking.
15494 (struct catchtag): New elt interrupt_input_blocked.
15495 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
15496 (internal_catch, Fcondition_case, internal_condition_case)
15497 (internal_condition_case_1, internal_condition_case_2): Save it.
15498 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
15499
15500 * editfns.c (Fformat): Add parens.
15501
15502 * dired.c (file_name_completion): Fix that change.
15503 Delete special quit-handling code; just use QUIT.
15504
15505 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
15506
15507 * dired.c (file_name_completion): Close directory on error
15508 just as in directory_files_internal.
15509
15510 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
15511
15512 * window.c (Fset_window_configuration): Set old_point to correct
15513 value when new_current_buffer == current_buffer.
15514
15515 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
15516
15517 Revisited my earlier fix for the following entry in etc/PROBLEMS:
15518 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15519 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15520
15521 These changes were in part based upon suggestions made by Peter
15522 'Luna' Runestig [peter@runestig.com].
15523
15524 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
15525 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
15526 (g_b_init_get_sid_identifier_authority ): Add several static
15527 global variables.
15528
15529 * w32.c (globals_of_w32): New function. Used to initialize those
15530 global variables that must always be initialized on startup even
15531 when the global variable initialized is non zero. Its primary
15532 purpose at this time is to set the global variables
15533 g_b_init_is_windows_9x, g_b_init_open_process_token,
15534 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
15535 g_b_init_get_sid_identifier_authority to 0 on startup.
15536 Called from main.
15537
15538 * w32.c (is_windows_9x): Perform initialization only if
15539 g_b_init_is_windows_9x is equal to 0. On initialization set
15540 g_b_init_is_windows_9x equal to 1.
15541
15542 * w32.c (open_process_token): Perform initialization only if
15543 g_b_init_open_process_token is equal to 0. On initialization set
15544 g_b_init_open_process_token equal to 1.
15545
15546 * w32.c (get_token_information): Perform initialization only if
15547 g_b_init_get_token_information is equal to 0. On initialization
15548 set g_b_init_get_token_information equal to 1.
15549
15550 * w32.c (lookup_account_sid): Perform initialization only if
15551 g_b_init_lookup_account_sid is equal to 0. On initialization
15552 set g_b_init_lookup_account_sid equal to 1.
15553
15554 * w32.c (get_sid_identifier_authority): Perform initialization
15555 only if g_b_init_get_sid_identifier_authority is equal to 0.
15556 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
15557
15558 * w32fns.c (globals_of_w32fns): New function. Used to initialize
15559 those global variables that must always be initialized on startup
15560 even when the global variable initialized is non zero.
15561 Its primary purpose at this time is to initialize the global variable
15562 track_mouse_event_fn.
15563
15564 * w32fns.c (w32_wnd_proc): Remove initialization of
15565 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
15566
15567 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
15568
15569 * w32menu.c (globals_of_w32menu): New function. Used to
15570 initialize those global variables that must always be initialized
15571 on startup even when the global variable initialized is non zero.
15572 Its primary purpose at this time is to initialize the global
15573 variables get_menu_item_info and set_menu_item_info.
15574
15575 * w32menu.c (initialize_frame_menubar): Remove initialization of
15576 get_menu_item_info and set_menu_item_info.
15577
15578 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
15579
15580 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
15581 Declare them.
15582
15583 * emacs.c (main): Call globals_of_w32 prior to calling
15584 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
15585 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
15586 is defined.
15587
15588 * w32term.c (x_update_window_begin): Fix Windows API error
15589 detected by BoundsChecker. Test to determine if
15590 w32_system_caret_hwnd is NULL prior to attempting to use
15591 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
15592
15593 * w32term.c (x_update_window_end): Fix Windows API error
15594 detected by BoundsChecker. Test to determine if
15595 w32_system_caret_hwnd is NULL prior to attempting to use
15596 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
15597
15598 2002-12-17 Kenichi Handa <handa@m17n.org>
15599
15600 * coding.c (coding_system_require_warning): New variable.
15601 (syms_of_coding): DEFVAR it.
15602
15603 * coding.h (coding_system_require_warning): Extern it.
15604
15605 * fileio.c (choose_write_coding_system): Even if
15606 Vcoding_system_for_write is non-nil, if
15607 coding_system_require_warning is nonzero, call
15608 Vselect_safe_coding_system_function.
15609
15610 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
15611
15612 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
15613 (lisp): Add font-core.
15614
15615 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
15616
15617 * textprop.c (text_read_only): New arg `propval'.
15618 (get_char_property_and_overlay): Remove unused var `next_overlay'.
15619 (verify_interval_modification): Use text_read_only's new arg.
15620
15621 2002-12-13 Kenichi Handa <handa@m17n.org>
15622
15623 * coding.c (Funencodable_char_position): Set pend correctly.
15624
15625 2002-12-12 Jason Rumney <jasonr@gnu.org>
15626
15627 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
15628 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
15629 Be more careful about when help_events are generated.
15630
15631 2002-12-12 Steven Tamm <steventamm@mac.com>
15632
15633 * macterm.c (mac_check_for_quit_char): Correctly set the
15634 modifiers of the event to 0.
15635 * mac.c (sys_select): Duplicate rfds before calling select to
15636 ensure that rfds survive the while loop.
15637
15638 2002-12-11 Kim F. Storm <storm@cua.dk>
15639
15640 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
15641 row_containing_pos returned NULL.
15642
15643 2002-12-10 Steven Tamm <steventamm@mac.com>
15644
15645 * mac.c (sys_read): Fix sys_read to not call select if IO is
15646 non-blocking.
15647 (sys_select): Fix sys_select to not use a timeout larger than
15648 the one given.
15649
15650 2002-12-10 Juanma Barranquero <lektu@terra.es>
15651
15652 * editfns.c (Fformat): Use alloca, not _alloca.
15653
15654 2002-12-09 Richard M. Stallman <rms@gnu.org>
15655
15656 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
15657 as the last thing.
15658
15659 2002-12-09 Dave Love <fx@gnu.org>
15660
15661 * s/sol2-8.h: Removed. (Not necessary.)
15662
15663 2002-12-09 Matthew Swift <swift@alum.mit.edu>
15664
15665 * editfns.c (Fformat): Handle precision in string conversion
15666 specifiers like libc functions do (ie, print at most that many
15667 characters).
15668
15669 2002-12-08 Richard M. Stallman <rms@gnu.org>
15670
15671 * xdisp.c (row_containing_pos): Check more carefully
15672 whether charpos is really in the row before returning it.
15673
15674 2002-12-07 Steven Tamm <steventamm@mac.com>
15675
15676 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
15677
15678 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
15679 each stack frame. This may change as it could be time consuming.
15680
15681 * macterm.c (mac_check_for_quit_char, quit_char_comp)
15682 (init_quit_char_handler, mac_determine_quit_char_modifiers)
15683 (mac_initialize): Add code to check for pressing of quit_char
15684 in the OS event queue.
15685
15686 * mac.c (sys_select): Call mac_check_for_quit_char every second
15687 while blocking on select.
15688
15689 * mac.c (sys_read): Use sys_select to test for input first
15690 before calling read, to allow C-g to break.
15691
15692 2002-12-07 Richard M. Stallman <rms@gnu.org>
15693
15694 * minibuf.c (Fcompleting_read): Doc fix.
15695
15696 * lread.c (syms_of_lread) <load-history>: Doc fix.
15697
15698 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
15699
15700 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
15701 autoload.
15702
15703 * data.c (Fdefalias): Record in load-history redefining an autoload.
15704
15705 * alloca.c: Undo ifdef change accidentally made on 12-04.
15706
15707 2002-12-06 Francesco Potorti` <pot@gnu.org>
15708
15709 * xfns.c (png_load): Avoid double gamma correction for PNG images.
15710
15711 2002-12-04 Richard M. Stallman <rms@gnu.org>
15712
15713 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
15714
15715 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
15716
15717 * alloca.c: Don't use #error.
15718
15719 2002-12-03 Dave Love <fx@gnu.org>
15720
15721 * buffer.c (Qucs_set_table_for_input): New.
15722 (Fget_buffer_create): Use it.
15723 (Qset_buffer_major_mode_hook): Deleted.
15724 (Fset_buffer_major_mode): Revert previous change.
15725 (init_buffer_once): Intern ucs-set-table-for-input.
15726 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
15727 Add &Qucs_set_table_for_input.
15728
15729 2002-12-03 Andreas Schwab <schwab@suse.de>
15730
15731 * callint.c (Fcall_interactively): Use next_event only if less
15732 than key_count.
15733
15734 2002-12-02 Andrew Choi <akochoi@shaw.ca>
15735
15736 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
15737 names to 255 characters.
15738
15739 * macterm.c (XTread_socket): If all frames have been collapsed,
15740 expand the first one before handling drag-and-drop events.
15741
15742 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
15743 which is detected by autoconf.
15744
15745 2002-12-01 Steven Tamm <steventamm@mac.com>
15746
15747 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
15748 offset in two hints table to allow prebinding to be redone and
15749 allow the executable to be stripped.
15750
15751 2002-11-29 Dave Love <fx@gnu.org>
15752
15753 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
15754 already provided.
15755
15756 2002-11-29 Richard M. Stallman <rms@gnu.org>
15757
15758 * xdisp.c (start_display): Check more intelligently for
15759 whether the line is continued.
15760 (move_it_vertically_backward): Clear it->continuation_lines_width.
15761
15762 2002-11-28 Dave Love <fx@gnu.org>
15763
15764 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
15765 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
15766
15767 2002-11-27 Steven Tamm <steventamm@mac.com>
15768
15769 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
15770 more descriptive error output from lread.c:Fload upon most require
15771 cycles during boostrapping.
15772
15773 2002-11-27 Jason Rumney <jasonr@gnu.org>
15774
15775 * fileio.c (Finsert_file_contents): Give a more appropriate error
15776 for files bigger than 2Gb when off_t is 32 bit.
15777
15778 * dired.c (Ffile_attributes): Don't return negative file sizes for
15779 files bigger than 2Gb when off_t is 32 bit.
15780
15781 2002-11-27 Dave Love <fx@gnu.org>
15782
15783 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15784
15785 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15786 Test GETPGRP_VOID instead.
15787 [BSD_TERMIOS]: Remove definitions (never used).
15788
15789 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15790 Don't define.
15791 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15792
15793 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15794
15795 2002-11-25 Jason Rumney <jasonr@gnu.org>
15796
15797 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15798 supported.
15799
15800 2002-11-25 Dave Love <fx@gnu.org>
15801
15802 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15803
15804 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15805
15806 2002-11-25 Andreas Schwab <schwab@suse.de>
15807
15808 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15809
15810 2002-11-24 Steven Tamm <steventamm@mac.com>
15811
15812 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15813 determine the size of pointers alloced in unexed space instead
15814 of using possibly invalid emacs_zone pointers. This fixes the
15815 binary incompatibility problems caused by updates to libSystem.B.
15816
15817 2002-11-24 Richard M. Stallman <rms@gnu.org>
15818
15819 * search.c (Fstring_match): Doc fix.
15820
15821 * callint.c (Fcall_interactively): If a command fails because
15822 `*' detects a read-only buffer, but RECORD_FLAG is set,
15823 record it anyway if the args don't actually do tty input.
15824
15825 2002-11-22 Dave Love <fx@gnu.org>
15826
15827 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15828
15829 * keyboard.c (interrupt_signal): Provide forward declaration.
15830 (kbd_buffer_store_event): Don't declare interrupt_signal.
15831
15832 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15833
15834 2002-11-21 Richard M. Stallman <rms@gnu.org>
15835
15836 * eval.c (interactive_p): Skip any number of bytecode
15837 and special form frames, in any order.
15838
15839 2002-11-20 Jason Rumney <jasonr@gnu.org>
15840
15841 * w32fns.c (convert_mono_to_color_image): New function.
15842 (xbm_load, xbm_load_image): Use it when foreground or background
15843 is explicitly set.
15844
15845 2002-11-19 Dave Love <fx@gnu.org>
15846
15847 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
15848
15849 2002-11-18 Jason Rumney <jasonr@gnu.org>
15850
15851 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
15852 (XPutPixel): Swap blue and red.
15853 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
15854 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
15855 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
15856 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
15857
15858 2002-11-18 Dave Love <fx@gnu.org>
15859
15860 * m/orion105.h (HAVE_ALLOCA): Don't define.
15861
15862 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
15863
15864 * m/intel386.h: Don't include alloca.h or define alloca.
15865
15866 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
15867 malloc, realloc, calloc.
15868
15869 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
15870 (bcmp): Don't define.
15871
15872 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
15873
15874 * m/amdahl.h: Don't define LIB_STANDARD.
15875
15876 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
15877
15878 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
15879
15880 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
15881 Don't include alloca.h.
15882
15883 * s/aix3-2.h (HAVE_FSYNC): Don't define.
15884
15885 * regex.c (_GNU_SOURCE): Don't define.
15886
15887 * process.c (_GNU_SOURCE): Don't define.
15888
15889 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
15890
15891 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
15892
15893 * s/sol2-8.h: Include sol2-6.h.
15894
15895 2002-11-18 Miles Bader <miles@gnu.org>
15896
15897 * dispextern.h (struct face): Add `overstrike' field.
15898 * xterm.c (x_draw_glyph_string_foreground)
15899 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15900 * xfaces.c (load_face_font): Set `face->overstrike' based on
15901 result from choose_face_font.
15902 (best_matching_font, choose_face_font): Add `needs_overstrike'
15903 argument, and use it to return whether overstriking is desirable
15904 for this face/font combo.
15905 (set_font_frame_param: Pass new argument to choose_face_font.
15906
15907 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15908
15909 This change is my fix for the following entry in etc/PROBLEMS:
15910 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15911 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15912
15913 * w32.c: Added wrapper functions around the win32 API functions
15914 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
15915 GetSidIdentifierAuthority. These wrapper functions serve two
15916 purposes:
15917 1. They ensure that the wrapped function can never be called
15918 when Emacs is running on an operating system on which they are
15919 not supported (Microsoft Windows 95 / 98 / ME).
15920 2. They call the wrapped functions via function pointers rather
15921 than calling them directly. This avoids taking advantage of the
15922 undocumented fact that although these functions are not supported
15923 in the 9x branch of Microsoft Windows, the functions do exist in
15924 the version of advapi32.dll that is found in the 9x branch of
15925 Microsoft Windows.
15926
15927 * w32.c (init_user_info): Replace the calls to the win32 API
15928 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
15929 and GetSidIdentifierAuthority with calls to the newly added
15930 wrapper functions.
15931
15932 * w32.h: Added extern declarations for the following functions:
15933 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
15934 syms_of_w32menu, and void syms_of_fontset.
15935
15936 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
15937 function pointer track_mouse_event_fn in the handler for the
15938 WM_SETFOCUS message.
15939
15940 * w32menu.c (initialize_frame_menubar): Add code to
15941 reinitialize the function pointers set_menu_item_info and
15942 get_menu_item_info.
15943
15944 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15945
15946 * sound.c: Added a partial implementation of play-sound-internal
15947 for Microsoft Windows. Added various #ifdef / #else / #endif
15948 code blocks to separate the code that will compile under
15949 Microsoft Windows from the code that is specific to GNU/Linux.
15950 Moved several blocks of code around to make this separation of code
15951 into Windows compatible and GNU/Linux compatible code blocks easier.
15952
15953 * makefile.w32-in: Include sound.c and link with WinMM.lib.
15954
15955 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
15956 added support for play-sound-internal under Windows would be
15957 included in the build of Emacs.
15958
15959 2002-11-16 Jason Rumney <jasonr@gnu.org>
15960
15961 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
15962
15963 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
15964
15965 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
15966
15967 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
15968 (adjust_point_for_property): Move out of display and invisible even if
15969 we were already inside before (in case a property was added while
15970 we weren't looking). Be more careful when handling invisible props.
15971 Skip invisible text as if it really wasn't there at all.
15972
15973 2002-11-15 Jason Rumney <jasonr@gnu.org>
15974
15975 * w32term.c (x_draw_image_foreground)
15976 (w32_draw_image_foreground_1): Use standard copy and invert
15977 operations to draw images.
15978
15979 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
15980 depth of 1.
15981 (xbm_read_bitmap_data): Invert bits as xbm is read in.
15982 (XPutPixel): Don't invert bits here.
15983
15984 2002-11-15 Jason Rumney <jasonr@gnu.org>
15985
15986 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
15987 (w32_draw_image_foreground_1): Handle image masks.
15988 (x_draw_image_glyph_string): Don't BitBlt transparently.
15989
15990 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
15991 (x_from_xcolors): Adjust RGB values for W32.
15992 (image_background, image_background_transparent)
15993 (postprocess_image, x_to_xcolors, x_disable_image)
15994 (x_build_heuristic_mask): Adapt for W32 and enable.
15995 (x_create_x_image_and_pixmap): Mark images with palettes as such.
15996 (xbm_load): Remove unused variable.
15997
15998 2002-11-14 Richard M. Stallman <rms@gnu.org>
15999
16000 * buffer.c (syms_of_buffer): Doc fix.
16001
16002 2002-11-14 Dave Love <fx@gnu.org>
16003
16004 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
16005
16006 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
16007 * xmenu.c (unuse_menu_items, digest_single_submenu):
16008 * xfns.c (x_put_x_image):
16009 * xdisp.c (message2_nolog, set_message):
16010 * undo.c (record_point):
16011 * terminfo.c (tparam):
16012 * syntax.c (scan_sexps_forward):
16013 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16014 * composite.c (update_compositions):
16015 * cm.c (calccost, cmgoto):
16016 * charset.c (c_string_width): Declare all args (per C99).
16017
16018 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
16019
16020 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
16021 Don't declare.
16022
16023 * emacs.c (main) [!VMS]: Avoid third arg.
16024
16025 * fns.c (Fcopy_sequence): Doc fix.
16026 (Fmap_char_table): Cast `call2'.
16027
16028 2002-11-14 Francesco Potorti` <pot@gnu.org>
16029
16030 * s/sol2-8.h: New file.
16031
16032 2002-11-14 Kim F. Storm <storm@cua.dk>
16033
16034 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
16035 dependency on `risky-local-variable' and the :propertize form.
16036
16037 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
16038
16039 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
16040
16041 * syntax.c (scan_sexps_forward): Undo last patch.
16042 Use a more obvious fix: check eob before updating the syntax table.
16043
16044 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
16045
16046 * syntax.c (scan_sexps_forward): Update syntax table before reading
16047 a char rather than after so we don't update the table past eob.
16048
16049 2002-11-09 Dave Love <fx@gnu.org>
16050
16051 * buffer.c (Fset_buffer_major_mode): Fix last change.
16052
16053 * regex.c (regexec): Fix pmatch declaration.
16054
16055 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
16056
16057 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
16058 to self-inserting characters.
16059 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
16060
16061 * coding.c (Vtranslation_table_for_input): New.
16062 (syms_of_coding): DEFVAR it.
16063
16064 2002-11-08 Juanma Barranquero <lektu@terra.es>
16065
16066 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
16067 window.
16068
16069 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16070
16071 * process.c (Fformat_network_address): Remove unused locals p,
16072 cp, and i.
16073
16074 2002-11-06 Dave Love <fx@gnu.org>
16075
16076 * buffer.c (Qset_buffer_major_mode_hook): New.
16077 (Fset_buffer_major_mode): Use it.
16078
16079 2002-11-06 Richard M. Stallman <rms@gnu.org>
16080
16081 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
16082 and stop_polling.
16083
16084 * process.c (wait_reading_process_input):
16085 Test POLLING_PROBLEM_IN_SELECT, not hpux.
16086 Avoid initialization for auto Lisp_Object var.
16087
16088 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
16089
16090 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
16091
16092 2002-11-05 Richard M. Stallman <rms@gnu.org>
16093
16094 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
16095
16096 * callint.c (Fcall_interactively): New local filter_specs.
16097 (Fcall_interactively): Check for progn as well as let.
16098 Add a gcpro.
16099 (Qprogn): New variable.
16100 (syms_of_callint): Staticpro and init Qprogn.
16101
16102 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
16103
16104 * lread.c (Feval_buffer): Doc fix.
16105
16106 2002-11-04 Dave Love <fx@gnu.org>
16107
16108 * keyboard.c (read_char): Always translate iff
16109 Vkeyboard_translate_table is a char table and c is valid.
16110
16111 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16112 and fix C types.
16113
16114 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
16115
16116 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
16117
16118 * editfns.c (get_pos_property): Don't hardcode Qfield.
16119
16120 * keyboard.c (adjust_point_for_property): Handle `display' prop on
16121 overlays. Also handle `invisible' prop.
16122
16123 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
16124
16125 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
16126 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
16127
16128 2002-11-01 Andreas Schwab <schwab@suse.de>
16129
16130 * editfns.c (Fmessage): Revert last change to properly handle %%.
16131
16132 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
16133
16134 * xmenu.c (unuse_menu_items): New fun.
16135 (menu_items_inuse): New var.
16136 (syms_of_xmenu): Initialize it.
16137 (init_menu_items): Use it to detect re-entrance.
16138 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
16139 (Fx_popup_menu): Remove spurious XSETFRAME.
16140
16141 * editfns.c (find_field): Make an exception for nil fields.
16142
16143 2002-11-01 Dave Love <fx@gnu.org>
16144
16145 * m/gec63.h: Deleted.
16146
16147 2002-10-31 Dave Love <fx@gnu.org>
16148
16149 * xterm.c (XTread_socket): Fix last change.
16150 (xaw_scroll_callback): Cast call_data to long to avoid warning.
16151
16152 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
16153
16154 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
16155
16156 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
16157
16158 * editfns.c (overlays_around, get_pos_property): New funs.
16159 (find_field): Use them.
16160 Also be careful not to modify POS before its last use.
16161 (Fmessage): Don't Fformat if there's nothing to format.
16162
16163 2002-10-30 Dave Love <fx@gnu.org>
16164
16165 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
16166 [HAVE_PTY_H]; Include pty.h.
16167
16168 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
16169
16170 * xterm.c (Qeql): Declare.
16171 (Vx_keysym_table): New.
16172 (syms_of_xterm): Initialize it.
16173 (XTread_socket): Use it. Deal with ASCII keysyms.
16174 (XSetIMValues) [HAVE_X11R6]: Prototype.
16175
16176 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
16177 (lispy_kana_keys): Comment out.
16178 (make_lispy_event) [XK_kana_A]: Comment out.
16179 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
16180 Fix sprintf call.
16181
16182 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
16183 regexp.h change).
16184 (TERMINFO, LIBS_TERMCAP): Define.
16185
16186 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
16187 (bcmp): Define conditional on HAVE_BCMP.
16188 (NO_SIOCTL_H): Don't define.
16189 (TIOCSIGSEND): Don't make conditional on IRIX6.
16190
16191 * s/sol2-5.h: Don't include strings.h.
16192 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
16193
16194 * s/irix6-0.h (IRIX6): Don't define.
16195 (bcopy, bcmp, bzero): Don't undef.
16196
16197 * s/irix6-5.h: Don't include strings.h.
16198 (IRIX6): Don't define.
16199 (bcopy, bcmp, bzero): Don't undef.
16200
16201 * syntax.c (Fforward_comment): Doc fix.
16202
16203 2002-10-29 Kim F. Storm <storm@cua.dk>
16204
16205 * process.c (Fsignal_process): Allow PROCESS to be specified by
16206 name in addition to pid (as integer or string).
16207
16208 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
16209
16210 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
16211 environments.
16212
16213 2002-10-27 Kim F. Storm <storm@cua.dk>
16214
16215 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
16216
16217 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
16218
16219 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
16220
16221 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
16222
16223 2002-10-26 Richard M. Stallman <rms@gnu.org>
16224
16225 * editfns.c (Fformat): Detect invalid format letters for floats.
16226
16227 2002-10-25 Kenichi Handa <handa@m17n.org>
16228
16229 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
16230 (x_set_title): Likewise.
16231
16232 2002-10-25 Juanma Barranquero <lektu@terra.es>
16233
16234 * macgui.h:
16235 * w32gui.h: Remove definition of XColor.
16236
16237 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
16238
16239 2002-10-24 Kim F. Storm <storm@cua.dk>
16240
16241 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
16242 Callers changed (supply dummy arg).
16243
16244 * lisp.h (get_window_cursor_type): Update prototype.
16245
16246 * w32term.c (x_display_and_set_cursor): Get active_cursor from
16247 get_window_cursor_type to track system caret.
16248
16249 2002-10-24 Kim F. Storm <storm@cua.dk>
16250
16251 * process.c (Fformat_network_address): New function.
16252 (syms_of_process): Defsubr it.
16253 (list_processes_1): Use it to format :local/:remote address if
16254 service/host is not set; before Emacs would crash in that case.
16255 (Fmake_network_process): Don't use Ffind_operation_coding_system
16256 to setup coding system if host or service is not set.
16257
16258 2002-10-23 Juanma Barranquero <lektu@terra.es>
16259
16260 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
16261
16262 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
16263 COLORREF.
16264
16265 * macgui.h:
16266 * w32gui.h: Add definition of XColor.
16267
16268 * macfns.c:
16269 * w32fns.c:
16270 * xfaces.c: Remove definition of XColor.
16271
16272 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
16273
16274 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
16275
16276 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
16277 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
16278 window if it is dedicated.
16279 (Fshrink_window): Add preserve_before as was done for enlarge_window.
16280 (Vspecial_display_function): Update docstring.
16281
16282 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
16283 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
16284 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
16285
16286 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
16287
16288 * casefiddle.c (casify_region): Don't treat a prefix char as part
16289 of a word when at the beginning.
16290
16291 2002-10-17 Juanma Barranquero <lektu@terra.es>
16292
16293 * lread.c (syms_of_lread): Fix typos.
16294
16295 2002-10-17 Dave Love <fx@gnu.org>
16296
16297 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
16298
16299 2002-10-16 Richard M. Stallman <rms@gnu.org>
16300
16301 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
16302
16303 2002-10-14 Juanma Barranquero <lektu@terra.es>
16304
16305 * w16select.c (syms_of_win16select): Fix docstring for
16306 `selection-coding-system'.
16307
16308 * w32select.c (syms_of_w32select): Likewise.
16309
16310 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
16311
16312 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
16313 a backslash-quoted char.
16314 (scan_lists, scan_sexps_forward): Pacify the compiler.
16315
16316 2002-10-13 Richard M. Stallman <rms@gnu.org>
16317
16318 * window.c (window_scroll): Set immediate_quit.
16319
16320 * print.c (print): When backquote form is the car of a list,
16321 output in old style. Use old_backquote_output to output all
16322 comma forms inside it in old style too.
16323
16324 * buffer.h (struct buffer): Move `undo_list' down below `name'.
16325
16326 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
16327
16328 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
16329 batch mode).
16330
16331 * lread.c (Fload): Doc fix (load-suffixes).
16332
16333 2002-10-10 Steven Tamm <steventamm@mac.com>
16334
16335 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
16336 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
16337 Also switch the default to Qnil from Qt.
16338
16339 2002-10-08 Kenichi Handa <handa@m17n.org>
16340
16341 * coding.c (code_convert_region): When we need more GAP for
16342 conversion, pay attention to the case that coding->produced is not
16343 greater than coding->consumed.
16344
16345 2002-10-07 Richard M. Stallman <rms@gnu.org>
16346
16347 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
16348
16349 2002-10-06 Andrew Choi <akochoi@shaw.ca>
16350
16351 * macmenu.c (mac_menu_show): Add j to count menu items; match
16352 menu_item_selection to it to find selected item.
16353
16354 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16355
16356 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
16357 cases. The correct fix is to pass ReparentNotify to Xt.
16358 The shell widget interprets ConfigureNotify differently depending
16359 on if it has been reparented or not.
16360
16361 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
16362
16363 * editfns.c (Fformat_time_string): Doc fix.
16364
16365 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
16366
16367 * fns.c (Flength): Doc fix.
16368
16369 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
16370
16371 * keyboard.c (keyremap): New struct.
16372 (read_key_sequence): Use it: globally replace keytran_foo with
16373 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
16374 keytran_next and fkey_next to just `next'.
16375
16376 2002-10-04 Steven Tamm <steventamm@mac.com>
16377
16378 * macterm.c (keycode_to_xkeysym_table): Change return to be
16379 treated like an X keysym.
16380
16381 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16382
16383 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
16384 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
16385 This is to also handle x/y changes that occur because of a resize.
16386
16387 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
16388
16389 * frame.c (Vdelete_frame_functions): New variable.
16390 (syms_of_frame): Initialize and defvar it.
16391 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
16392 it when frame's `tooltip' parameter is non-nil.
16393
16394 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
16395
16396 * w32fns.c (x_create_tip_frame): Likewise.
16397
16398 * macfns.c (x_create_tip_frame): Likewise.
16399
16400 2002-09-30 Kenichi Handa <handa@m17n.org>
16401
16402 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
16403 -1 before calling ccl_driver.
16404
16405 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
16406 Only when it is non-nil, handle composition sequence.
16407 (setup_coding_system) <0>: Don't force composition handling.
16408
16409 * Makefile.in (lisp, shortlisp): Add utf-16.elc
16410
16411 2002-09-29 Richard M. Stallman <rms@gnu.org>
16412
16413 * search.c (Freplace_match): Adjust match data for the substitution
16414 just made in the buffer.
16415
16416 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
16417 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
16418
16419 2002-09-27 Richard M. Stallman <rms@gnu.org>
16420
16421 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
16422 (read_char): Use them. Do all exits thru the end of the function.
16423
16424 2002-09-27 Kenichi Handa <handa@etl.go.jp>
16425
16426 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
16427 is nil.
16428
16429 2002-09-26 Richard M. Stallman <rms@gnu.org>
16430
16431 * regex.h (__restrict_arr): Don't define if already defined.
16432
16433 * coding.c (run_pre_post_conversion_on_str):
16434 Save and restore Vdeactivate_mark.
16435
16436 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
16437
16438 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
16439
16440 2002-09-26 Kenichi Handa <handa@etl.go.jp>
16441
16442 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
16443 nonzero, try face's family at first. Otherwise try FAMILY at first.
16444 (choose_face_font): If C is a single byte char or latin-1, call
16445 try_font_list with PREFER_FACE_FAMILY 1.
16446
16447 2002-09-21 Richard M. Stallman <rms@gnu.org>
16448
16449 * window.c (select_window_1): Don't select frame.
16450 Set frame's selected window only when frame itself is selected.
16451 (Fselect_window): Doc fix.
16452
16453 2002-09-18 Kim F. Storm <storm@cua.dk>
16454
16455 * process.c (make-network-process): Doc fix (there is no
16456 network-server-log-function hook).
16457
16458 2002-09-18 Richard M. Stallman <rms@gnu.org>
16459
16460 * print.c (print): Clear out the unused parts of Vprint_number_table.
16461 (syms_of_print): Doc fix for `print-number-table'.
16462
16463 * unexelf.c (unexec): Undo previous change.
16464
16465 2002-09-17 Andreas Schwab <schwab@suse.de>
16466
16467 * m/alpha.h [LINUX]: Don't define DATA_START.
16468
16469 2002-09-16 Dave Love <fx@gnu.org>
16470
16471 * unexelf.c (unexec): Deal with .got, reinstating change from
16472 25-08-1999.
16473
16474 2002-09-13 Richard M. Stallman <rms@gnu.org>
16475
16476 * s/sol2-6.h (UNEXEC): Comment out definition.
16477
16478 * unexsol.c (unexec): Don't downcase first letter of error msg.
16479
16480 * xfaces.c (Fcolor_supported_p): Just one arg is required.
16481
16482 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
16483
16484 * unexsol.c: Include buffer.h, charset.h, coding.h.
16485
16486 2002-09-11 Richard M. Stallman <rms@gnu.org>
16487
16488 * unexsol.c: Don't use report_file_error; do it by hand
16489 using dlerror.
16490
16491 * process.c (wait_reading_process_input, both versions):
16492 Before calling turn_on_atimers, call stop_polling.
16493
16494 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
16495
16496 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
16497 we go to too_near_end, call clear_glyph_matrix.
16498 (redisplay_window): After make_cursor_line_fully_visible,
16499 call clear_glyph_matrix and bypass `goto done'.
16500
16501 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
16502 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
16503
16504 2002-09-10 Richard M. Stallman <rms@gnu.org>
16505
16506 * fileio.c (Fdo_auto_save): Catch error making directory.
16507 Only call push_message if we need to.
16508 At the same time, make an unwind-protect to pop it.
16509 Rename local message_p to old_message_p.
16510 (do_auto_save_make_dir, do_auto_save_eh): New functions.
16511 (do_auto_save_unwind): Don't call pop_message.
16512
16513 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
16514
16515 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
16516
16517 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
16518
16519 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
16520
16521 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
16522
16523 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
16524 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
16525 (re_match_2_internal): Be more careful with infinite loops.
16526
16527 2002-09-10 Kim F. Storm <storm@cua.dk>
16528
16529 * macros.c (end_kbd_macro): New function.
16530 (Fend_kbd_macro): Use it.
16531
16532 * macros.h (end_kbd_macro): Declare extern.
16533
16534 * keyboard.c (Fdiscard_input): If defining keyboard macro,
16535 end and save it instead of discarding it.
16536
16537 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
16538
16539 * s/sol2-6.h: Fix typo. Add comment.
16540
16541 2002-09-09 Richard M. Stallman <rms@gnu.org>
16542
16543 * regex.c (regnum_t): Use signed int, not unsigned int.
16544
16545 * s/sol2-6.h: New file.
16546
16547 * s/sol2-5.h (UNEXEC): Definition deleted.
16548
16549 2002-09-08 Kim F. Storm <storm@cua.dk>
16550
16551 * macros.c (executing_macro_index): Change type to EMACS_INT.
16552 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
16553
16554 * macros.h (executing_macro_index): Change type to EMACS_INT.
16555
16556 2002-09-06 Richard M. Stallman <rms@gnu.org>
16557
16558 * casetab.c (set_case_table): Make canon table point to eqv table.
16559
16560 2002-09-06 Juanma Barranquero <lektu@terra.es>
16561
16562 * coding.c (syms_of_coding): Fix spacing.
16563
16564 * composite.c (Fcompose_region_internal)
16565 (Fcompose_string_internal): Likewise.
16566
16567 * data.c (Flsh): Likewise.
16568
16569 * fontset.c (Fset_fontset_font): Likewise.
16570
16571 * macfns.c (Fx_server_max_request_size): Likewise.
16572
16573 * w16select.c (syms_of_win16select): Likewise.
16574
16575 * w32select.c (syms_of_w32select): Likewise.
16576
16577 * xselect.c (syms_of_xselect): Likewise.
16578
16579 2002-09-05 Richard M. Stallman <rms@gnu.org>
16580
16581 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
16582 call EXTEND_RANGE_TABLE and return a proper value.
16583 (set_image_of_range): Don't call set_image_of_range_1
16584 if no TRANSLATE or if range includes all of Latin-1.
16585 Only call it for the Latin-1 part of the range.
16586 For other cases, make two separate ranges,
16587 one for the original specified characters and one for
16588 their case-conversions.
16589
16590 2002-09-04 Richard M. Stallman <rms@gnu.org>
16591
16592 * s/sol2-5.h (UNEXEC): Use unexsol.o.
16593
16594 * window.c (displayed_window_lines): Correct for one-off bug
16595 in HEIGHT on non-window displays.
16596
16597 * regex.c (set_image_of_range_1): New function.
16598 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
16599 Return a value to indicate running out of memory.
16600 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
16601 (extend_range_table_work_area): New subroutine.
16602 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
16603 Different calling conventions, and used from set_image_of_range{,_1}.
16604 (IMMEDIATE_QUIT_CHECK): Definitions moved.
16605
16606 2002-09-04 Juanma Barranquero <lektu@terra.es>
16607
16608 * makefile.w32-in: All dependencies updated.
16609
16610 2002-09-01 Richard M. Stallman <rms@gnu.org>
16611
16612 * unexsol.c: New file.
16613
16614 * xfns.c (Qbox): Declare external, don't define.
16615
16616 * xdisp.c (redisplay_window) <force-start case>:
16617 If point is on semi-visible last line, reposition
16618 it at previous line.
16619
16620 * alloc.c (display_malloc_warning): Use display-warning.
16621 (malloc_warning_1): Function deleted.
16622
16623 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
16624
16625 * lread.c (read1): Handle #! by skipping the line.
16626
16627 2002-08-31 Richard M. Stallman <rms@gnu.org>
16628
16629 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
16630 Don't include LDFLAGS.
16631 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
16632
16633 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
16634
16635 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
16636 member of x_display_info unless we compile for some window system.
16637
16638 2002-08-31 Kim F. Storm <storm@cua.dk>
16639
16640 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
16641 (get_window_cursor_type): Don't use them.
16642 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
16643
16644 2002-08-30 Kenichi Handa <handa@etl.go.jp>
16645
16646 * xdisp.c (get_next_display_element): Fix previous change.
16647
16648 2002-08-30 Andrew Choi <akochoi@shaw.ca>
16649
16650 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
16651 (expose_window): Use it to fix the display of overlapping
16652 rows (merge code from xterm.c).
16653
16654 * macfns.c (Qbox): Add extern declaration.
16655
16656 2002-08-30 Juanma Barranquero <lektu@terra.es>
16657
16658 * w32fns.c (Qbox): Make extern.
16659 (syms_of_w32fns): Remove initialization of Qbox.
16660
16661 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
16662
16663 * xfns.c (Fx_open_connection): Fix error message.
16664
16665 2002-08-30 Kim F. Storm <storm@cua.dk>
16666
16667 The following changes consolidates the handling of the cursor
16668 type in xdisp.c, moving duplicate code and functionality from
16669 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
16670
16671 * frame.h (enum text_cursor_kinds): Consolidated here.
16672 Added DEFAULT_CURSOR value.
16673 (struct frame) <desired_cursor, cursor_width>
16674 <blink_off_cursor, blink_off_cursor_width>: New fields.
16675 Consolidated from output_x, output_w32 and output_mac structs.
16676 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16677 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
16678
16679 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
16680 Variables consolidated here.
16681 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
16682 (Vcursor_in_non_selected_windows): Renamed from
16683 cursor_in_non_selected_windows and changed to Lisp_Object.
16684 (syms_of_xdisp): Define and staticpro new and moved variables.
16685 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
16686 consolidated here. Recognize Qhollow setting.
16687 (set_frame_cursor_types): New function to set frame cursor types
16688 based on the frame parameters.
16689 (get_window_cursor_type): New function to calculate new cursor
16690 type and width for the specified window. Based on duplicated
16691 code consolidated here.
16692 Enhancements: cursor-in-non-selected-windows may be a cursor type,
16693 check buffer-local alternate-cursor-type and blink-cursor-alist
16694 before using built-in blink off methods.
16695
16696 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
16697
16698 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
16699 (get_specified_cursor_type, get_window_cursor_type)
16700 (set_frame_cursor_types): Added prototypes.
16701
16702 * macfns.c (x_specified_cursor_type): Removed.
16703 (x_set_cursor_type): Use set_frame_cursor_types.
16704 (Qbar, Qbox): Removed.
16705 (syms_of_macfns): Don't intern or staticpro them.
16706
16707 * macterm.c (x_specified_cursor_type): Remove prototype.
16708 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16709 (x_display_and_set_cursor): Use get_window_cursor_type.
16710 Remove unused local variables cursor_non_selected, active_cursor.
16711 Redraw cursor if hbar cursor width changes.
16712 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
16713
16714 * macterm.h (enum text_cursor_kinds): Removed.
16715 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
16716 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16717 (FRAME_DESIRED_CURSOR): Macro removed.
16718
16719 * w32fns.c (Vblink_cursor_alist): Removed.
16720 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16721 (syms_of_w32fns): Don't intern, staticpro, or define them.
16722 (x_specified_cursor_type): Removed.
16723 (x_set_cursor_type): Use set_frame_cursor_types.
16724
16725 * w32term.c (x_specified_cursor_type): Remove prototype.
16726 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16727 (x_display_and_set_cursor): Use get_window_cursor_type.
16728 Remove unused local variables cursor_off_state.
16729 Redraw cursor if hbar cursor width changes.
16730 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
16731
16732 * w32term.h (enum text_cursor_kinds): Removed.
16733 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
16734 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16735 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16736 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16737 (struct w32_display_info) <x_highlight_frame>: Renamed member from
16738 w32_highlight_frame.
16739
16740 * xfns.c (Vblink_cursor_alist): Removed.
16741 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16742 (syms_of_xfns): Don't intern, staticpro, or define them.
16743 (x_specified_cursor_type): Removed.
16744 (x_set_cursor_type): Use set_frame_cursor_types.
16745
16746 * xterm.c (x_specified_cursor_type): Remove prototype.
16747 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16748 (x_display_and_set_cursor): Use get_window_cursor_type.
16749 Remove unused local variables cursor_off_state.
16750 Redraw cursor if hbar cursor width changes.
16751
16752 * xterm.h (enum text_cursor_kinds): Removed.
16753 (struct output_x) <current_cursor, desired_cursor, cursor_width>
16754 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16755 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16756 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16757 (x_specified_cursor_type): Remove prototype.
16758
16759 2002-08-28 Richard M. Stallman <rms@gnu.org>
16760
16761 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16762 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16763 (Vblink_cursor_alist): New variable.
16764 (syms_of_w32fns): Initialize and defvar it.
16765 (x_specified_cursor_type): Recognize Qbox for filled box.
16766 Exceptions are hollow boxes.
16767 (Qbox, Qhollow): New variables.
16768 (syms_of_w32fns): Initialize and staticpro them.
16769
16770 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16771 New macros.
16772 (struct w32_output): New fields blink_off_cursor,
16773 blink_off_cursor_width.
16774 (FRAME_CURSOR_WIDTH): New macro.
16775
16776 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16777 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16778
16779 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16780 for bar cursor.
16781
16782 * w32term.c (expose_overlaps): New function.
16783 (expose_window): Use it to fix the display of overlapping rows.
16784
16785 2002-08-28 Simon Josefsson <jas@extundo.com>
16786
16787 * xfns.c (Fx_open_connection): Improve help when X connection
16788 fails, xhost is insecure and xauth is better.
16789
16790 2002-08-28 Juanma Barranquero <lektu@terra.es>
16791
16792 * makefile.w32-in: Add missing dependencies on w32term.h and
16793 composite.h.
16794
16795 * emacs.c (USAGE1): Add missing newline.
16796
16797 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16798
16799 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16800
16801 2002-08-27 Richard M. Stallman <rms@gnu.org>
16802
16803 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16804 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16805 (Vblink_cursor_alist): New variable.
16806 (syms_of_xfns): Initialize and defvar it.
16807 (x_specified_cursor_type): Recognize Qbox for filled box.
16808 Exceptions are hollow boxes.
16809 (Qbox, Qhollow): New variables.
16810 (syms_of_xfns): Initialize and staticpro them.
16811
16812 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16813 New macros.
16814 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16815
16816 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16817 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16818
16819 * emacs.c (main): Handle --script.
16820 (USAGE1): Mention --script.
16821 (standard_args): Define sort order for --script.
16822
16823 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16824
16825 * xdisp.c (redisplay_updating_p): Variable removed.
16826 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16827 New variables.
16828 (init_iterator): Don't free realized faces if
16829 inhibit_free_realized_faces is set.
16830 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16831 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16832 initialize Qinhibit_free_realized_faces.
16833
16834 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
16835 when iterator is adding glyphs to a glyph matrix.
16836
16837 2002-08-27 Kenichi Handa <handa@etl.go.jp>
16838
16839 * xdisp.c (get_next_display_element): In unibyte case, don't use
16840 octal form for such eight-bit characters that can be converted to
16841 multibyte char.
16842
16843 2002-08-26 Kim F. Storm <storm@cua.dk>
16844
16845 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
16846 foreground and background colors. From Joe Buehler.
16847
16848 2002-08-26 Miles Bader <miles@gnu.org>
16849
16850 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
16851
16852 2002-08-25 Andrew Choi <akochoi@shaw.ca>
16853
16854 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
16855 defined instead of MAC_OSX.
16856
16857 * s/darwin.h (select): Define select to sys_select only if
16858 HAVE_CARBON is defined.
16859 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
16860 (DONT_REOPEN_PTY): #def it.
16861
16862 * macterm.c (XTread_socket): Remove code to call
16863 SendEventToEventTarget for keys with command modifiers when
16864 mac_command_key_is_meta is nil.
16865
16866 2002-08-24 Andreas Schwab <schwab@suse.de>
16867
16868 * eval.c (Fdefvar): Fix last change.
16869
16870 2002-08-23 Richard M. Stallman <rms@gnu.org>
16871
16872 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
16873 Record variables in load history as (defvar . VAR).
16874 (Fdefvar): Don't record in load history if no initial value.
16875 (Qdefvar): New variable.
16876 (syms_of_eval): Init and staticpro it.
16877
16878 * lread.c (syms_of_lread): Doc fix.
16879 (build_load_history): Use Fmember to see if a definition
16880 is already in the Vload_history element.
16881
16882 * process.c (Fstart_process): Remove /: from program name.
16883
16884 * emacs.c (decode_env_path): Don't add /: if file name handler
16885 has a `safe-magic' property.
16886
16887 * callproc.c (Fcall_process): Remove /: from program name.
16888
16889 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
16890
16891 * regex.c (PATFETCH): Remove the translating fetch.
16892 (PATFETCH_RAW): Rename to PATFETCH.
16893 (set_image_of_range): New fun.
16894 (SET_RANGE_TABLE_WORK_AREA): Use it.
16895 (regex_compile): Don't translate the pattern chars so eagerly.
16896 Only do it when inserting an `exactn' bytecode or when handling
16897 a char-range.
16898 (mutually_exclusive_p): Avoid empty statement.
16899
16900 2002-08-22 Kim F. Storm <storm@cua.dk>
16901
16902 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
16903 end up on a partially visible line; this reverts a specific part
16904 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
16905 display error which has been reported several times now.
16906 However it introduces the problem that changes was supposed to fix.
16907 See my comments in the source if you want to debug this further.
16908
16909 2002-08-20 Kenichi Handa <handa@etl.go.jp>
16910
16911 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16912
16913 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
16914
16915 * msdos.c (croak): Add `void' to definition.
16916
16917 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
16918 Don't define them, they are defined in msdos.c.
16919
16920 * mem-limits.h [MSDOS]: Declare etext.
16921
16922 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
16923 `const' since CORRECT_DIR_SEPS modifies its target.
16924
16925 2002-08-19 Kim F. Storm <storm@cua.dk>
16926
16927 * keyboard.c (Fclear_this_command_keys): Add optional arg
16928 KEEP-RECORD to avoid clearing lossage when we just want to clear
16929 the current key sequence (kmacro needs this).
16930
16931 2002-08-19 Kenichi Handa <handa@localhost>
16932
16933 * composite.c (run_composition_function): Call FUNC if it is fboundp.
16934
16935 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
16936 cons, return Qnil.
16937
16938 2002-08-17 Richard M. Stallman <rms@gnu.org>
16939
16940 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
16941
16942 * sysdep.c [!VMS]: Include sys/files.h.
16943
16944 * editfns.c (save_restriction_restore): Defend from unchained marker.
16945
16946 * buffer.c (overlays_at): Handle extending vec uniformly.
16947 (overlays_in): Handle extending vec from length 0 as in overlays_at.
16948
16949 2002-08-15 Andrew Choi <akochoi@shaw.ca>
16950
16951 * mac.c (init_mac_osx_environment): New function.
16952
16953 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
16954
16955 2002-08-14 Kim F. Storm <storm@cua.dk>
16956
16957 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
16958 executing macro before appending to it (when used from Lisp).
16959 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
16960 which is called prior to each iteration of macro (for kmacro.el).
16961 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
16962
16963 * lisp.h (Fexecute_kbd_macro): Update prototype.
16964
16965 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
16966
16967 2002-08-14 Kenichi Handa <handa@etl.go.jp>
16968
16969 * xselect.c (QUTF8_STRING): New variable.
16970 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
16971 (x_atom_to_symbol): Likewise.
16972 (x_get_local_selection): New argument local_request. If it is
16973 nonzero, call handler_fn with the second arg nil.
16974 (x_handle_selection_request): Call x_get_local_selection with
16975 local_request 0.
16976 (lisp_data_to_selection_data): Don't encode the string here.
16977 (Fx_get_selection_internal): Call x_get_local_selection with
16978 local_request 1.
16979 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
16980
16981 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
16982
16983 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
16984
16985 2002-08-13 Richard M. Stallman <rms@gnu.org>
16986
16987 * minibuf.c (Fminibufferp): New function.
16988 (syms_of_minibuf): Defsubr it.
16989 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
16990
16991 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
16992
16993 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
16994
16995 2002-08-12 Richard M. Stallman <rms@gnu.org>
16996
16997 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
16998 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
16999 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
17000 already.
17001
17002 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
17003
17004 2002-08-11 Andrew Choi <akochoi@shaw.ca>
17005
17006 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
17007 (Vmac_pass_command_to_system): New variable.
17008 (Vmac_pass_control_to_system): New variable.
17009 (do_mouse_moved): Check wp with is_emacs_window.
17010 (XTread_socket): Check window_ptr with is_emacs_window.
17011 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
17012 events back to Mac Toolbox for processing, depending on values of
17013 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
17014 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
17015 Vmac_pass_control_to_system.
17016
17017 2002-08-10 Kenichi Handa <handa@etl.go.jp>
17018
17019 * coding.c (unencodable_char_position): New function.
17020 (Funencodable_char_position): New function.
17021 (syms_of_coding): Defsubr Funencodable_char_position.
17022
17023 2002-08-10 Andrew Choi <akochoi@shaw.ca>
17024
17025 * mac.c (sys_select) [MAC_OSX]: New function.
17026
17027 * macterm.c (MakeMeTheFrontProcess): New function.
17028 (mac_initialize): Call MakeMeTheFrontProcess.
17029
17030 * s/darwin.h: Define select to sys_select.
17031
17032 2002-08-09 Richard M. Stallman <rms@gnu.org>
17033
17034 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
17035
17036 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
17037
17038 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
17039 end of the buffer.
17040
17041 2002-08-08 Ken Raeburn <raeburn@gnu.org>
17042
17043 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
17044
17045 * puresize.h (BASE_PURESIZE): Increase to 910000.
17046
17047 2002-08-08 Kenichi Handa <handa@etl.go.jp>
17048
17049 * coding.c (Ffind_operation_coding_system): For write-region, if
17050 VISIT is a filename, make it the target.
17051
17052 2002-08-07 Richard M. Stallman <rms@gnu.org>
17053
17054 * alloc.c (mark_object): Detect long lists for debugging.
17055 (mark_object_loop_halt): New variable.
17056
17057 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
17058
17059 * data.c (Fmake_variable_frame_local): Doc fix.
17060
17061 2002-08-01 David Ponce <david@dponce.com>
17062
17063 * w32menu.c (local_heap, local_alloc, local_free): New macros.
17064 (malloc_widget_value, free_widget_value)
17065 (w32_free_submenu_strings): Use them.
17066
17067 (push_submenu_start, push_submenu_end, push_left_right_boundary)
17068 (push_menu_pane, push_menu_item, single_keymap_panes)
17069 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
17070 (single_submenu, set_frame_menubar)
17071 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
17072
17073 (Fx_popup_menu): Don't show pop up menu until preceding one is
17074 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
17075
17076 * w32menu.c: Changes adapted from xmenu.c
17077 (set_frame_menubar): First parse all submenus,
17078 then make widget_value trees from them.
17079 Don't allocate any widget_value objects
17080 until we are done with the parsing.
17081 (parse_single_submenu): New function.
17082 (digest_single_submenu): New function.
17083 (single_submenu): Function deleted, replaced by those two.
17084
17085 2002-08-04 Andrew Choi <akochoi@shaw.ca>
17086
17087 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
17088 returns a valid window pointer before proceeding for keyDown and
17089 autoKey events.
17090
17091 2002-08-03 Andrew Choi <akochoi@shaw.ca>
17092
17093 * macterm.c (USE_CARBON_EVENTS): New macro.
17094 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
17095 (x_iconify_frame): Call CollapseWindow.
17096 (Vmac_reverse_ctrl_meta): New variable.
17097 (Vmac_wheel_button_is_mouse_2): New variable.
17098 (init_mac_drag_n_drop): New function.
17099 (mac_do_receive_drag): New function.
17100 (mac_handle_service_event): New function.
17101 (init_service_handler): New function.
17102 (mac_to_emacs_modifiers): New function.
17103 (mac_event_to_emacs_modifiers): New function.
17104 (mac_get_mouse_btn): New function.
17105 (mac_convert_event_ref): New function.
17106 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
17107 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
17108 mac_get_mouse_btn.
17109 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
17110
17111 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
17112 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
17113 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
17114 TOOL_BAR_EVENT for MAC_OS as well.
17115 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
17116 as for WINDOWS_NT.
17117 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
17118
17119 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
17120
17121 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
17122
17123 * xdisp.c (forward_to_next_line_start): Fix a condition that
17124 lead to a newline being skipped.
17125
17126 2002-08-02 Andrew Choi <akochoi@shaw.ca>
17127
17128 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
17129
17130 2002-08-01 Richard M. Stallman <rms@gnu.org>
17131
17132 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
17133
17134 2002-07-31 Andrew Choi <akochoi@shaw.ca>
17135
17136 * macfns.c: #undef init_process before #define-ing it.
17137
17138 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
17139 HAVE_CARBON is defined.
17140
17141 2002-07-31 Richard M. Stallman <rms@gnu.org>
17142
17143 * xmenu.c (set_frame_menubar): First parse all submenus,
17144 then make widget_value trees from them.
17145 Don't allocate any widget_value objects
17146 until we are done with the parsing.
17147 (parse_single_submenu): New function.
17148 (digest_single_submenu): New function.
17149 (single_submenu): Function deleted, replaced by those two.
17150
17151 2002-07-30 Juanma Barranquero <lektu@terra.es>
17152
17153 * w32proc.c (syms_of_ntproc): Fix docstring of
17154 `w32-get-true-file-attributes'.
17155
17156 2002-07-28 Richard M. Stallman <rms@gnu.org>
17157
17158 * s/hpux8.h (HPUX8): Define this before including hpux.h.
17159 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
17160
17161 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
17162
17163 * keyboard.c (make_lispy_event):
17164 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
17165 Explicitly clear up_modifier in event->modifiers.
17166
17167 2002-07-27 Richard M. Stallman <rms@gnu.org>
17168
17169 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
17170
17171 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
17172 for bar cursor.
17173
17174 2002-07-26 Kenichi Handa <handa@etl.go.jp>
17175
17176 * coding.c (detect_coding_iso2022): While checking a byte sequence
17177 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
17178 it in the normal loop.
17179
17180 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
17181
17182 * xterm.c (expose_overlaps): New function.
17183 (expose_window): Use it to fix the display of overlapping rows.
17184
17185 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
17186
17187 2002-07-23 Ken Raeburn <raeburn@gnu.org>
17188
17189 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
17190 since it only depends on XUINT.
17191
17192 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
17193 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
17194 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
17195 Macros deleted.
17196
17197 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
17198 its value over other approaches.
17199 * sysdep.c (start_of_data): Don't define the function if a macro
17200 form has been defined.
17201
17202 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
17203
17204 * xdisp.c (redisplay_updating_p): New variable.
17205 (init_iterator): Don't free realized faces when
17206 redisplay_updating_p is set.
17207 (redisplay_internal): Set redisplay_updating_p while updating
17208 the display.
17209
17210 2002-07-23 Richard M. Stallman <rms@gnu.org>
17211
17212 * editfns.c (Fmessage): Treat "" like nil.
17213
17214 2002-07-23 Kenichi Handa <handa@etl.go.jp>
17215
17216 * xdisp.c (face_before_or_after_it_pos):
17217 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
17218
17219 2002-07-22 Juanma Barranquero <lektu@terra.es>
17220
17221 * callproc.c (init_callproc) [DOS_NT]:
17222 Initialize Vshared_game_score_directory to nil.
17223 (syms_of_callproc) [DOS_NT]: Likewise.
17224
17225 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
17226
17227 * xdisp.c (display_line): Replace an abort with xassert.
17228
17229 2002-07-21 Richard M. Stallman <rms@gnu.org>
17230
17231 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
17232 and END_UNCHANGED when setting buffer_unchanged_p.
17233 Use current_matrix_up_to_date_p to decide whether to use
17234 try_cursor_movement.
17235
17236 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
17237
17238 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
17239
17240 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
17241 Set to nil if dir does not exist.
17242 (syms_of_callproc): Init unconditionally and simply.
17243
17244 * buffer.c (Fbuffer_list): Doc fix.
17245
17246 2002-07-21 Ken Raeburn <raeburn@gnu.org>
17247
17248 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
17249
17250 * buffer.c (mmap_realloc): When shrinking, make sure number of
17251 pages to unmap is rounded towards zero.
17252
17253 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
17254 (XSETINT): Deleted.
17255
17256 * m/att3b.h (XINT): Don't define.
17257 (VALBITS, VALMASK, XTYPE): Deleted.
17258 (DATA_SEG_BITS): Define.
17259 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
17260 ARRAY_MARK_FLAG): Deleted.
17261 (DATA_SEG_BITS): Define.
17262 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
17263 (DATA_SEG_BITS): Define.
17264
17265 2002-07-20 Richard M. Stallman <rms@gnu.org>
17266
17267 * print.c (print_error_message): New args CONTEXT and CALLER.
17268 Calls changed.
17269
17270 * lisp.h (print_error_message): Declare new args.
17271
17272 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
17273 and CONTEXT to print_error_message, don't print them here.
17274 For a Quit, don't use Vsignaling_function.
17275 Call message_log_maybe_newline.
17276
17277 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
17278
17279 2002-07-20 Kim F. Storm <storm@cua.dk>
17280
17281 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
17282
17283 2002-07-19 Ken Raeburn <raeburn@gnu.org>
17284
17285 * bytecode.c (struct byte_stack): Pointers into byte string now
17286 point to const.
17287 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
17288 const.
17289 * charset.h (BCOPY_SHORT): Source pointer now points to const.
17290 * coding.c (encode_eol, detect_coding, detect_eol):
17291 (decode_coding, encode_coding, detect_coding_system):
17292 Source strings now treated as const.
17293 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
17294 modify Lisp string contents.
17295 * coding.h (decode_coding, encode_coding, detect_coding,
17296 detect_eol): Declarations updated.
17297 * composite.c (compose_chars_in_text): Treat Lisp string contents
17298 as const.
17299 * dispnew.c (safe_bcopy): Source pointer now points to const.
17300 * lisp.h (STRING_COPYIN): New macro.
17301 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
17302 (internal_with_output_to_temp_buffer): Declarations updated.
17303 * print.c (temp_output_buffer_setup):
17304 (internal_with_output_to_temp_buffer): Buffer name argument is now
17305 pointer to const.
17306 * sound.c (struct sound_device): Function pointer field "write"
17307 buffer argument now points to const.
17308 (vox_write): Buffer argument points to const.
17309 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
17310 contents as const.
17311 * sysdep.c (emacs_write): Buffer pointer now const.
17312 * term.c (encode_terminal_code): Buffer pointer now const.
17313 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
17314 (x_face_list_fonts, x_update_menu_appearance):
17315 (hash_string_case_insensitive): Treat Lisp string contents as const.
17316
17317 2002-07-19 Juanma Barranquero <lektu@terra.es>
17318
17319 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
17320
17321 * fileio.c (syms_of_fileio): Likewise.
17322 (Ffile_name_as_directory): Fix argument name in docstring.
17323 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
17324
17325 2002-07-18 Richard M. Stallman <rms@gnu.org>
17326
17327 * data.c (Fdefalias): Doc fix.
17328
17329 2002-07-17 Dave Love <fx@gnu.org>
17330
17331 * intervals.h (text_property_stickiness): Use P_.
17332
17333 * ccl.c: Remove `emacs' conditionals.
17334 (ccl_backtrace_table): Fix size spec.
17335 (ccl_driver): Fix type errors.
17336
17337 2002-07-16 Ken Raeburn <raeburn@gnu.org>
17338
17339 * alloc.c (xstrdup, make_string, make_unibyte_string)
17340 (make_multibyte_string, build_string): String pointer args now
17341 point to const.
17342 * charset.c (find_charset_in_text, c_string_width):
17343 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
17344 * fileio.c (report_file_error):
17345 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
17346 (count_combining_before, count_combining_after, insert_1_both):
17347 (insert, insert_and_inherit, insert_string):
17348 (insert_before_markers, insert_before_markers_and_inherit):
17349 * lread.c (intern, oblookup, hash_string):
17350 * minibuf.c (temp_echo_area_glyphs):
17351 * search.c (fast_c_string_match_ignore_case):
17352 * sysdep.c (emacs_open, set_file_times):
17353 * xfaces.c (xstricmp):
17354 * xdisp.c (store_frame_title, string_char_and_length):
17355 (message_dolog, message2, message2_nolog, set_message): Likewise.
17356 (set_message_1): Cast message string argument to const pointer.
17357 * editfns.c (general_insert_function): Insertion function now
17358 takes pointer to const for input data.
17359 * charset.h (find_charset_in_text, c_string_width):
17360 (parse_str_as_multibyte): Declarations updated.
17361 * dispextern.h (xstricmp): Declaration updated.
17362 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
17363 (count_size_as_multibyte, count_combining_before):
17364 (count_combining_after, insert_1, insert_1_both, message_dolog):
17365 (insert, insert_and_inherit, insert_before_markers)
17366 (insert_before_markers_and_inherit, set_message, message2):
17367 (message2_dolog, build_string, make_string, make_unibyte_string):
17368 (make_multibyte_string, intern, oblookup, report_file_error):
17369 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
17370 (emacs_open, xstrdup): Declarations updated.
17371 * systime.h (set_file_times): Declaration updated.
17372
17373 * charset.c (find_charset_in_text, lisp_string_width): Use const
17374 for pointer to lisp string data.
17375 * charset.h (FETCH_STRING_CHAR_ADVANCE):
17376 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
17377 * coding.c (Ffind_coding_systems_region_interval):
17378 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
17379 (Fmake_directory_internal, Fdelete_directory):
17380 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
17381 * fontset.c (font_family_registry, fs_query_fontset):
17382 (list_fontsets):
17383 * frame.c (Fframe_parameter):
17384 * keyboard.c (cmd_error_internal):
17385 * keymap.c (Fdescribe_buffer_bindings):
17386 * lread.c (complete_filename_p, openp):
17387 * minibuf.c (Fminibuffer_complete_word):
17388 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
17389 (face_before_or_after_it_pos, next_element_from_string):
17390 (get_overlay_arrow_glyph_row, display_mode_element):
17391 (decode_mode_spec_coding):
17392 * xterm.c (same_x_server): Likewise.
17393
17394 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
17395 settings of non-existent fields.
17396
17397 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
17398 copy a lisp value.
17399
17400 * lread.c (Fintern_soft): Use string macros instead of
17401 Lisp_String fields.
17402 * keyboard.c (echo_char, parse_modifiers_uncached):
17403 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
17404 * textprop.c (validate_interval_range, interval_of): Likewise.
17405
17406 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
17407
17408 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17409 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
17410 XSTRING()->size_byte.
17411
17412 * lisp.h (SDATA, SREF): Produce rvalue.
17413 (SSET): New macro.
17414 * alloc.c (make_event_array): Use SSET for storing into a string.
17415 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
17416 a string.
17417 * casefiddle.c (casify_object): Use SSET.
17418 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17419 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
17420 address of string contents.
17421 * data.c (Faref): Use SDATA.
17422 (Faset): Use SDATA, SSET.
17423 * dired.c (directory_files_internal): Use SSET.
17424 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
17425 (Fread_file_name): Use SREF, SSET.
17426 * fns.c (concat): Use SSET.
17427 (concat, Fdelete): Use SDATA.
17428 * insdel.c (insert_from_string_1): Use SDATA.
17429 * keyboard.c (Fevent_convert_list): Use SREF.
17430 * lread.c (Fload): Use SDATA, SSET.
17431 * macfns.c (validate_x_resource_name): Use SSET.
17432 * process.c (status_message): Use SSET.
17433 * search.c (wordify): Use SDATA.
17434 (Freplace_match): Use SREF.
17435 * w32fns.c (validate_x_resource_name): Use SSET.
17436 * xfns.c (validate_x_resource_name): Use SSET.
17437 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
17438
17439 2002-07-16 Richard M. Stallman <rms@gnu.org>
17440
17441 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
17442
17443 * xdisp.c (reconsider_clip_changes):
17444 Don't test prevent_redisplay_optimizations_p.
17445 (redisplay_internal): Test prevent_redisplay_optimizations_p
17446 along with clip_changed in some cases.
17447 (try_window_id): Likewise.
17448 (redisplay_window): New local var buffer_unchanged_p.
17449
17450 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
17451
17452 * process.c (create_process): Test USG_SUBTTY_WORKS.
17453 (process_send_signal): Clean up handling of GID.
17454 Detect errors in ioctls meant to set GID.
17455
17456 * window.c (temp_output_buffer_show):
17457 Don't set prevent_redisplay_optimizations_p.
17458
17459 2002-07-15 Juanma Barranquero <lektu@terra.es>
17460
17461 * eval.c (Fdefvaralias): Add docstring argument.
17462
17463 2002-07-15 Ken Raeburn <raeburn@gnu.org>
17464
17465 * lisp.h (STRING_INTERVALS): Produce rvalue.
17466 (STRING_SET_INTERVALS): New macro.
17467 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
17468 * fns.c (Fstring_as_multibyte): Likewise.
17469 * intervals.c (balance_possible_root_interval, delete_interval)
17470 (create_root_interval, copy_intervals_to_string): Likewise.
17471 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
17472 instead of 0.
17473
17474 2002-07-14 Ken Raeburn <raeburn@gnu.org>
17475
17476 * lisp.h (STRING_SET_CHARS): New macro.
17477 (SCHARS, SBYTES): Produce rvalues.
17478 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
17479 * fns.c (concat): Likewise.
17480 * lread.c (read_vector): Likewise.
17481
17482 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
17483 (STRING_SET_UNIBYTE): New macro.
17484 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
17485 length of -1) changed to use STRING_SET_UNIBYTE.
17486 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
17487 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
17488 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
17489 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
17490 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
17491 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
17492 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
17493 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
17494 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
17495 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
17496 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
17497 STRING_BYTES or indirection changed to SCHARS, SBYTES,
17498 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
17499 unchanged for now.
17500
17501 2002-07-13 Kim F. Storm <storm@cua.dk>
17502
17503 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
17504
17505 2002-07-12 Richard M. Stallman <rms@gnu.org>
17506
17507 * fileio.c (Fwrite_region): Doc fix.
17508
17509 * print.c (print_error_message): Don't handle Vsignaling_function here.
17510
17511 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
17512 (command_loop_1): Avoid certain actions after memory-full error.
17513
17514 * eval.c (Fsignal): Don't call cancel_hourglass.
17515 For a memory-full error, don't call Vsignal_hook_function
17516 and don't set Vsignaling_function.
17517
17518 * process.c (process_send_signal): Add abort call.
17519
17520 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
17521
17522 * keymap.c (Fkey_binding): Fix typo.
17523
17524 2002-07-11 Richard M. Stallman <rms@gnu.org>
17525
17526 * alloc.c (Vmemory_full): New variable.
17527 (Vmemory_signal_data): Rename from memory_signal_data.
17528 Uses changed.
17529 (syms_of_alloc): Defvar them.
17530 (memory_full, buffer_memory_full): Set Vmemory_full.
17531
17532 * lisp.h (Vmemory_full): Add declaration.
17533 (current_column, indented_beyond_p): Change declaration.
17534
17535 * indent.c (last_known_column): Declare as double, not float.
17536 (current_column, current_column_1, string_display_width)
17537 (position_indentation): Return `double'.
17538 (indented_beyond_p): Arg `column' is `double'. Callers changed.
17539
17540 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
17541 (back_to_previous_visible_line_start)
17542 (reseat_at_next_visible_line_start, next_element_from_buffer):
17543 Use `double', not `float', when calling indented_beyond_p.
17544
17545 * s/hpux11.h (BROKEN_SA_RESTART): Define.
17546
17547 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
17548
17549 2002-07-11 Juanma Barranquero <lektu@terra.es>
17550
17551 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
17552 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
17553 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
17554 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
17555 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
17556 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
17557
17558 2002-07-10 Juanma Barranquero <lektu@terra.es>
17559
17560 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
17561 All callers changed.
17562
17563 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
17564
17565 * data.c (Fdefalias): Add an optional `docstring' argument.
17566 (set_internal, Fsetq_default): Use XCAR/XCDR.
17567
17568 * composite.c (HASH_VALUE, HASH_KEY):
17569 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
17570
17571 2002-07-09 Kenichi Handa <handa@etl.go.jp>
17572
17573 * callproc.c (Fcall_process): Fix previous change.
17574
17575 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
17576
17577 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
17578 Add support for hash-tables.
17579 (Ftry_completion): Return t even if the string appears multiple times.
17580
17581 * fns.c (Fnconc): Use XCDR.
17582 (Fprovide): Use CONSP and XCDR.
17583 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17584 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
17585 (Fmake_hash_table): Accept `:size nil'.
17586 (Fmakehash): Delete: moved to subr.el.
17587 (syms_of_fns): Don't defsubr makehash.
17588
17589 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17590 (HASH_TABLE_SIZE): Move from fns.c.
17591
17592 2002-07-07 Richard M. Stallman <rms@gnu.org>
17593
17594 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
17595 Instead just return 0 when there is something to be done.
17596 (try_scrolling): If make_cursor_line_fully_visible returns 0,
17597 retry scrolling as if cursor were off the bottom.
17598 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
17599 return CURSOR_MOVEMENT_MUST_SCROLL.
17600 (redisplay_window): If make_cursor_line_fully_visible returns 0,
17601 go to try_to_scroll.
17602
17603 * buffer.c (Fbuffer_local_value): Store current value into its binding
17604 so we get the up-to-date value for the binding that is loaded.
17605
17606 * eval.c (Fdefmacro): Doc fix.
17607
17608 2002-07-05 Dave Love <fx@gnu.org>
17609
17610 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
17611 correctly.
17612
17613 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
17614 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
17615 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
17616 CCL_LookupCharConstTbl.
17617 (syms_of_ccl): Defvar translation-hash-table-vector.
17618
17619 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17620
17621 * xdisp.c: Remove unused variable `face'.
17622
17623 2002-07-04 Juanma Barranquero <lektu@terra.es>
17624
17625 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
17626 obsolescence information.
17627
17628 2002-07-03 Andrew Choi <akochoi@shaw.ca>
17629
17630 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
17631 pattern. Search cache first.
17632 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
17633 for Japanese font.
17634 (XLoadQueryFont): Use it.
17635
17636 2002-07-02 Richard M. Stallman <rms@gnu.org>
17637
17638 * keymap.c (Fdefine_key): Doc fix.
17639
17640 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
17641
17642 2002-07-02 Juanma Barranquero <lektu@terra.es>
17643
17644 * keymap.c (syms_of_keymap): Fix typo.
17645
17646 2002-07-01 Andrew Choi <akochoi@shaw.ca>
17647
17648 * s/darwin.h: Define POSIX_SIGNALS.
17649
17650 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
17651 and FSRefMakePath to convert FSSpec returned with Apple Event to
17652 Posix pathname.
17653 (mac_initialize) [TARGET_API_MAC_CARBON]:
17654 Call init_required_apple_events and disable the `Quit' menu item
17655 provided automatically by the Carbon Toolbox.
17656
17657 2002-07-01 Dave Love <fx@gnu.org>
17658
17659 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
17660 for K&R.
17661
17662 * xterm.c: Fix prototype for K&R.
17663
17664 * term.c (costs_set): Declare static, non-initialized for pcc.
17665
17666 2002-07-01 Richard M. Stallman <rms@gnu.org>
17667
17668 * keyboard.c (timer_last_idleness_start_time): New variable.
17669 (timer_start_idle): Set that.
17670 (read_key_sequence): Use that to reset timer_idleness_start_time
17671 to previous value.
17672
17673 * window.c (Frecenter): With arg, set optional_new_start.
17674
17675 * xdisp.c (redisplay_internal): Make optional_new_start really work.
17676
17677 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
17678 buffer for completion.
17679
17680 2002-06-29 Ken Raeburn <raeburn@gnu.org>
17681
17682 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
17683
17684 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17685
17686 * keyboard.c (readable_filtered_events): New function that filters
17687 FOCUS_IN_EVENT depending on parameter.
17688 (readable_events): Calls readable_filtered_events, not filtering
17689 FOCUS_IN_EVENT.
17690 (get_filtered_input_pending): New function, filtering parameter passed
17691 to readable_filtered_events.
17692 (get_input_pending): Calls get_filtered_input_pending, not filtering
17693 FOCUS_IN_EVENT.
17694 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
17695 FOCUS_IN_EVENT.
17696
17697 * xterm.h (struct x_output): Add focus_state.
17698
17699 * xterm.c (x_focus_changed): New function.
17700 (x_detect_focus_change): New function.
17701 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
17702 EnterNotify and LeaveNotify to track X focus changes.
17703
17704 2002-06-28 Andreas Schwab <schwab@suse.de>
17705
17706 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
17707
17708 2002-06-27 Kim F. Storm <storm@cua.dk>
17709
17710 * xdisp.c (mode_line_string_list, mode_line_string_face)
17711 (mode_line_string_face_prop): New variables.
17712 (store_mode_line_string): New function.
17713 (display_mode_element): Use store_mode_line_string to
17714 add mode-line string elements to mode_line_string_list
17715 when mode_line_string_list is non-nil.
17716 (Fformat_mode_line): Now returns propertized string by
17717 default. New arg NO-PROPS to ignore properties.
17718 (decode_mode_spec): Only add two dashes for %- in propertized
17719 mode-line string.
17720 (syms_of_xdisp): Init and staticpro mode_line_string_list.
17721
17722 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
17723
17724 * minibuf.c (minibuffer_completion_contents): Add return type.
17725
17726 2002-06-27 Juanma Barranquero <lektu@terra.es>
17727
17728 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
17729
17730 2002-06-26 Juanma Barranquero <lektu@terra.es>
17731
17732 * fileio.c (read_file_name_cleanup): Add missing return.
17733
17734 2002-06-26 Richard M. Stallman <rms@gnu.org>
17735
17736 * window.c (Frecenter): Don't set force_start flag.
17737
17738 * minibuf.c (do_completion, Fminibuffer_complete_word)
17739 (Fminibuffer_completion_help): Complete just the text before point.
17740 (minibuffer_completion_contents): New function.
17741
17742 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
17743
17744 * frame.c (frames_bury_buffer): Function deleted.
17745
17746 2002-06-25 Miles Bader <miles@gnu.org>
17747
17748 * callint.c (Fcall_interactively): When checking to see if doprnt hit
17749 the end of callint_message, allow for a terminating '\0'.
17750
17751 2002-06-24 Juanma Barranquero <lektu@terra.es>
17752
17753 * w32select.c: Include composite.h.
17754
17755 * w16select.c: Likewise.
17756
17757 2002-06-24 Kenichi Handa <handa@etl.go.jp>
17758
17759 * callproc.c (Fcall_process): If code detection is necessary,
17760 call detect_coding directly here.
17761
17762 * coding.c (detect_eol): Preserve coding->cmp_data.
17763
17764 * w16select.c (Fw16_get_clipboard_data):
17765 * w32fns.c (w32_to_x_font):
17766 * w32select.c (Fw32_get_clipboard_data):
17767 * xselect.c (selection_data_to_lisp_data):
17768 * xterm.c (XTread_socket): Disable composition handling.
17769
17770 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
17771
17772 * print.c (temp_output_buffer_setup): Kill all local variables.
17773
17774 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17775
17776 * lread.c (Fread): Remove redundant and imprecise declaration.
17777
17778 * xfns.c (check_x_display_info): Use check_x_frame.
17779
17780 * .gdbinit (xprintsym): Use the new `xname' field.
17781 (xsymbol): Use it.
17782
17783 2002-06-22 Jason Rumney <jasonr@gnu.org>
17784
17785 * w32fns.c (file_dialog_callback): New function.
17786 (Fx_file_dialog): Allow selecting directories as well as files.
17787
17788 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17789
17790 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17791 OpenBSD. Add support for mipseb-*-netbsd* machines.
17792
17793 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17794
17795 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17796 black and white before scrolling. Restore frame background and
17797 foreground color after scrolling.
17798 (do_window_update): Call XClearWindow before calling expose_frame.
17799 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17800 FRAME_FOREGROUND_PIXEL of frame.
17801
17802 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17803 test Mac command key as <ALT> key.
17804
17805 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17806
17807 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17808
17809 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17810 Lookup keys in function-key-map immediately so that key-translation-map
17811 can be applied earlier.
17812 Remove function_key_possible and key_translation_possible, replaced
17813 by checking `keytran_start < t'.
17814
17815 * .gdbinit (xsymbol): Use the new `xname' field.
17816
17817 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17818
17819 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17820 test Mac command key as <ALT> key.
17821
17822 * mac.c (do_applescript): Call initialize_applescript if necessary
17823 when first called. Dispose of result_desc only when there is no error.
17824 (Fdo_applescript): Use %d format specifier instead of %ld.
17825
17826 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17827
17828 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17829 of FrontWindow for cases keyDown and autoKey.
17830
17831 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17832 Vdefault_fontset to Monaco with mac-roman coding.
17833
17834 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
17835 init_process before and after inclusion of Carbon/Carbon.h, resp.
17836
17837 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
17838 cursor_gc.
17839 (add_font_name_table_entry): New function.
17840 (init_font_name_table): Use add_font_name_table_entry; add italic,
17841 bold, and bold-italic entries for truetype fonts.
17842
17843 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
17844 for Mac too.
17845 (try_font_list) [MAC_OS]: If no font matches given registry, try
17846 fonts with any registry matching face_family.
17847 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
17848
17849 * s/darwin.h: If autoconf detects the Ncurses library, define
17850 LIBS_TERMCAP to -lncurses to use it.
17851
17852 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
17853
17854 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
17855
17856 2002-06-15 Richard M. Stallman <rms@gnu.org>
17857
17858 * window.c (Fset_window_configuration): Explicitly preserve
17859 the point value that new_current_buffer had at the start.
17860
17861 2002-06-14 Juanma Barranquero <lektu@terra.es>
17862
17863 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
17864 Fix typos.
17865
17866 2002-06-14 Kim F. Storm <storm@cua.dk>
17867
17868 * insdel.c (insert_1_both, insert_from_string_1)
17869 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
17870 insert happened in the end_unchanged region. Otherwise, the
17871 redisplay may be confused and duplicate the last line in the
17872 buffer [seen after save-buffer when require-final-newline==t].
17873
17874 2002-06-13 Jason Rumney <jasonr@gnu.org>
17875
17876 * w32.c (init_environment): Remove EMACSLOCKDIR.
17877 (stat): Swap _S_IFDIR and _S_IFREG.
17878
17879 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17880
17881 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
17882 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
17883 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
17884 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
17885 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
17886 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
17887 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
17888 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
17889 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
17890 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
17891 SELECTION_REQUEST_EVENT, selection_clear_event to
17892 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
17893 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
17894 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
17895 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
17896 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
17897 no_event to NO_EVENT.
17898
17899 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17900
17901 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
17902
17903 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
17904
17905 * intervals.c (textget): Don't forget to `return'.
17906 (lookup_char_property): Use XCAR/XCDR.
17907
17908 2002-06-12 Juanma Barranquero <lektu@terra.es>
17909
17910 * xdisp.c (Fformat_mode_line): Fix typo.
17911
17912 2002-06-12 Kim F. Storm <storm@cua.dk>
17913
17914 * xdisp.c (Fformat_mode_line): New function.
17915 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
17916 (store_frame_title_char, store_frame_title): Use unconditionally.
17917 (init_xdisp): Defsubr Fformat_mode_line.
17918 Initialize frame_title_buf etc. unconditionally.
17919
17920 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
17921
17922 * keyboard.c (read_key_sequence):
17923 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
17924 things through those maps after downcasing events.
17925 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
17926 applies after function-key-map.
17927 Make sure that keytran can be done in the middle in the sequence.
17928 Be careful not to throw away events past the one we downcase.
17929
17930 * lread.c (read_integer): Remove unused var `tem'.
17931 (read1): Fix int/Lisp_Object mixup.
17932
17933 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
17934
17935 2002-06-11 Richard M. Stallman <rms@gnu.org>
17936
17937 * keyboard.c (readable_events): Ignore any number of
17938 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
17939
17940 2002-06-09 Miles Bader <miles@gnu.org>
17941
17942 * xfaces.c (Ftty_supports_face_attributes_p): New function.
17943 (parse_rgb_list, tty_lookup_color): New functions.
17944 (tty_defined_color): Use `tty_lookup_color' to do all the work.
17945 (color_distance, Fcolor_distance): New functions.
17946 (TTY_SAME_COLOR_THRESHOLD): New macro.
17947 (Qtty_color_standard_values): New variable.
17948 (syms_of_xfaces): Initialize new vars & functions.
17949
17950 2002-06-08 Colin Walters <walters@verbum.org>
17951
17952 * textprop.c (Vchar_property_alias_alist): New variable.
17953 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
17954
17955 * intervals.c (lookup_char_property): New function for looking up
17956 overlay and text properties, created from textget.
17957 (textget): Use it.
17958
17959 * intervals.h (lookup_char_property): Declare.
17960 (Vchar_property_alias_alist): Declare.
17961
17962 * buffer.c (Foverlay_get): Use lookup_char_property.
17963
17964 2002-06-07 Sam Steingold <sds@gnu.org>
17965
17966 * xselect.c (lisp_data_to_selection_data): Fix last change:
17967 *data_ret is not a Lisp string, while unibyte_string is.
17968
17969 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
17970
17971 * xselect.c (lisp_data_to_selection_data): Fix last change:
17972 set size_ret.
17973
17974 2002-06-07 Andreas Schwab <schwab@suse.de>
17975
17976 * m/amdx86-64.h: New file.
17977
17978 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
17979
17980 * fns.c (Fstring_make_unibyte): Doc fix.
17981
17982 * xselect.c (lisp_data_to_selection_data): If the requested type
17983 is STRING, call string_make_unibyte to encode the selected text
17984 as a string.
17985
17986 * window.c (Fset_window_hscroll): Doc fix.
17987
17988 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17989
17990 * fileio.c (choose_write_coding_system):
17991 Call select-safe-coding-system properly.
17992
17993 2002-06-03 Richard M. Stallman <rms@gnu.org>
17994
17995 * xdisp.c (message_with_string): Error if STRING is not a string.
17996
17997 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
17998
17999 * fileio.c (choose_write_coding_system): Pass FILE arg to
18000 Vselect_safe_coding_system_function.
18001
18002 2002-06-03 Ken Raeburn <raeburn@gnu.org>
18003
18004 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
18005
18006 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
18007
18008 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
18009 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
18010 * keymap.c (describe_command): Likewise.
18011 * minibuf.c (read_minibuf): Likewise.
18012
18013 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
18014 Cast `current_column' return value to int.
18015 (back_to_previous_visible_line_start)
18016 (reseat_at_next_visible_line_start, next_element_from_buffer):
18017 Cast `indented_beyond_p' 3rd arg to float.
18018
18019 * indent.c (last_known_column): Now a float.
18020 (current_column_1, position_indentation, current_column)
18021 (string_display_width): Return float.
18022 (Fcurrent_column): Cast `current_column' return value to int.
18023 (Fcurrent_indentation): Cast `position_indentation' retval to int.
18024 (indented_beyond_p): Third arg now a float.
18025 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
18026
18027 * lisp.h (current_column): Now returns float.
18028 (indented_beyond_p): 3rd arg now a float.
18029
18030 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
18031
18032 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
18033 is Qcompound_text_with_extensions.
18034
18035 * xselect.c (lisp_data_to_selection_data): Always set selection
18036 type as string if x_encode_text returns streingp non-NULL.
18037
18038 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
18039
18040 2002-05-30 Richard M. Stallman <rms@gnu.org>
18041
18042 * window.c (Fset_window_configuration): Correct the handling
18043 of point in current buffer, to work with multiple windows.
18044
18045 2002-05-29 Colin Walters <walters@verbum.org>
18046
18047 * lread.c (Fread_from_string): Don't depend on order of evaluation
18048 for C function parameters.
18049
18050 2002-05-28 Richard M. Stallman <rms@gnu.org>
18051
18052 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
18053 way for blinked-off state and for a nonselected window.
18054
18055 * window.c (window_scroll_pixel_based): Don't call Fbolp;
18056 instead, see if the new start pos is at beginning of line.
18057
18058 * fileio.c (Fwrite_region): If START is a string, don't
18059 make any annotations.
18060
18061 * eval.c (syms_of_eval): Doc fix.
18062
18063 2002-05-28 Colin Walters <walters@debian.org>
18064
18065 * emacs.c (USAGE1): Add --no-splash.
18066 (standard_args): Ditto.
18067
18068 2002-05-28 Colin Walters <walters@gnu.org>
18069
18070 * lread.c (readchar_count): New variable.
18071 (readchar): Increment it.
18072 (unreadchar): Decrement it.
18073 (read_multibyte): Decrement it.
18074 (Vread_with_symbol_positions): New variable.
18075 (Vread_symbol_positions_list): New variable.
18076 (read_internal_start): New function, created from Fread and
18077 Fread_from_string. Handle Vread_symbol_positions_list and
18078 Vread_with_symbol_positions.
18079 (readevalloop, Fread, Fread_from_string): Use it.
18080 (read1): Use readchar_count to add symbol positions to
18081 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
18082 (syms_of_lread): DEFVAR_LISP and initialize them.
18083
18084 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
18085 (substitute_object_recurse, substitute_object_in_subtree)
18086 (substitute_in_interval): Prototype.
18087 (read_multibyte): Return c if it's less than zero.
18088
18089 2002-05-28 Kim F. Storm <storm@cua.dk>
18090
18091 * fileio.c (Fread_file_name_internal): Added brute-force
18092 speed up for using predicate file-directory-p.
18093
18094 2002-05-28 Kim F. Storm <storm@cua.dk>
18095
18096 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
18097 New variables.
18098 (syms_of_fileio): DEFVAR_LISP them.
18099 (read_file_name_cleanup): New unwind function.
18100 (Fread_file_name_internal): Only return completions satifying
18101 Vread_file_name_predicate. Temporarily unwind protect and rebind
18102 default-directory while checking completions against the predicate.
18103 (Fread_file_name): Added PREDICATE argument. Specbind it to
18104 Vread_file_name_predicate during completion.
18105 Call Vread_file_name_function to read the file name if non-nil.
18106
18107 * lisp.h (Fread_file_name): Now has 6 args.
18108
18109 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
18110 predicate for Fread_file_name when reading directory name.
18111 Supply Qnil for predicate in other calls to Fread_file_name.
18112
18113 2002-05-26 Miles Bader <miles@gnu.org>
18114
18115 * term.c (tty_capable_p): New function.
18116 * dispextern.h (tty_capable_p): New function declaration.
18117 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
18118 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
18119
18120 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
18121
18122 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
18123 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
18124 (Vwrite_region_annotate_functions): Docstring fix.
18125
18126 2002-05-23 Kim F. Storm <storm@cua.dk>
18127
18128 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
18129 phys_cursor's hpos is overwritten. This is still not completely
18130 correct, as it doesn't really make sense to use hpos at all to
18131 get the cursor glyph (as that is relative to the width of the
18132 characters on the line, which may have changed during the update).
18133
18134 2002-05-22 Jason Rumney <jasonr@gnu.org>
18135
18136 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
18137 Lisp_Object.
18138 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
18139 Use modified enumfont_t struct.
18140
18141 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
18142
18143 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
18144 Handle the `hbar' cursor type.
18145 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
18146
18147 * w32fns.c (Qhbar): New variable.
18148 (x_specified_cursor_type): Use it.
18149
18150 2002-05-21 Ken Raeburn <raeburn@gnu.org>
18151
18152 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
18153 now, when the address is needed.
18154
18155 2002-05-21 Colin Walters <walters@gnu.org>
18156
18157 * Makefile.in (shortlisp): Add font-core.el.
18158
18159 2002-05-20 Richard M. Stallman <rms@gnu.org>
18160
18161 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
18162
18163 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
18164 equivalent key bindings here.
18165
18166 2002-05-20 Ken Raeburn <raeburn@gnu.org>
18167
18168 Change symbol structure to contain a lisp object for the symbol
18169 name:
18170 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
18171 object field named "xname".
18172 (SYMBOL_NAME): New macro.
18173 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
18174 name field.
18175 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
18176 (mark_object, gc_sweep): Use symbol xname field and XSTRING
18177 instead of name field.
18178 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
18179 SYMBOL_NAME instead of XSYMBOL and name field.
18180 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
18181 instead of XSYMBOL and name field.
18182 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
18183 and SYMBOL_NAME instead of XSYMBOL and name field.
18184 * coding.c (Fread_coding_system, code_convert_region1)
18185 (code_convert_string1, code_convert_string_norecord)
18186 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
18187 XSYMBOL and name field.
18188 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
18189 (Fmake_variable_buffer_local, Fmake_local_variable)
18190 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
18191 of XSYMBOL and name field.
18192 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
18193 XSYMBOL and name field.
18194 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
18195 instead of XSYMBOL and name field.
18196 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
18197 XSYMBOL and name field.
18198 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
18199 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
18200 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
18201 instead of XSYMBOL and name field.
18202 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
18203 (parse_modifiers, apply_modifiers, Fevent_convert_list)
18204 (parse_solitary_modifier, Fexecute_extended_command):
18205 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
18206 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
18207 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
18208 of XSYMBOL and name field.
18209 (describe_command, describe_translation): Use SYMBOL_NAME and
18210 assignment instead of XSYMBOL and name field and XSETSTRING.
18211 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
18212 instead of XSYMBOL and name field.
18213 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
18214 name field and XSETSTRING.
18215 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
18216 of XSYMBOL and name field.
18217 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
18218 assignment instead of XSYMBOL and name field and XSETSTRING.
18219 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
18220 XSTRING instead of XSYMBOL and name field.
18221 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
18222 and XSTRING instead of XSYMBOL and name field.
18223 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
18224 and XSTRING instead of XSYMBOL and name field.
18225 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
18226 XSTRING instead of XSYMBOL and name field.
18227 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
18228 of XSYMBOL and name field.
18229 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
18230 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
18231
18232 2002-05-19 Ken Raeburn <raeburn@gnu.org>
18233
18234 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
18235 and XCDR real rvalues in most configurations.
18236
18237 * buffer.c (fix_overlays_in_range, fix_overlays_before):
18238 Don't take the address of the cdr part of a cons cell; instead, track
18239 the parent cell and call XSETCDR, or set the variable for the head
18240 of the list if we haven't started down the list yet.
18241
18242 2002-05-19 Richard M. Stallman <rms@gnu.org>
18243
18244 * doc.c (reread_doc_file): Don't ask for confirmation.
18245
18246 2002-05-18 Jason Rumney <jasonr@gnu.org>
18247
18248 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
18249 (xbm_load_image): Use it.
18250 (xbm_load): Ditto.
18251 (xbm_read_bitmap_data): Reverted to xfns.c version.
18252 From David Ponce <david@dponce.com>.
18253
18254 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
18255
18256 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
18257 2.02 and later.
18258
18259 2002-05-16 Juanma Barranquero <lektu@terra.es>
18260
18261 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
18262
18263 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
18264
18265 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
18266 meaningful test.
18267 (read_char_minibuf_menu_prompt): Fix typo.
18268
18269 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
18270
18271 * eval.c (Fcommandp): Doc fix.
18272
18273 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
18274
18275 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
18276 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
18277 (Fset_keymap_parent): Gcpro a bit more.
18278 (access_keymap): Gcpro around meta_map call and around the main loop.
18279 (get_keyelt): Gcpro when following indirect references.
18280 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
18281 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
18282 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
18283 Remove useless ad-hoc remap code.
18284
18285 2002-05-13 Richard M. Stallman <rms@gnu.org>
18286
18287 * search.c (search_buffer): Give up boyer moore search if inverse
18288 translation change charset_base.
18289
18290 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
18291
18292 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
18293 characters is carried over from the previous block of text, adjust
18294 coding->produced to account for the extra character.
18295
18296 2002-05-11 Andreas Schwab <schwab@suse.de>
18297
18298 * coding.c (intersection): Keep the elements of the returned list
18299 in the same order as in the first list.
18300
18301 2002-05-11 Kim F. Storm <storm@cua.dk>
18302
18303 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
18304 only update cmm_size if realloc actually succeeds.
18305 Testing with initial size of 2 elements revealed that using
18306 realloc on GNU/Linux would cause a random trap in xmalloc
18307 later on, so I rewrote the code to use malloc/bcopy/free instead
18308 of realloc.
18309
18310 2002-05-10 Jason Rumney <jasonr@gnu.org>
18311
18312 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
18313
18314 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
18315
18316 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
18317 parens, to ensure correct evaluation order.
18318
18319 2002-05-10 Kim F. Storm <storm@cua.dk>
18320
18321 * keymap.c (Vemulation_mode_map_alists): New variable.
18322 (syms_of_keymap): DEFVAR_LISP it.
18323 (current_minor_maps): Process keymap alists in that list before
18324 minor-mode-overriding-map-alist and minor-mode-map-alist.
18325
18326 2002-05-09 Richard M. Stallman <rms@gnu.org>
18327
18328 * search.c (Freplace_match): Doc fix.
18329
18330 2002-05-09 Kim F. Storm <storm@cua.dk>
18331
18332 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
18333 Enlarge cursor rectangle drawn around image with non-zero relief.
18334
18335 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
18336 Enlarge cursor rectangle drawn around image with non-zero relief.
18337
18338 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
18339 Enlarge cursor rectangle drawn around image with non-zero relief.
18340
18341 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
18342
18343 * xselect.c (lisp_data_to_selection_data): Don't set selection
18344 type if comes from the Lisp object's car. If the selection
18345 contains a pure ASCII text, always return QSTRING as its type.
18346
18347 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18348
18349 * mac.c (mac-cut-function): Doc fix.
18350
18351 2002-05-05 Richard M. Stallman <rms@gnu.org>
18352
18353 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
18354
18355 2002-05-04 Jason Rumney <jasonr@gnu.org>
18356
18357 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
18358 for event-click-count.
18359
18360 * process.c (init_process): Only add server subfeature if we can
18361 use non-blocking I/O.
18362
18363 2002-05-04 Andrew Choi <akochoi@shaw.ca>
18364
18365 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
18366 repeatedly.
18367
18368 2002-05-03 Jason Rumney <jasonr@gnu.org>
18369
18370 * process.c (Fmake_network_process): Only support server sockets
18371 when we can make them non-blocking.
18372
18373 * s/ms-w32.h (HAVE_SELECT): Define.
18374
18375 * w32.h (FILE_NDELAY): New flag.
18376
18377 * w32.c (sys_getpeername, fcntl): New functions.
18378 (_sys_read_ahead): Temporarily block on non-blocking sockets.
18379
18380 * w32proc.c: Include sys/file.h.
18381
18382 2002-05-03 Colin Walters <walters@verbum.org>
18383
18384 * callproc.c (Vgame_score_directory): Renamed to
18385 Vshared_game_score_directory.
18386
18387 2002-04-30 Richard M. Stallman <rms@gnu.org>
18388
18389 * s/gnu.h [emacs]: Include stdio.h.
18390 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
18391
18392 * eval.c (do_autoload): Error if called while preparing to dump.
18393
18394 * fns.c (Frequire): Error if need to load while preparing to dump.
18395
18396 2002-04-28 Colin Walters <walters@verbum.org>
18397
18398 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
18399 Default to "~/.emacs.d/games".
18400
18401 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
18402
18403 * lread.c (openp): Change arg exec_only to predicate.
18404 (build_load_history): Use XCAR/XCDR.
18405 (Flocate_file_internal): New fun.
18406 (syms_of_lread): Defsubr it.
18407 (Fload): Update call to openp.
18408
18409 * lisp.h (openp): Update prototype.
18410
18411 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
18412 * w32proc.c (sys_spawnve):
18413 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
18414 * w32.c (check_windows_init_file):
18415 * sound.c (Fplay_sound_internal):
18416 * process.c (Fstart_process):
18417 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
18418 * mac.c (run_mac_command):
18419 * emacs.c (init_cmdargs):
18420 * callproc.c (Fcall_process): Update call to openp.
18421
18422 * textprop.c (remove_properties): Don't use XCAR without CONSP.
18423
18424 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
18425
18426 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18427
18428 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
18429 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
18430
18431 2002-04-28 Richard M. Stallman <rms@gnu.org>
18432
18433 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
18434
18435 * eval.c (Fcommandp): New arg for_call_interactively.
18436 * lisp.h (Fcommandp): Declare new arg.
18437
18438 2002-04-28 Jason Rumney <jasonr@gnu.org>
18439
18440 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
18441
18442 * w32.c (stat, fstat): Use file index information to generate
18443 inodes for directories where available.
18444
18445 2002-04-26 Andrew Choi <akochoi@shaw.ca>
18446
18447 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
18448 [HAVE_CARBON]: Include Mac object files.
18449
18450 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
18451 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
18452 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
18453 MAC_OSX, and MAC_OS instead of macintosh.
18454
18455 * editfns.c [MAC_OS8]: Include stdio.h.
18456
18457 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
18458
18459 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
18460 Apple Monaco.
18461
18462 * process.c (QCfamily, QCfilte): Declare extern.
18463 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
18464 calling select.
18465
18466 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
18467
18468 * tparam.c [MAC_OSX]: Don't define BC and UP.
18469
18470 * config.in [HAVE_CARBON]: Add.
18471
18472 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
18473 Move here from mac/src and mac/inc.
18474
18475 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
18476
18477 2002-04-26 Gerd Moellmann <gerd@gnu.org>
18478
18479 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
18480 Compute phys_cursor_width from the x position returned
18481 by x_draw_glyhs, which is cheaper.
18482 (x_display_and_set_cursor): Compute the buffer-local value
18483 of `cursor-in-non-selected-windows' only when needed.
18484
18485 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18486
18487 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
18488 cursor on a stretch glyph has a width that depends on
18489 x_stretch_cursor_p.
18490
18491 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18492
18493 * abbrev.c (abbrev-start-location): Doc fix.
18494
18495 * indent.c (Fvertical_motion): Fix last change.
18496
18497 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18498
18499 * indent.c (Fvertical_motion): Move to the start of the line
18500 containing PT before moving up or down.
18501
18502 2002-04-24 Gerd Moellmann <gerd@gnu.org>
18503
18504 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
18505 case of writing a whole row, more or less analogous to the case of
18506 writing only parts of a row.
18507
18508 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
18509 0 for NO_CURSOR.
18510
18511 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
18512
18513 2002-04-23 Colin Walters <walters@verbum.org>
18514
18515 * buffer.c (syms_of_buffer): Doc fix.
18516
18517 2002-04-23 Gerd Moellmann <gerd@gnu.org>
18518
18519 * xterm.c (notice_overwritten_cursor): Handle the special case
18520 of the cursor being in the first blank non-text line at the
18521 end of a window.
18522
18523 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
18524 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
18525 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
18526 bar cursors only, to make phys_cursor_width contain what its name
18527 suggests.
18528 (notice_overwritten_cursor): Consider the cursor image erased if
18529 the output area intersects the cursor image in y-direction.
18530
18531 2002-04-23 Simon Marshall <simon@gnu.org>
18532
18533 * xfns.c (x_set_mouse_color): Change default for cross_cursor
18534 to XC_hand2.
18535
18536 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18537
18538 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
18539
18540 2002-04-22 Kim F. Storm <storm@cua.dk>
18541
18542 * textprop.c (remove_properties): Fixed trap for malformed plist.
18543
18544 2002-04-22 Richard M. Stallman <rms@gnu.org>
18545
18546 * cmds.c (Fend_of_line): Handle intangible text in mid line.
18547
18548 * window.c (make_window): Initialize height_fixed_p,
18549 last_cursor_off_p, and p->cursor_off_p slots.
18550
18551 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18552
18553 * fns.c (use-dialog-box): Doc fix.
18554
18555 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18556
18557 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
18558 variables `row', `i' and `area'.
18559 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
18560 toolkit library.
18561
18562 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
18563
18564 * xfaces.c (clear_font_table): Don't free the default font of
18565 a frame even if it's on another display.
18566 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
18567 that could be Qt.
18568
18569 2002-04-19 Juanma Barranquero <lektu@terra.es>
18570
18571 * indent.c (Fmove_to_column): Remove unused local variable
18572 `next_boundary_byte'.
18573 (current_column_1): Likewise.
18574
18575 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
18576
18577 * msdos.c (Qhbar): New variable.
18578 (syms_of_msdos): Intern and staticpro it.
18579 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
18580 cursor type.
18581
18582 2002-04-19 Dave Lambert <dlambert@acm.org>
18583
18584 Theses change implement an underscore-like (`hbar') cursor.
18585
18586 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
18587
18588 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
18589 Handle the `hbar' cursor type.
18590 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
18591
18592 * xfns.c (Qhbar): New variable.
18593 (syms_of_xfns): Intern and staticpro it.
18594 (x_specified_cursor_type): Handle `hbar' cursor.
18595
18596 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
18597 not defined.
18598
18599 2002-04-18 Richard M. Stallman <rms@gnu.org>
18600
18601 * textprop.c (remove_properties): New arg LIST allows scanning
18602 either a list or a plist.
18603 (interval_has_some_properties_list): New function, like
18604 interval_has_some_properties using list instead of plist.
18605 All callers changed.
18606 (Fremove_list_of_text_properties): New function.
18607 (syms_of_textprop): Defsubr it.
18608
18609 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18610
18611 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
18612
18613 2002-04-17 Juanma Barranquero <lektu@terra.es>
18614
18615 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
18616
18617 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18618
18619 * window.c (coordinates_in_window): Don't report on margin area
18620 if its width is zero.
18621
18622 2002-04-16 Jason Rumney <jasonr@gnu.org>
18623
18624 * w32fns.c (Fx_file_dialog): Decode file name before using.
18625
18626 * w32term.c (construct_drag_n_drop): Likewise.
18627
18628 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
18629
18630 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
18631 store load-history in pure space.
18632
18633 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
18634
18635 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
18636
18637 * xterm.c (Qlatin_1, Qutf_8): New vars.
18638 (syms_of_xterm): Initialize them.
18639 (XTread_socket): Eliminate incorrect optimization that tried to avoid
18640 decoding the output of X*LookupString.
18641 Always use latin-1 to decode the output of XLookupString.
18642 Try Xutf8LookupString if XmbLookupString failed.
18643
18644 * region-cache.c (new_region_cache): Use BEG.
18645
18646 2002-04-16 Gerd Moellmann <gerd@gnu.org>
18647
18648 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
18649 configuration files.
18650 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
18651 returns 0.
18652
18653 2002-04-15 Andreas Schwab <schwab@suse.de>
18654
18655 * config.in: Regenerated using autoheader.
18656
18657 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
18658 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
18659 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
18660 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
18661 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
18662 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
18663 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
18664 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
18665 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
18666 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
18667 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
18668 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
18669 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
18670 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
18671 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
18672 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
18673 STACK_DIRECTION, now set by autoconf.
18674
18675 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18676
18677 * dispnew.c (marginal_area_string): Sort arguments.
18678
18679 * dispextern.h (marginal_area_string): Add prototype.
18680
18681 2002-04-13 Richard M. Stallman <rms@gnu.org>
18682
18683 * fileio.c (Finsert_file_contents):
18684 Don't call temp_output_buffer_setup--do just part, by hand.
18685
18686 * coding.c (run_pre_post_conversion_on_str):
18687 Don't call temp_output_buffer_setup--do just part, by hand.
18688
18689 * keyboard.c (command_loop_1): Don't call start_hourglass
18690 or cancel_hourglass when executing a macro.
18691
18692 * marker.c (count_markers): New function.
18693
18694 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
18695 grow without limit. Move recently used elements to the front.
18696
18697 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
18698
18699 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
18700
18701 2002-04-12 Gerd Moellmann <gerd@gnu.org>
18702
18703 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
18704 rows marginal areas.
18705 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
18706 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
18707
18708 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
18709
18710 2002-04-12 Dave Love <fx@gnu.org>
18711
18712 * dispnew.c (marginal_area_string): New.
18713
18714 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
18715 (Qleft_margin, Qright_margin): Declare.
18716 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
18717
18718 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
18719 note_mode_line_highlight and extended.
18720
18721 * keyboard.c (Qleft_margin, Qright_margin): Declare.
18722 (make_lispy_event): Deal with mouse events in margins.
18723
18724 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
18725
18726 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
18727
18728 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
18729 than deactivating the mark if tmm is set to `lambda'.
18730 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
18731 Use a single event for HELP_EVENT.
18732 (Fexecute_extended_command): Save last_point_position.
18733
18734 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18735
18736 * lisp.h (Fpropertize): Add prototype.
18737
18738 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
18739
18740 2002-04-10 Colin Walters <walters@verbum.org>
18741
18742 * config.in: Add HAVE_SHARED_GAME_DIR.
18743
18744 * callproc.c (Vgame_score_directory): New variable.
18745 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
18746
18747 2002-04-10 Richard M. Stallman <rms@gnu.org>
18748
18749 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
18750
18751 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
18752
18753 * minibuf.c (read_minibuf): Use empty_string.
18754 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
18755 Short-circuit the search as soon as it "failed".
18756 (Fall_completions): Allow lambda forms and lists of strings for alist.
18757 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
18758 when require_match is nil.
18759 (Ftest_completion): Rename from `test_completion' and export to elisp.
18760 Call the predicate also when alist is a list.
18761 Obey Vcompletion_regexp_list.
18762 (do_completion, Fminibuffer_complete_and_exit): Use it.
18763 (Fassoc_string): Rename from `assoc_for_completion'.
18764 Allow list of strings as well and export to elisp.
18765
18766 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
18767
18768 * puresize.h (BASE_PURESIZE): Increase to 900KB.
18769
18770 2002-04-08 Juanma Barranquero <lektu@terra.es>
18771
18772 * w32.c (sys_accept): Don't hide variable `s'.
18773
18774 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18775
18776 * callint.c (Fcall_interactively): Use INTEGERP instead of
18777 NUMBERP for checking Vhistory_length.
18778
18779 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18780
18781 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18782 Doc fix to reflect it.
18783
18784 2002-04-04 Richard M. Stallman <rms@gnu.org>
18785
18786 * xdisp.c (display_mode_element): New arg RISKY.
18787 Disregard text props found or specified within a variable
18788 that isn't marked risky-local-variable.
18789 (Qrisky_local_variable): New variable.
18790 (syms_of_xdisp): Init and staticpro it.
18791
18792 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18793
18794 * undo.c (record_point): New fun.
18795 (record_delete, record_insert): Use it.
18796
18797 2002-04-03 Juanma Barranquero <lektu@terra.es>
18798
18799 * doc.c (Fdocumentation): Add missing parentheses.
18800 (Fdocumentation_property): Likewise.
18801
18802 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18803
18804 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18805 data is 0, just return nil.
18806
18807 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18808
18809 * msdos.c (syms_of_msdos): Fix last change with
18810 mouse_autoselect_window.
18811
18812 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18813
18814 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18815 mouse_autoselect_window.
18816
18817 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18818
18819 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18820 with system-specific keysyms. Use it also for unknown function keys.
18821
18822 * doc.c (reread_doc_file): Return whether reload was attempted.
18823 (Fdocumentation, Fdocumentation_property): Don't try to reload
18824 if the doc is 0 and only ask once.
18825
18826 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18827
18828 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18829
18830 * keyboard.c (read_char): If the event was Qselect_window,
18831 restore timer_idleness_start_time to its previous value.
18832
18833 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
18834
18835 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
18836
18837 * region-cache.c (new_region_cache): Use BEG.
18838
18839 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
18840 Use BEG and BEG_BYTE.
18841
18842 * doc.c (get_doc_string): Return nil if the location is wrong.
18843 (reread_doc_file): New fun.
18844 (Fdocumentation, Fdocumentation_property):
18845 Call it if get_doc_string fails.
18846 (Fsnarf_documentation): Make it work for a dumped Emacs.
18847
18848 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
18849 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
18850
18851 * charset.c (Fstring): Allow 0 arguments.
18852
18853 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
18854
18855 * process.c (DATAGRAM_CONN_P, list_processes_1)
18856 (Fprocess_datagram_address, Fset_process_datagram_address)
18857 (Fset_network_process_options, server_accept_connection):
18858 Fix some int/Lisp_Object confusions (thank you union types).
18859
18860 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18861
18862 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
18863
18864 * w32term.c: Likewise.
18865 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
18866
18867 * keyboard.c (Qselect_window): New symbol.
18868 (head_table): Use it.
18869 (keys_of_keyboard): Bound select-window event to handle-select-window.
18870 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
18871
18872 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
18873 (last_window): New variable.
18874 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
18875 (note_mouse_movement): Remove reimplemented code in #if 0.
18876 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
18877 Emacs windows.
18878
18879 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
18880
18881 2002-03-31 Gerd Moellmann <gerd@gnu.org>
18882
18883 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
18884 Callers changed.
18885
18886 2002-03-30 Richard M. Stallman <rms@gnu.org>
18887
18888 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
18889 loop whenever it stops making progress.
18890
18891 * widget.c (set_frame_size): Don't call change_frame_size.
18892
18893 2002-03-30 Gerd Moellmann <gerd@gnu.org>
18894
18895 * dispnew.c (direct_output_for_insert):
18896 Call mark_window_display_accurate.
18897
18898 2002-03-29 Jason Rumney <jasonr@gnu.org>
18899
18900 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
18901
18902 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
18903
18904 * Makefile.in (lread.o): Depend on coding.h.
18905
18906 * lread.c (openp, Fload): Encode the file name before passing it
18907 to `stat', `access', and `emacs_open'.
18908 (openp): GCPRO the encoded file name. Don't recompute Lisp
18909 strings unnecessarily.
18910
18911 2002-03-29 Kim F. Storm <storm@cua.dk>
18912
18913 * fns.c (Flax_plist_put): Doc fix.
18914
18915 2002-03-28 Miles Bader <miles@gnu.org>
18916
18917 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
18918
18919 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18920
18921 * process.c (set-network-process-options): Add usage.
18922 (make-network-process): Doc fix.
18923
18924 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
18925
18926 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
18927
18928 2002-03-26 Richard M. Stallman <rms@gnu.org>
18929
18930 * fns.c (Fsubstring_no_properties): New function.
18931 (Flax_plist_get, Flax_plist_put): New functions.
18932 (syms_of_fns): defsubr them.
18933
18934 * xdisp.c (update_menu_bar): Test only update_mode_lines;
18935 don't test or alter w->update_mode_line.
18936
18937 * window.c (Fdisplay_buffer): Doc fix.
18938
18939 2002-03-24 Richard M. Stallman <rms@gnu.org>
18940
18941 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
18942
18943 2002-03-24 Gerd Moellmann <gerd@gnu.org>
18944
18945 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
18946 (Fdefmacro): Handle `(declare ...)'.
18947 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
18948 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
18949
18950 2002-03-24 Jason Rumney <jasonr@gnu.org>
18951
18952 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
18953 (xbm_file_p): Add prototypes.
18954 (xbm_format, xbm_image_p): Sync with xfns.c.
18955 (reflect_byte): New function.
18956 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
18957 (xbm_load_image): Create bitmaps with a depth of 1.
18958 (init_xfns): Enable XBM images.
18959
18960 2002-03-23 Jason Rumney <jasonr@gnu.org>
18961
18962 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
18963 correctly. Do not pass up_modifier to keyboard buffer.
18964
18965 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
18966
18967 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
18968
18969 * Makefile.in (bootstrapclean): New target.
18970 (bootstrap-temacs, bootstrap-doc): Remove.
18971 (bootstrap-emacs): Use a bog-standard `temacs'.
18972 Don't bother to build a DOC file.
18973
18974 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
18975
18976 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
18977 in temacs even if !CANNOT_DUMP.
18978 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
18979
18980 * alloc.c (check_pure_size): Only output a warning.
18981
18982 2002-03-22 Jason Rumney <jasonr@gnu.org>
18983
18984 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
18985 supported.
18986
18987 * w32term.c (zv_bits): Declare as short, for word alignment.
18988 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
18989 (syms_of_w32term): Define x-use-underline-position-properties.
18990
18991 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
18992 (clear_image_cache): Block input, fix logic, clear matrices in
18993 all frames that share this cache.
18994
18995 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
18996
18997 * emacs.c (main): Update the Copyright year in the blurb printed
18998 by "emacs --version".
18999
19000 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
19001
19002 * xterm.c (XTread_socket): If XK_ISO_Lock and
19003 XK_ISO_Last_Group_Lock are defined, handle keysyms between
19004 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
19005
19006 2002-03-21 Kim F. Storm <storm@cua.dk>
19007
19008 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
19009 menu-bar bindings in keymap and local-map properties _are_ used.
19010 But try keymap property first in accordance with 2002-01-03 patch.
19011 Added comment describing why this is not always reliable.
19012 (tool_bar_items): Ditto for tool-bar.
19013
19014 2002-03-21 Jason Rumney <jasonr@gnu.org>
19015
19016 * w32fns.c (x_clear_image_1): Disable color table code.
19017
19018 2002-03-21 Kim F. Storm <storm@cua.dk>
19019
19020 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
19021 removed the wrong version of the DEFUN macro; fixed it.
19022
19023 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
19024 Fmember rather than Fmemq).
19025 (Fprovide): Check that subfeatures is a list.
19026
19027 * process.c (QCfeature, QCdatagram): Removed variables.
19028 (QCtype, Qdatagram): New variables.
19029 (network_process_featurep): Removed function.
19030 (Fmake_network_process): Removed :feature check.
19031 Use :type 'datagram instead of :datagram t to create a datagram
19032 socket. This allows us to add other connection types (e.g. raw
19033 sockets) later in a consistent manner.
19034 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
19035 supported subfeatures for feature make-network-process.
19036 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
19037 Intern and staticpro QCtype and Qdatagram.
19038 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
19039
19040 * xfns.c (QCtype): Remove duplicate declaration and
19041 initialization (is now declared in process.c).
19042
19043 * w32fns.c (QCtype): Remove duplicate declaration and
19044 initialization (is now declared in process.c).
19045
19046 2002-03-21 Richard M. Stallman <rms@gnu.org>
19047
19048 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
19049 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
19050 when jumping to `fail' to avoid undoing reg changes in the
19051 last iteration of the loop.
19052 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
19053
19054 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
19055 Depend on process.h.
19056
19057 2002-03-20 Jason Rumney <jasonr@gnu.org>
19058
19059 Most of the following changes are still conditional on HAVE_IMAGES
19060 which is not set by default on Windows.
19061
19062 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
19063
19064 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
19065 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
19066 (four_corners_best, x_clear_image_1, x_clear_image)
19067 (x_alloc_image_color, postprocess_image)
19068 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
19069 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
19070 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
19071
19072 * w32gui.h (struct XImage): Define.
19073
19074 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
19075 extract mouse co-ordinates.
19076
19077 2002-03-20 Jason Rumney <jasonr@gnu.org>
19078
19079 * w32.c (init_winsock): Dynamically load new server and UDP
19080 socket functions.
19081 (socket_to_fd): New function.
19082 (sys_socket): Use it.
19083 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
19084 (sys_recvfrom, sys_sendto): New wrapper functions.
19085
19086 * process.c (QCfamily, QCfilter): Remove duplicate declaration
19087 and initialization.
19088
19089 * makefile.w32-in (LIBS): Remove $(WSOCK32).
19090
19091 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
19092
19093 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
19094 Don't use "sun" as a variable, it's a predefined constant on Sun
19095 machines.
19096
19097 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19098
19099 * bytecode.c (Fbyte_code): Revert last change.
19100
19101 2002-03-19 Kim F. Storm <storm@cua.dk>
19102
19103 * makefile.w32-in (LIBS): Add $(WSOCK32).
19104 From David Ponce <dponce@voila.fr>.
19105
19106 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19107
19108 * process.c (wait_reading_process_input): Move variables `pname'
19109 and `pnamelen' down where they are used.
19110
19111 * bytecode.c (Fbyte_code): Discard unused computed value to
19112 prevent gcc warning.
19113
19114 * lisp.h (Fplist_member): Add prototype.
19115
19116 2002-03-18 Kim F. Storm <storm@cua.dk>
19117
19118 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
19119 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
19120
19121 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
19122 Remove explicit GNU_LINUX settings for datagram support.
19123
19124 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19125
19126 * process.c (Fmake_network_process): Remove unused variable `sa'.
19127 Doc fix. Add usage:.
19128 (set_socket_options): Remove unused variables `optnum' and `opttype'.
19129
19130 2002-03-17 Richard M. Stallman <rms@gnu.org>
19131
19132 * xdisp.c (cursor_type_changed): New variable.
19133 (redisplay_internal): Redisplay all windows if cursor_type_changed.
19134 Clear it when clearing windows_or_buffers_changed.
19135 (try_cursor_movement, redisplay_window, try_window_id)
19136 (try_window_reusing_current_matrix): Test cursor_type_changed
19137 along with windows_or_buffers_changed.
19138
19139 * window.h (cursor_type_changed): New variable.
19140
19141 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
19142 not update_mode_lines, and always set it to 1.
19143
19144 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
19145 if no frames needed redrawing.
19146
19147 2002-03-17 Kim F. Storm <storm@cua.dk>
19148
19149 The following changes add support for network server processes,
19150 datagram connections, and local (unix) sockets.
19151
19152 * process.h (struct Lisp_Process): New member log.
19153 Doc fix: Member command used to indicate stopped network process.
19154 Doc fix: Member childp contains plist for network process.
19155 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
19156
19157 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
19158 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop)
19159 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
19160 New variables.
19161 (NETCONN1_P): New macro.
19162 (DATAGRAM_SOCKETS): New conditional symbol.
19163 (datagram_address): New array.
19164 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
19165 (status_message): Use concat3.
19166 (Fprocess_status): Add `listen' status to doc string. Return `stop'
19167 for a stopped network process.
19168 (Fset_process_buffer): Update contact plist for network process.
19169 (Fset_process_filter): Ditto. Don't enable input for stopped
19170 network processes. Server must listen, even if filter is t.
19171 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
19172 New functions.
19173 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
19174 (Fprocess_contact): Added KEY argument. Handle datagrams.
19175 (list_processes_1): Optionally show only processes with the query
19176 on exit flag set. Dynamically adjust column widths. Omit tty
19177 column if not needed. Report stopped network processes.
19178 Identify server and datagram network processes.
19179 (Flist_processes): New optional arg `query-only'.
19180 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
19181 (conv_lisp_to_sockaddr, set_socket_options)
19182 (network_process_featurep, unwind_request_sigio): New helper functions.
19183 (Fprocess_datagram_address, Fset_process_datagram_address):
19184 (Fset_network_process_options): New lisp functions.
19185 (Fopen_network_stream): Removed. Now defined in simple.el.
19186 (Fmake_network_process): New lisp function. Code is based on previous
19187 Fopen_network_stream, but heavily reworked with new property list based
19188 argument list, support for datagrams, server processes, and local
19189 sockets in addition to old client-only functionality.
19190 (server_accept_connection): New function.
19191 (wait_reading_process_input): Use it to handle incoming connects.
19192 Do not enable input on a new connection if process is stopped.
19193 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
19194 (send_process): Handle datagram sockets.
19195 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
19196 network process is indicated by setting command field to t .
19197 (Fprocess_send_eof): No-op if datagram connection.
19198 (Fstatus_notify): Don't read input for a stream server socket or a
19199 stopped network process.
19200 (init_process): Initialize datagram_address array.
19201 (syms_of_process): Intern and staticpro new variables, defsubr new
19202 functions.
19203
19204 2002-03-16 Jason Rumney <jasonr@gnu.org>
19205
19206 * w32fns.c (w32_to_all_x_charsets): Return correct type in
19207 startup case.
19208
19209 2002-03-16 Richard M. Stallman <rms@gnu.org>
19210
19211 * xdisp.c (redisplay_internal, redisplay_windows):
19212 Use list_of_error to call internal_condition_case_1.
19213 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
19214 so as to catch all errors with no possibility of debugger redisplay.
19215 (list_of_error): New variable.
19216 (syms_of_xdisp): Init and staticpro it.
19217
19218 * print.c (print_object): Delete `\ ' from printed rep of frame.
19219
19220 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
19221
19222 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
19223 until its implementation is fixed.
19224
19225 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19226
19227 * xfns.c (png_load): Remove unused variable `gamma_str'.
19228
19229 2002-03-14 Richard M. Stallman <rms@gnu.org>
19230
19231 * xfns.c (x_real_positions): Handle failure in XQueryTree.
19232
19233 2002-03-14 Miles Bader <miles@gnu.org>
19234
19235 * intervals.c (adjust_for_invis_intang): New function.
19236 (set_point_both): Use `adjust_for_invis_intang' to do most of the
19237 work for dealing with invisible+intangible regions. Do so before
19238 and after both forward and backward movements, to handle both
19239 front-sticky and rear-sticky cases.
19240 * textprop.c (text_property_stickiness): Function moved here from
19241 `editfns.c'.
19242 * intervals.h (text_property_stickiness): New declaration.
19243 * editfns.c (char_property_eq): Function removed.
19244 (text_property_stickiness): Function moved to `textprop.c'.
19245
19246 2002-03-13 Jason Rumney <jasonr@gnu.org>
19247
19248 * config.in: Add STRFTIME_NO_POSIX2.
19249
19250 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
19251 and %OX when underlying strftime does not.
19252
19253 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
19254
19255 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
19256 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
19257 line) to avoid annoying flicker.
19258 (xm_scroll_callback): Get rid of the now unnecessary kludge.
19259 (XTread_socket): Mark it static.
19260
19261 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
19262
19263 2002-03-13 Kim F. Storm <storm@cua.dk>
19264
19265 * puresize.h (BASE_PURESIZE): Increase to 775000.
19266
19267 2002-03-12 Juanma Barranquero <lektu@terra.es>
19268
19269 * editfns.c (syms_of_editfns): Fix typo.
19270
19271 2002-03-12 Gerd Moellmann <gerd@gnu.org>
19272
19273 * xsmfns.c: Include stdio.h because termhooks.h needs it.
19274 Include termopt.h for interrupt_input.
19275
19276 2002-03-11 Andreas Schwab <schwab@suse.de>
19277
19278 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
19279
19280 2002-03-11 Gerd Moellmann <gerd@gnu.org>
19281
19282 * xterm.c (note_mouse_movement): Put code for
19283 x_autoselect_window_p in #if 0.
19284
19285 * lread.c (Fload): Don't assume that message_with_string uses the
19286 string it is given like a C string.
19287
19288 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19289
19290 * xterm.h (x_session_check_input, x_session_initialize): Declare.
19291
19292 * xterm.c (XTread_socket): Add call to x_session_check_input and
19293 x_session_have_connection.
19294 (x_initialize): Add call to x_session_initialize.
19295
19296 * termhooks.h (enum event_kind): Add save_session_event.
19297
19298 * keyboard.c: Add Emacs event save_session_event.
19299
19300 * emacs.c (main): Add call to syms_of_xsmfns.
19301
19302 * lisp.h (syms_of_xsmfns): Declare extern.
19303
19304 * config.in: Add HAVE_X_SM.
19305
19306 * Makefile.in (LIBXT): Add -lSM -lICE
19307 if HAVE_X_SM and not USE_X_TOOLKIT.
19308 (XOBJ): New file xsmfns.c added.
19309
19310 * xsmfns.c: New file for X session management.
19311
19312 2002-03-09 Jason Rumney <jasonr@gnu.org>
19313
19314 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
19315 read-only when setting modified time.
19316
19317 2002-03-08 Gerd Moellmann <gerd@gnu.org>
19318
19319 * xdisp.c (move_it_vertically_backward): At the end of the function,
19320 when moving forward by lines, treat terminal frames specially.
19321
19322 * keyboard.c (echo_char): Make sure to add a separator between
19323 keys even if echo_dash hasn't been called.
19324
19325 * xdisp.c: Use new string macros.
19326 (update_echo_area): Pass number of bytes to message3 instead of
19327 number of chars.
19328 (set_message_1): Don't access a string's size_byte directly.
19329 (decode_mode_spec_coding): Use number of bytes of eoltype string
19330 instead number of chars.
19331
19332 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
19333
19334 2002-03-08 Juanma Barranquero <lektu@terra.es>
19335
19336 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
19337 24-bit.
19338
19339 2002-03-06 Jason Rumney <jasonr@gnu.org>
19340
19341 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
19342
19343 2002-03-06 Gerd Moellmann <gerd@gnu.org>
19344
19345 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
19346 (cancel_echoing, echo_length, echo_truncate): Changed to
19347 work with new kboard definition.
19348 (echo_now): Use message3_nolog instead of message2_nolog.
19349
19350 * alloc.c (mark_kboards): Mark echo_string.
19351
19352 * keyboard.h (ECHOBUFSIZE): Removed.
19353 (struct kboard): Member echoptr removed, member echobuf renamed
19354 to echo_string.
19355
19356 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
19357 message3 instead of message2 to display the message using STRING's
19358 text properties.
19359
19360 2002-03-05 Andreas Schwab <schwab@suse.de>
19361
19362 * xdisp.c (hscroll_margin): Change to EMACS_INT.
19363
19364 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
19365
19366 * frame.c (default-frame-alist): Explain that setting it doesn't
19367 affect existing frames.
19368
19369 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
19370
19371 * indent.c (skip_invisible): Fix my brain fart.
19372
19373 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
19374
19375 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
19376
19377 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
19378 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
19379 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
19380 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
19381 and variables to use EMACS_INT instead of just int.
19382
19383 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
19384
19385 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
19386
19387 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
19388 environment, pass it down with corrected value.
19389
19390 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19391
19392 * lread.c (read_filtered_event): Do not call start_hourglass
19393 before returning.
19394
19395 2002-03-04 Juanma Barranquero <lektu@terra.es>
19396
19397 * w32term.c (x_display_and_set_cursor): Fix typo.
19398
19399 2002-03-03 Richard M. Stallman <rms@gnu.org>
19400
19401 * fileio.c (Fmake_temp_name): Doc fix.
19402
19403 2002-03-03 Gary Wong <gtw@gnu.org>
19404
19405 * termcap.c [!emacs]: Replace ospeed for building standalone
19406 libtermcap, for binary compatibility.
19407
19408 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
19409
19410 2002-03-03 Richard M. Stallman <rms@gnu.org>
19411
19412 * xrdb.c (file_p): Rename arg `path' to `filename'.
19413
19414 * abbrev.c (Fexpand_abbrev): Increment plist as use count
19415 only if it is an integer.
19416
19417 * xfns.c (png_load): Set screen_gamma based on f->gamma.
19418 If png_get_sRGB gives an answer, call png_set_gamma
19419 using the default image gamma value.
19420
19421 * lread.c (read1): When reading from a file, default string to
19422 multibyte only if it has some multibyte characters.
19423
19424 * print.c (print_object): Output multibyte chars 128...255
19425 using \x even if ! print_escape_multibyte.
19426
19427 * xdisp.c (display_mode_element): Move the places where
19428 bytepos, charpos, this, and lisp_string are set.
19429 Use lisp_string to set bytepos.
19430
19431 * xdisp.c (redisplay_internal):
19432 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
19433
19434 * xdisp.c (display_mode_element): Merge properties specified with
19435 :propertize onto those that come with the string.
19436
19437 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
19438
19439 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
19440 automatic-hscrolling. Users changed.
19441 <hscroll-margin>: Renamed from automatic-hscroll-margin.
19442 Users changed.
19443 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
19444
19445 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
19446
19447 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
19448
19449 2002-03-02 Kim F. Storm <storm@cua.dk>
19450
19451 * window.c (Fminibuffer_selected_window): New function.
19452 (syms_of_window): Defsubr it.
19453
19454 2002-03-01 Kim F. Storm <storm@cua.dk>
19455
19456 * window.h (struct window): New member phys_cursor_width.
19457
19458 * window.c (make_window, replace_window): Init phys_cursor_width.
19459
19460 * xterm.c (x_display_and_set_cursor): Blink box cursor using
19461 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19462
19463 * w32term.c (x_display_and_set_cursor): Blink box cursor using
19464 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19465
19466 * lisp.h (GCPRO6): New macro.
19467
19468 * process.c (Fopen_network_stream): Use GCPRO6.
19469
19470 2002-03-01 Kim F. Storm <storm@cua.dk>
19471
19472 * process.c (Qconnect, Qfailed): New variables.
19473 (syms_of_process): Intern and staticpro them.
19474 (Fprocess_status): Document connect and failed return values.
19475 [NON_BLOCKING_CONNECT]: New conditional.
19476 (connect_wait_mask, num_pending_connects): New variables.
19477 (status_message): Convert Qfailed status.
19478 (Fopen_network_stream): Added support for non-blocking connect.
19479 New optional args: filter, sentinel, non_blocking. Doc updated.
19480 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
19481 (deactivate_process): Handle pending non-blocking connect.
19482 (wait_reading_process_input): Poll for status of non-blocking
19483 connects. Exec sentinel directly when connect succeeds.
19484 (status_notify): Don't read process output if not yet connected.
19485
19486 2002-02-28 Kim F. Storm <storm@cua.dk>
19487
19488 * window.c (minibuf_selected_window): Renamed from
19489 Vminibuf_selected_window. Users changed.
19490 (syms_of_window): Staticpro it.
19491
19492 2002-02-26 Kim F. Storm <storm@cua.dk>
19493
19494 The following changes add a new Vminibuf_selected_window variable
19495 which is similar to Vminibuf_scroll_window, but which is only set
19496 on entry to the minibuffer (from a non-minibuffer window):
19497
19498 * window.c (Vminibuf_selected_window): New variable.
19499 (struct save_window_data): New member minibuf_selected_window.
19500 (Fset_window_configuration): Restore Vminibuf_selected_window.
19501 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
19502 Set minibuf_scroll_window member to nil if minibuf_level is 0.
19503 (compare_window_configurations): Compare minibuf_selected_window.
19504
19505 * window.h (Vminibuf_selected_window): Declare extern.
19506
19507 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
19508 entry to minibuffer or on entry from a non-minibuffer window.
19509
19510 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
19511 Vminibuf_selected_window instead of Vminibuf_scroll_window.
19512
19513 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
19514 instead of Vminibuf_scroll_window when deciding in which window
19515 the region should be highlighted. Consequently, the region remains
19516 highlighteded even when a completion buffer is also displayed.
19517
19518 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
19519
19520 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
19521
19522 * xselect.c (Qcompound_text_with_extensions): Renamed from
19523 Qcompound_text_no_extensions.
19524 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
19525
19526 2002-02-26 Juanma Barranquero <lektu@terra.es>
19527
19528 * w32proc.c (syms_of_ntproc): Doc fix.
19529
19530 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19531
19532 * intervals.h: Include "dispextern.h" unconditionally.
19533
19534 2002-02-24 Jason Rumney <jasonr@gnu.org>
19535
19536 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
19537 and disp-table.elc.
19538 (lisp): Add emacs-lisp/backquote.elc.
19539
19540 2002-02-24 Kim F. Storm <storm@cua.dk>
19541
19542 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
19543 The validation of the event type was too strict as it didn't
19544 allow string events; buffer names are used in bindings for
19545 menu-bar-select-buffer (see `menu-bar-update-buffers').
19546
19547 2002-02-23 Kim F. Storm <storm@cua.dk>
19548
19549 The following changes rework my patch of 2002-02-06 which
19550 added command remapping by entering the commands directly into
19551 the keymaps. Now, command remapping uses an explicit `remap'
19552 prefix in the keymaps, i.e. [remap COMMAND].
19553
19554 * keymap.c (Qremap, remap_command_vector): New variables.
19555 (is_command_symbol): Remove function.
19556 (Fdefine_key): No longer accept a symbol for KEY.
19557 Added validation of [remap COMMAND] argument for KEY.
19558 The DEF is no longer required to be a symbol when remapping a command.
19559 (Fremap_command): New function to remap command through keymaps.
19560 (Flookup_key): Perform command remapping initiated by
19561 Fremap_command directly for speed.
19562 (Fkey_binding): Use Fremap_command for command remapping.
19563 (where_is_internal): Handle new command remapping representation.
19564 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
19565 staticpro them. Defsubr Fremap_command.
19566
19567 * keymap.h (Fremap_command): Declare extern.
19568 (is_command_symbol): Remove extern.
19569
19570 * keyboard.c (command_loop_1): Use Fremap_command for command
19571 remapping; now try command remapping for all symbols.
19572
19573 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19574
19575 * coding.h (run_pre_post_conversion_on_str): Add prototype.
19576
19577 2002-02-23 Jason Rumney <jasonr@gnu.org>
19578
19579 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
19580 on the string before encoding it.
19581 (Fw32_get_clipboard_data): Run post-read-conversion on the string
19582 after decoding it.
19583
19584 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
19585
19586 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19587
19588 * w32term.c (enter_timestamp): Remove unused static variable to
19589 prevent warning.
19590
19591 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
19592
19593 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19594
19595 * w16select.c (Fw16_get_clipboard_data): Fix last change.
19596
19597 * xselect.c (selection_data_to_lisp_data): Fix last change.
19598
19599 2002-02-22 Jason Rumney <jasonr@gnu.org>
19600
19601 * w32term.h (struct w32_output): New member menu_command_in_progress.
19602
19603 * w32menu.c (menubar_selection_callback): Free the menu and
19604 clear the menu_command_in_progress flag.
19605
19606 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
19607 (menu_free_timer): New variable.
19608 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
19609 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
19610 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
19611 menu command is in progress.
19612 <WM_COMMAND>: Set the menu_command_in_progress flag.
19613 Kill any menu_free_timer that is running.
19614
19615 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
19616 Call ExtTextOutA rather than ExtTextOut.
19617
19618 2002-02-22 Eli Zaretskii <eliz@gnu.org>
19619
19620 * puresize.h (BASE_PURESIZE): Increase to 755000.
19621
19622 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19623
19624 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
19625 on the string before encoding it.
19626 (Fw16_get_clipboard_data): Run post-read-conversion on the string
19627 after decoding it.
19628
19629 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19630
19631 Support for ICCCM Extended Segments in X selections:
19632
19633 * xselect.c <Qcompound_text_no_extensions>: New variable.
19634 (syms_of_xselect): Intern and staticpro it.
19635 (selection_data_to_lisp_data): Run post-read-conversion on decoded
19636 selection text.
19637 (lisp_data_to_selection_data): If next-selection-coding-system is
19638 compound-text-no-extensions, set the type of selection to be
19639 compound-text.
19640
19641 * xterm.h (x_encode_text): Update prototype.
19642
19643 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
19644 callers changed. If SELECTIONP is non-zero, run the
19645 pre-write-conversion function before encoding the selection text.
19646
19647 2002-02-21 Kim F. Storm <storm@cua.dk>
19648
19649 * frame.c (syms_of_frame): Change mouse-highlight default to t.
19650
19651 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
19652 Correct composing of language-change event.
19653
19654 2002-02-20 Kim F. Storm <storm@cua.dk>
19655
19656 * keyboard.c (menu_bar_items): Don't include keymap or local-map
19657 bindings at PT when building menu (the menu is not updated often
19658 enough for this to work reliable).
19659 (tool_bar_items): Likewise.
19660 (current_active_maps): Removed unused (and buggy) function.
19661
19662 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19663
19664 * xfns.c (gif_load): Use correct width and height for GIF images.
19665
19666 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
19667
19668 * floatfns.c (Fatan): Accept an optional second arg and call
19669 atan2 if passed 2 args.
19670
19671 2002-02-18 Jason Rumney <jasonr@gnu.org>
19672
19673 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
19674
19675 2002-02-17 Jason Rumney <jasonr@gnu.org>
19676
19677 * w32term.c (x_autoselect_window_p): New variable.
19678 (syms_of_w32term): DEFVAR_BOOL and initialize it.
19679 (note_mouse_movement): Use it.
19680
19681 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
19682
19683 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
19684
19685 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19686 New variables.
19687 (syms_of_w32fns): Intern and staticpro them.
19688 (x_frame_parms) <"fullscreen">: New parameter.
19689 (x_fullscreen_move, x_set_fullscreen): New functions.
19690 (x_set_frame_parameters): Support Qfullscreen.
19691 (x_real_positions): Save x/y_pixels_diff frame params.
19692 (x_figure_window_size): Support full-screen frames.
19693 (Fx_create_frame): Default the fullscreen parameter.
19694
19695 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
19696 (x_fullscreen_adjust): New functions.
19697 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
19698 fullscreen. Call x_check_fullscreen_move, and set the
19699 want_fullscreen member of output_data.w32
19700 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
19701
19702 * w32term.h: New enum for FULLSCREEN_* constants.
19703 (struct w32_output): New members want_fullscreen, x_pixels_diff,
19704 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
19705 (x-fullscreen-adjust): New prototype.
19706
19707 2002-02-17 Kim F. Storm <storm@cua.dk>
19708
19709 * frame.c (Vmouse_highlight): New variable.
19710 (syms_of_frame): DEFVAR_LISP it.
19711
19712 * frame.h (Vmouse_highlight): Declare extern.
19713
19714 * xterm.h (struct x_display_info): Add mouse_face_hidden.
19715
19716 * xterm.c (disable_mouse_highlight): Removed variable.
19717 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19718 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19719 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
19720 and on after keyboard input.
19721 (x_term_init): Initialize mouse_face_hidden.
19722
19723 * msdos.h (struct display_info): Add mouse_face_hidden.
19724
19725 * msdos.c (disable_mouse_highlight): Removed variable.
19726 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19727 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19728 (internal_terminal_init): Initialize mouse_face_hidden.
19729 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
19730 and on after keyboard input.
19731
19732 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
19733
19734 * w32term.c (disable_mouse_highlight): Removed variable.
19735 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
19736 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19737 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
19738 and on after keyboard input.
19739 (w32_initialize_display_info): Initialize mouse_face_hidden.
19740
19741 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
19742
19743 * msdos.c (last_mouse_window): New variable.
19744 (dos_rawgetc): Fix last change--if the mouse is in the same window
19745 as recorded in last_mouse_window, don't select this window.
19746
19747 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
19748
19749 * msdos.c (x_autoselect_window_p): New variable.
19750 (syms_of_msdos): Defvar it.
19751 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
19752 which the last mouse movement occured, unless it is already selected.
19753
19754 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
19755 New variables.
19756 (syms_of_xdisp): DEVFAR them.
19757 (hscroll_window_tree): Use automatic_hscroll_margin and
19758 Vautomatic_hscroll_step to compute the amount of window scrolling.
19759
19760 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19761
19762 * xterm.c (x-autoselect-window): New variable.
19763 (note_mouse_movement): Use it.
19764
19765 * keyboard.c: Do not include "systime.h" twice.
19766
19767 2002-02-15 Andreas Schwab <schwab@suse.de>
19768
19769 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
19770
19771 * alloc.c (NSTATICS): Increase to 1280.
19772
19773 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19774
19775 * alloc.c (NSTATICS): Bump to 1026.
19776
19777 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19778 (Vx_super_keysym): New variables.
19779 (syms_of_xterm): DEFVAR_LISP them.
19780 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19781 variables to determine which keys to use for the various modifiers.
19782
19783 2002-02-13 Kim F. Storm <storm@cua.dk>
19784
19785 * window.c (Vmode_line_in_non_selected_windows): Removed.
19786 (mode_line_in_non_selected_windows): New variable.
19787 (syms_of_window): DEFVAR_BOOL it.
19788
19789 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19790 Use mode_line_in_non_selected_windows.
19791 (mode_line_in_non_selected_windows): Declare extern.
19792 (Vmode_line_in_non_selected_windows): Removed extern.
19793
19794 2002-02-13 Richard M. Stallman <rms@gnu.org>
19795
19796 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19797 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19798 (Fclear_this_command_keys): Doc fixes.
19799
19800 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19801 (update_face_from_frame_parameter): Increment face_change_count
19802 and windows_or_buffers_changed to force redisplay using changed faces.
19803
19804 * xdisp.c (QCpropertize): New variable.
19805 (mode_line_proptrans_alist): New variable.
19806 (display_mode_element): New arg PROPS; all calls changed.
19807 Implement this, for strings.
19808 Handle literal output of strings by sharing the
19809 main-line code for strings, using local var `literal'.
19810 Handle :propertize feature.
19811 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19812 mode_line_proptrans_alist.
19813
19814 2002-02-11 Kim F. Storm <storm@cua.dk>
19815
19816 * window.c (Vmode_line_in_non_selected_windows): New variable.
19817 (syms_of_window): DEFVAR_LISP it.
19818
19819 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19820 (CURRENT_MODE_LINE_FACE_ID): Use it.
19821 (Vmode_line_in_non_selected_windows): Declare extern.
19822
19823 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19824 to get mode line face.
19825
19826 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19827
19828 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19829 variables; cus-start.el doesn't need them anymore.
19830
19831 2002-02-09 Kim F. Storm <storm@cua.dk>
19832
19833 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
19834 reduction. This fixes a display problem where stray newlines were
19835 inserted in the window (corrected by C-l). Clarified code (IMHO).
19836
19837 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
19838
19839 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
19840
19841 * xdisp.c (display_mode_lines): Fix last change.
19842
19843 2002-02-09 Jason Rumney <jasonr@gnu.org>
19844
19845 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
19846 match each other.
19847 (w32_load_system_font): Prevent Cleartype fonts from loading.
19848 (Fx_show_tip): Ensure tip frames are above other topmost windows.
19849
19850 2002-02-09 Kim F. Storm <storm@cua.dk>
19851
19852 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
19853 (CURRENT_MODE_LINE_HEIGHT): Use it.
19854 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
19855
19856 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
19857 (pos_visible_p, handle_face_prop): Likewise.
19858 (display_mode_lines): Likewise, but for the real selected window.
19859 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
19860
19861 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
19862 in non-selected windows.
19863 (realize_basic_faces): Realize it.
19864 (syms_of_term): Intern and staticpro it.
19865
19866 2002-02-08 Kim F. Storm <storm@cua.dk>
19867
19868 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
19869 Changed mail addresses to emacs-devel@gnu.org.
19870
19871 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
19872
19873 * fileio.c (Fsubstitute_in_file_name): If the file name includes
19874 ~user, and there's no such user, don't discard everything before ~user.
19875
19876 * floatfns.c (Fround): Doc fix.
19877
19878 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19879
19880 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
19881
19882 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
19883
19884 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
19885
19886 2002-02-07 Kim F. Storm <storm@cua.dk>
19887
19888 * keymap.c (where_is_internal): Only check whether definition is
19889 remapped if it fulfills is_command_symbol.
19890
19891 2002-02-07 Andreas Schwab <schwab@suse.de>
19892
19893 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
19894
19895 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
19896
19897 2002-02-06 Kim F. Storm <storm@cua.dk>
19898
19899 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
19900 defining command remapping. Doc updated.
19901 (Flookup_key): Remap command through keymap if KEY is a symbol.
19902 (is_command_symbol): New function.
19903 (Fkey_binding): Use it. New optional argument NO-REMAP.
19904 Doc updated. Callers changed. Perform command remapping via
19905 recursive call unless that arg is non-nil.
19906 (where_is_internal): New argument no_remap. Callers changed.
19907 Call recursively to find original key bindings for a remapped
19908 comand unless that arg is non-nil.
19909 (Fwhere_is_internal): New optional argument NO-REMAP.
19910 Doc updated. Callers changed. Pass arg to where_is_internal.
19911
19912 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
19913 (is_command_symbol): Add prototype.
19914
19915 * keyboard.c (Vthis_original_command): New variable.
19916 (syms_of_keyboard): DEFVAR_LISP it.
19917 (command_loop_1): Set it, and perform command remapping.
19918
19919 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19920
19921 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
19922
19923 2002-02-06 Jason Rumney <jasonr@gnu.org>
19924
19925 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
19926
19927 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
19928
19929 * charset.c (get_charset_id): Use if-else instead of ?:.
19930
19931 2002-02-06 Richard M. Stallman <rms@gnu.org>
19932
19933 * filelock.c (S_ISLNK): Define if not defined.
19934
19935 2002-02-03 Richard M. Stallman <rms@gnu.org>
19936
19937 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
19938
19939 * lread.c (read1): Redesign strategy for force_multibyte and
19940 force_singlebyte. Now is_multibyte records whether read_buffer
19941 is multibyte. Encountering any multibyte character makes it so.
19942
19943 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
19944
19945 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
19946 with the same sequence, map that sequence to f10 rather than f0.
19947
19948 2002-02-03 Andreas Schwab <schwab@suse.de>
19949
19950 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
19951 latter never being defined on GNU/Linux.
19952
19953 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
19954
19955 * xfaces.c (realize_default_face): Don't set the weight and slant of
19956 the default face to Qnormal, unless these attributes are unspecified.
19957
19958 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19959
19960 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
19961 Call cancel_hourglass unconditionally.
19962
19963 * eval.c (Fsignal): Remove duplicated declaration of
19964 the variable `display_hourglass_p'.
19965
19966 2002-01-31 Richard M. Stallman <rms@gnu.org>
19967
19968 * editfns.c (region_limit): Nicer error message.
19969
19970 * coding.c (decode_composition_emacs_mule):
19971 Give up if NCOMPONENT gets too large to index `component'.
19972
19973 * callint.c (check_mark): New arg to specify clearer error message.
19974 Callers changed.
19975
19976 2002-01-27 Richard M. Stallman <rms@gnu.org>
19977
19978 * minibuf.c (Fcompleting_read): Doc fix.
19979
19980 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19981
19982 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
19983 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
19984 Fix doc-strings.
19985
19986 2002-01-26 Richard M. Stallman <rms@gnu.org>
19987
19988 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
19989
19990 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
19991 and scroll_up_aggressively.
19992
19993 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19994
19995 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
19996
19997 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
19998
19999 * textprop.c (Fnext_property_change, Fnext_single_property_change)
20000 (Fprevious_property_change, Fprevious_single_property_change):
20001 Stay within the narrowed-buffer boundaries.
20002
20003 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
20004
20005 * term.c (Ftty_display_color_cells): New function.
20006 (syms_of_term): Defsubr it.
20007 (Ftty_display_color_cells, Ftty_display_color_p): Change the
20008 argument name to DISPLAY. Doc fix.
20009
20010 * dispextern.h: Add prototype for set_tty_color_mode and
20011 tty_setup_colors.
20012
20013 2002-01-24 Jason Rumney <jasonr@gnu.org>
20014
20015 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
20016 If region left to draw is not what was expected, mark the frame as
20017 garbaged.
20018
20019 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
20020 Combine the regions returned by BeginPaint and GetUpdateRect.
20021
20022 2002-01-23 Jason Rumney <jasonr@gnu.org>
20023
20024 * w32term.c (x_update_window_begin): Only hide caret if
20025 w32_use_visible_system_caret is set.
20026 (x_update_window_end): Only show caret if
20027 w32_use_visible_system_caret is set.
20028 (syms_of_w32term): Handle SystemParametersInfo call failing.
20029
20030 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
20031
20032 2002-01-22 Richard M. Stallman <rms@gnu.org>
20033
20034 * unexelf.c (unexec): Define n so as to cause compilation error
20035 for the code where people have often written n instead of nn.
20036
20037 * .gdbinit (hookpost-run): Defined.
20038
20039 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20040
20041 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
20042
20043 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20044
20045 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
20046 if fullscreen is being set.
20047
20048 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20049
20050 * minibuf.c (Fminibuffer_contents)
20051 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
20052 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
20053
20054 2002-01-21 Richard M. Stallman <rms@gnu.org>
20055
20056 * window.c (check_frame_size): Fix minimum height calculation.
20057
20058 2002-01-20 Ken Raeburn <raeburn@gnu.org>
20059
20060 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
20061 height before comparison.
20062 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
20063
20064 2002-01-20 Jason Rumney <jasonr@gnu.org>
20065
20066 * w32term.c (w32_system_caret_width): Remove.
20067 (w32_use_visible_system_caret): New user flag.
20068 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
20069 Windows reports a screen reader running.
20070 (x_update_window_begin): Hide the system caret.
20071 (x_update_window_end): Show the system caret.
20072 (x_display_and_set_cursor): Don't draw a cursor when
20073 w32_use_visible_system_caret is set. Do not adjust width.
20074
20075 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
20076 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
20077 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
20078 the user requests it. Use system default width when creating.
20079 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
20080
20081 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
20082 New window messages.
20083
20084 2002-01-20 Richard M. Stallman <rms@gnu.org>
20085
20086 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
20087
20088 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20089
20090 * doprnt.c (doprnt1): Fix typos in error call.
20091
20092 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
20093
20094 * unexelf.c (unexec) [__sgi]: Support the .got sections.
20095
20096 2002-01-20 Jason Rumney <jasonr@gnu.org>
20097
20098 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
20099 that Windows returns. If a double check fails, try to guess how
20100 ExtTextOut is going to act.
20101
20102 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
20103 in place of stricmp.
20104 (w32_list_synthesized_fonts): Removed.
20105 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
20106 (struct enumfont_t): New element; list.
20107 (enum_font_cb2): List all style and charset variations of a font.
20108 (Fw32_select_font): New optional argument; include_proportional.
20109 Exclude vertical fonts. Exclude proportional fonts unless
20110 include_proportional is non-nil.
20111 (w32_enable_synthesized_fonts): Change to a boolean.
20112 (Fw32_send_sys_command): Doc fix.
20113
20114 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20115
20116 * dispnew.c (update_frame): Move the variable `tem' to the block
20117 where it is used.
20118
20119 2002-01-19 Jason Rumney <jasonr@gnu.org>
20120
20121 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
20122 call to face-set-after-frame-default.
20123
20124 2002-01-18 Richard M. Stallman <rms@gnu.org>
20125
20126 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
20127 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
20128
20129 2002-01-17 Richard M. Stallman <rms@gnu.org>
20130
20131 * window.c (enlarge_window): When exceeding size of parent,
20132 directly delete all the siblings instead of trying to resize it.
20133
20134 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20135
20136 * term.c (set_tty_color_mode): Remove unused variable `tem'.
20137
20138 2002-01-16 Henrik Enberg <henrik@enberg.org>
20139
20140 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
20141
20142 2002-01-16 Kim F. Storm <storm@cua.dk>
20143
20144 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
20145 is invisible. This can happen if cursor is on top line of a
20146 window, and we switch to a buffer with a header line.
20147
20148 * w32term.c (x_erase_phys_cursor): Ditto.
20149
20150 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20151
20152 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
20153 `dont_resize' only when used.
20154
20155 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
20156
20157 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
20158
20159 * xdisp.c (display_mode_element): When computing charpos, depend
20160 on multibyteness of elt, not the text in field.
20161
20162 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20163
20164 * buffer.c (Fkill_all_local_variables):
20165 Increment `update_mode_lines' only once.
20166
20167 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20168
20169 * lisp.h (adjust_after_replace_noundo)
20170 (Fupdate_coding_systems_internal): Add prototypes.
20171
20172 * sound.c (Fplay_sound): Initialize header_size also for :data case.
20173
20174 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
20175
20176 Support for the --color command-line argument and tty-color-mode
20177 frame parameter:
20178
20179 * term.c (tty_default_color_capabilities, tty_setup_colors)
20180 (set_tty_color_mode): New functions.
20181 (term_init): Call tty_default_color_capabilities.
20182 (Qtty_color_mode_alist): New variable.
20183 (syms_of_term): Intern and staticpro it.
20184
20185 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
20186 frames.
20187 (do_switch_frame): For termcap frames, switch the tty
20188 color mode as specified by the frame's parameters.
20189 (Qtty_color_mode): New variable.
20190 (syms_of_frame): Intern and staticpro it.
20191
20192 * emacs.c (USAGE2): Add the --color option.
20193 (standard_args): Ditto.
20194
20195 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20196
20197 * xterm.h (struct x_output): New members want_fullscreen,
20198 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
20199 y_pixels_outer_diff.
20200 New enum for FULLSCREEN_* constants.
20201 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
20202 is NULL.
20203 (x_fullscreen_adjust): Add prototype.
20204
20205 * emacs.c (USAGE2): Add the new full-screen arguments.
20206 (standard_args): Ditto.
20207
20208 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
20209 New variables.
20210 (syms_of_xfns): Intern and staticpro them.
20211 (x_frame_parms) <"fullscreen">: New parameter.
20212 (x_fullscreen_move, x_set_fullscreen): New functions.
20213 (x_set_frame_parameters): Support for Qfullscreen.
20214 (x_real_positions): More accurate computation of the frame position.
20215 (x_figure_window_size): Support full-screen frames.
20216 (Fx_create_frame): Default the fullscreen parameter.
20217
20218 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
20219 (XTread_socket) <Expose>: Call x_check_fullscreen.
20220 <ConfigureNotify>: Don't resize to fullscreen.
20221 Call x_check_fullscreen_move, and set the want_fullscreen member of
20222 output_data.x.
20223
20224 2002-01-13 Jason Rumney <jasonr@gnu.org>
20225
20226 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
20227 for mice with more than 3 buttons.
20228
20229 * w32term.c (parse_button): New parameter xbutton. Callers changed.
20230 (w32_read_socket): Handle new "XBUTTON" messages.
20231
20232 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
20233 (syms_of_w32fns): DEFVAR_BOOL it.
20234 (w32_wnd_proc): Handle new "XBUTTON" messages.
20235
20236 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20237
20238 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
20239
20240 2002-01-13 Andreas Schwab <schwab@suse.de>
20241
20242 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
20243
20244 2002-01-12 Andreas Schwab <schwab@suse.de>
20245
20246 * .gdbinit (xbuffer): Remove address operator since data is now a
20247 pointer.
20248
20249 2002-01-11 Richard M. Stallman <rms@gnu.org>
20250
20251 * insdel.c (adjust_after_replace_noundo): New function.
20252
20253 * coding.c (code_convert_region): Don't copy old text if undo disabled.
20254
20255 2002-01-09 Jason Rumney <jasonr@gnu.org>
20256
20257 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
20258 when checking for multiple frames.
20259
20260 2002-01-08 Richard M. Stallman <rms@gnu.org>
20261
20262 * window.c (delete_window): Rewrite the code for changing the
20263 selected window to handle the case where WINDOW is not a leaf.
20264
20265 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
20266
20267 * process.c (send_process): Set src_multibyte to 1 after the call
20268 top setup_coding_system, not before the call.
20269
20270 2002-01-07 Jason Rumney <jasonr@gnu.org>
20271
20272 * xmenu.c (set_frame_menubar, xmenu_show):
20273 (xdialog_show): Initialize wv->help to Qnil.
20274
20275 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
20276 (w32_dialog_show): Initialize wv->help to Qnil.
20277
20278 2002-01-06 Jason Rumney <jasonr@gnu.org>
20279
20280 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
20281
20282 * w32menu.c (w32_menu_display_help): Revert last change.
20283
20284 * xmenu.c (menu_highlight_callback): Revert last change.
20285
20286 2002-01-06 Andreas Schwab <schwab@suse.de>
20287
20288 * insdel.c (make_gap_larger): Make sure buffer size does not
20289 overflow range of int.
20290
20291 2002-01-05 Jason Rumney <jasonr@gnu.org>
20292
20293 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20294 OVERLAPS_P.
20295
20296 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
20297
20298 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
20299 to the left or to the right of the pointer, put it against
20300 the left screen edge.
20301 (x_frame_parms): Add missing braces around initializer.
20302
20303 * w32term.c (x_setup_relief_colors): Don't compute an image's
20304 background color if it doesn't have a Pixmap.
20305 (notice_overwritten_cursor): Don't depend on
20306 output_cursor and updated_area. Compare pixel coordinates with
20307 window's cursor pixel coordinates.
20308 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20309 Call notice_overwritten_cursor with new arg list.
20310 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20311 unconditionally.
20312 (x_draw_image_relief): Use predefined macro instead of
20313 constant when the value of `tool_bar_button_relief' is negative.
20314
20315 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
20316
20317 2002-01-04 Richard M. Stallman <rms@gnu.org>
20318
20319 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
20320
20321 2002-01-03 Richard M. Stallman <rms@gnu.org>
20322
20323 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
20324 (Fkey_binding): Try the `keymap' property map first.
20325 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
20326 minor mode bindings.
20327
20328 2002-01-03 Kim F. Storm <storm@cua.dk>
20329
20330 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
20331
20332 2002-01-02 Richard M. Stallman <rms@gnu.org>
20333
20334 * keyboard.c (read_key_sequence): Handle the keymap property
20335 before minor mode maps.
20336
20337 * editfns.c (Fformat): Update thissize from field_width
20338 based on the actual width, in the string case.
20339
20340 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20341
20342 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
20343 when used as truth value to prevent gcc warnings.
20344
20345 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
20346 * w32proc.c: Include <config.h>.
20347
20348 2002-01-01 Andreas Schwab <schwab@suse.de>
20349
20350 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
20351 not EMACS_INT, to make them compatible with DEFVAR_INT.
20352 * lisp.h (max_specpdl_size): Adjust declaration.
20353
20354 2002-01-01 Richard M. Stallman <rms@gnu.org>
20355
20356 * print.c (print_object): Test print_escape_nonascii only for
20357 unibyte strings.
20358 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
20359 when outputting to a multibyte buffer.
20360
20361 2001-12-29 Richard M. Stallman <rms@gnu.org>
20362
20363 * print.c (print_object): In multibyte string, use hex escapes.
20364 Use octal only for unibyte strings.
20365 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
20366
20367 * lread.c (read_escape): New arg BYTEREP for reporting whether
20368 escape forces unibyte or multibyte.
20369 (read1): When reading a string, take note of that info.
20370
20371 2001-12-29 Ken Raeburn <raeburn@gnu.org>
20372
20373 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
20374 comparison to test lisp value returned by Fget.
20375
20376 2001-12-29 Richard M. Stallman <rms@gnu.org>
20377
20378 * lisp.h (max_specpdl_size): Add declaration.
20379
20380 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
20381
20382 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
20383 Handle modifier bits. Correct typo in error message.
20384
20385 2001-12-28 Richard M. Stallman <rms@gnu.org>
20386
20387 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
20388 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
20389 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20390 Update calls to Fdefine_abbrev.
20391 (write_abbrev): Update for changed data format.
20392 Don't list "system" abbrevs.
20393 (Fexpand_abbrev): Update use count with new data format.
20394 (describe_abbrev): Update for changed data format.
20395 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
20396
20397 * config.in (HAVE_MBSINIT): Add #undef.
20398
20399 * strftime.c (mbsinit): Define as no-op if not available.
20400
20401 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
20402 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
20403
20404 * keymap.c (Flookup_key): Error message if key has wrong data type.
20405 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
20406 (exclude_key): New variable.
20407
20408 2001-12-28 Gerd Moellmann <gerd@gnu.org>
20409
20410 * xterm.c (x_setup_relief_colors): Don't compute an image's
20411 background color if it doesn't have a Pixmap.
20412
20413 * xterm.c (notice_overwritten_cursor): Don't depend on
20414 output_cursor and updated_area. Compare pixel coordinates with
20415 window's cursor pixel coordinates.
20416 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20417 Call notice_overwritten_cursor with new arg list.
20418 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20419 unconditionally.
20420
20421 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
20422 height of the cursor line to the amount to scroll.
20423
20424 2001-12-27 Richard M. Stallman <rms@gnu.org>
20425
20426 * intervals.c (set_point_both): The position after an invisible,
20427 intangible character is not an acceptable stopping point.
20428
20429 2001-12-27 Ken Raeburn <raeburn@gnu.org>
20430
20431 * window.c (enlarge_window): In new preserve_before code, convert
20432 CURBEG from lisp object to integer before doing arithmetic.
20433
20434 2001-12-27 Richard M. Stallman <rms@gnu.org>
20435
20436 * bytecode.c (Fbyte_code): Undo previous change.
20437
20438 2001-12-26 Kim F. Storm <storm@cua.dk>
20439
20440 * keyboard.c (record_char): Ignore duplicate help-echo events only
20441 separated by mouse-movement. When tracking mouse, only record
20442 first and last mouse-movement event in same window.
20443 Don't record mouse-movement events in keyboard macros.
20444
20445 2001-12-25 Richard M. Stallman <rms@gnu.org>
20446
20447 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
20448 (Fenlarge_window): New arg PRESERVE_BEFORE.
20449
20450 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
20451 instead of Fstring_as_unibyte.
20452
20453 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20454
20455 The following changes remove mocklisp support:
20456
20457 * mocklisp.h, mocklisp.c: Files removed.
20458
20459 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
20460 `Qmocklisp' and `Qmocklisp_arguments'.
20461 Remove prototype of syms_of_mocklisp.
20462
20463 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
20464
20465 * callint.c: Do not include mocklisp.h.
20466 (Fcall_interactively): Do not test for mocklisp case.
20467
20468 * eval.c: Remove variables `Qmocklisp_arguments',
20469 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
20470 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
20471 Do not test for mocklisp case.
20472 (Fwhile): Remove unused variable `tem'.
20473 (syms_of_eval): Remove variable `moclisp-arguments'.
20474
20475 * data.c (wrong_type_argument): Remove mocklisp case.
20476
20477 * doc.c (Fdocumentation): Remove mocklisp case.
20478
20479 * emacs.c (main): Do not call syms_of_mocklisp.
20480
20481 2001-12-21 Richard M. Stallman <rms@gnu.org>
20482
20483 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
20484 to the left or to the right of the pointer, put it against
20485 the left screen edge.
20486
20487 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
20488
20489 * Makefile.in (distclean): Remove .gdbinit if we are building
20490 outside the source tree.
20491
20492 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
20493
20494 * w32.c (emacs_root_dir): New function.
20495
20496 * msdos.c (emacs_root_dir): New function.
20497
20498 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
20499 of the current drive as the fallback for default_directory.
20500
20501 * dired.c (file_name_completion): Run the elements of
20502 completion-ignored-extensions through ENCODE_FILE.
20503
20504 * lisp.h (scmp): Remove prototype, since it's now a static
20505 function private to dired.c.
20506
20507 2001-12-18 Richard M. Stallman <rms@gnu.org>
20508
20509 * dired.c (scmp): Function moved from minibuf.c.
20510 Delete multibyte handling--used only on encoded strings.
20511
20512 * minibuf.c (scmp): Function moved to dired.c.
20513
20514 * fns.c (merge): Add QUIT call.
20515
20516 2001-12-18 Dave Love <fx@gnu.org>
20517
20518 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
20519 language/georgian.el.
20520
20521 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
20522
20523 * Makefile.in (lisp, shortlisp): Synchronize with changes to
20524 lisp/Makefile.in:DONTCOMPILE.
20525
20526 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20527
20528 * xdisp.c (window_box_height): Do not return negative values.
20529 From Gerd Moellmann <gerd@gnu.org>.
20530
20531 * keyboard.c (head_table): Add missing braces around initializer.
20532
20533 * term.c (keys): Likewise.
20534
20535 * xfns.c (x_frame_parms, visual_classes): Likewise.
20536
20537 2001-12-17 Sam Steingold <sds@gnu.org>
20538
20539 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
20540 patch (COMPOSING_P, not COMPOSING).
20541
20542 2001-12-17 Richard M. Stallman <rms@gnu.org>
20543
20544 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
20545
20546 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
20547 before calling decode_coding.
20548
20549 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
20550
20551 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
20552 instead of only for COMPOSITION_DISABLED.
20553
20554 2001-12-16 Richard M. Stallman <rms@gnu.org>
20555
20556 * alloc.c (pure_alloc): After overflow, allocate just a small block.
20557
20558 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
20559
20560 * buffer.h (struct buffer): New field `display_error_modiff'.
20561 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
20562
20563 * window.c (Frecenter): Clear display_error_modiff field.
20564
20565 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
20566 Call redisplay_window, but not if display_error_modiff field says no.
20567 (redisplay_window_error): New function.
20568 (displayed_buffer): New variable.
20569 (redisplay_internal, redisplay_windows): Call the new functions
20570 instead of redisplay_window directly.
20571
20572 2001-12-15 Richard M. Stallman <rms@gnu.org>
20573
20574 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
20575
20576 2001-12-14 Andrew Innes <andrewi@gnu.org>
20577
20578 * makefile.w32-in (EMACSLOADPATH): Define.
20579 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
20580 (bootstrap-temacs): Remove dependency on bootstrap-clean.
20581
20582 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
20583
20584 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
20585 parameter have a numeric value all the time.
20586
20587 * w32fns.c (x_report_frame_params): Likewise.
20588
20589 2001-12-12 Richard M. Stallman <rms@gnu.org>
20590
20591 * fileio.c (Fwrite_region): Doc fix.
20592
20593 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
20594 (redisplay_internal): Call clear_image_cache only for window terminals.
20595
20596 2001-12-12 Gerd Moellmann <gerd@gnu.org>
20597
20598 * xdisp.c (move_it_vertically_backward): Change heuristic
20599 for the case that we didn't move far enough initially.
20600
20601 * window.c (Frecenter): Simplify computation in the case of window
20602 system frames and ARG < 0; use window_box_height.
20603
20604 2001-12-11 Richard M. Stallman <rms@gnu.org>
20605
20606 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
20607 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
20608
20609 2001-12-11 Andrew Innes <andrewi@gnu.org>
20610
20611 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
20612 arg is negative.
20613
20614 2001-12-11 Richard M. Stallman <rms@gnu.org>
20615
20616 * m/hp800.h: Split the __hpux conditional into the parts
20617 that are right for GNU/Linux too and the parts that are not.
20618 Use the former if GNU_LINUX.
20619 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
20620
20621 * s/gnu-linux.h (GNU_LINUX): Defined.
20622
20623 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20624
20625 * macros.c, msdos.c, w16select.c: Change doc-string comments to
20626 `new style' [w/`doc:' keyword].
20627
20628 2001-12-10 Jason Rumney <jasonr@gnu.org>
20629
20630 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
20631 before using.
20632
20633 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20634
20635 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
20636 keyword].
20637
20638 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
20639
20640 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
20641
20642 * s/hpux10.h (srand48): Don't undefine.
20643
20644 2001-12-09 Jason Rumney <jasonr@gnu.org>
20645
20646 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
20647 Add comment to explain where the struct came from.
20648 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
20649 (add_menu_item): Process pop-up menus first to avoid memory leak.
20650 (add_menu_item, w32_menu_display_help): Use `help' field as
20651 Lisp_Object.
20652 (w32_free_submenu_strings): Only free owner-drawn strings.
20653
20654 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20655
20656 * COPYING: Moved back.
20657
20658 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
20659 Add parentheses around && within ||.
20660
20661 * indent.c (compute_motion): Likewise.
20662
20663 * intervals.c (merge_properties_sticky): Likewise.
20664
20665 * coding.c (setup_coding_system, shrink_encoding_region)
20666 (Fdecode_sjis_char): Likewise.
20667
20668 2001-12-07 Andreas Schwab <schwab@suse.de>
20669
20670 * xdisp.c (display_mode_element): Don't read past end of string if
20671 it ends with '%'.
20672
20673 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
20674 can hold.
20675
20676 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
20677 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
20678 type changed to Lisp_Object.
20679 (syms_of_data): DEFVAR_LISP them.
20680
20681 2001-12-07 Richard M. Stallman <rms@gnu.org>
20682
20683 * callproc.c (init_callproc): Set Vdata_directory based on the source
20684 location whenever Emacs was run uninstalled.
20685
20686 2001-12-06 Paul Eggert <eggert@twinsun.com>
20687
20688 * config.in (HAVE_WORKING_VFORK): New #undefs.
20689 * process.c (create_process):
20690 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
20691 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
20692 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
20693 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
20694 * m/intel386.h (HAVE_VFORK): Likewise.
20695 * m/mips-siemens.h (HAVE_VFORK): Likewise.
20696 * m/mips.h (HAVE_VFORK): Likewise.
20697 * s/freebsd.h (vfork): Remove #define.
20698 * s/lynxos.h (HAVE_VFORK): Remove #undef.
20699 * s/usg5-4-2.h: Fix comment about vfork.
20700
20701 2001-12-06 Richard M. Stallman <rms@gnu.org>
20702
20703 * s/hpux10.h (random): Add undef.
20704 (HAVE_RANDOM): Define it just once.
20705
20706 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
20707
20708 * eval.c: Undo last change: the standard syntax is not wanted.
20709
20710 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
20711
20712 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
20713 scroll bars of the frame before deleting the frame itself. If the
20714 frame has a widget, delete the frame with XtDestroyWidget, and do
20715 not call XDestroyWindow before that.
20716
20717 2001-12-06 Kim F. Storm <storm@cua.dk>
20718
20719 * xfns.c (x_report_frame_params): Return actual fringe widths.
20720
20721 * w32fns.c (x_report_frame_params): Return actual fringe widths.
20722
20723 2001-12-05 Andrew Innes <andrewi@gnu.org>
20724
20725 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
20726 excessively large.
20727
20728 * insdel.c (make_gap_larger): New function.
20729 (make_gap_smaller): New function.
20730 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
20731 Call make_gap_smaller if arg is negative.
20732
20733 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
20734
20735 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
20736 Pass a dummy argument when calling interrupt_signal.
20737 (parse_menu_item): Mark disabled items before checking for empty def.
20738 (read_char_minibuf_menu_prompt): Make safety more visible.
20739 (read_key_sequence): Add a `first_unbound' variable.
20740 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
20741 unbound prefix as soon as we can detect it.
20742
20743 * doc.c (Fsnarf_documentation): Add prototype.
20744 (get_doc_string): Handle negative arguments.
20745 (Fdocumentation): Use AREF and ASIZE.
20746 Move the calls to get_doc_string to a single place.
20747 Don't confuse an interactive-spec for a docstring reference.
20748 (Fdocumentation_property): Take advantage of the fact that
20749 get_doc_string now ignores the sign of the docstring position.
20750
20751 * eval.c: Use standard syntax for usage in docstrings.
20752
20753 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20754
20755 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
20756
20757 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20758
20759 * xterm.c (x_draw_image_relief): Use predefined macro instead of
20760 constant when the value of `tool_bar_button_relief' is negative.
20761
20762 2001-12-02 Richard M. Stallman <rms@gnu.org>
20763
20764 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
20765 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
20766
20767 * fileio.c (read_non_regular): Delete Fsignal call.
20768
20769 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
20770
20771 * lisp.h (run_hook_list_with_args): Undo last change.
20772
20773 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20774
20775 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20776
20777 2001-12-01 Jason Rumney <jasonr@gnu.org>
20778
20779 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20780
20781 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20782 [!WM_MOUSELEAVE]: Define.
20783
20784 * w32menu.c (current_popup_menu, get_menu_item_info):
20785 (set_menu_item_info): New vars.
20786 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20787 (w32_menu_show): Set current_popup_menu.
20788 (add_menu_item): Allocate new strings for owner-drawn menu items
20789 and help strings.
20790 Use owner-draw for disabled menu items again.
20791 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20792 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20793
20794 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20795 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20796 <WM_EXITMENULOOP>: Free menu strings.
20797 <WM_MOUSELEAVE>: Stop tracking mouse.
20798 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20799
20800 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20801 and mouse face.
20802
20803 2001-12-01 Kim F. Storm <storm@cua.dk>
20804
20805 The following changes add left-fringe and right-fringe
20806 frame parameters to adjust fringe widths, or remove one or
20807 both fringes.
20808
20809 * frame.h (struct frame): Remove trunc_area_pixel_width and
20810 trunc_area_cols fields.
20811 (Qleft_fringe, Qright_fringe): Declare.
20812 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20813
20814 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20815 (syms_of_frame): Initialize them.
20816
20817 * window.c (coordinates_in_window): Handle separate left and right
20818 fringe widths.
20819
20820 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20821 and fringe_cols fields.
20822 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20823 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20824 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20825 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20826 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20827 (x_compute_fringe_widths): Add prototype.
20828
20829 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20830 fill fringe evenly with small dashes.
20831 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20832 clip the new ZV bitmap to avoid jitter between rows.
20833 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
20834 background. Don't draw fringe bitmaps if fringe width is zero.
20835 (x_compute_fringe_widths): New function.
20836 (x_new_font, x_set_window_size_1): Use it.
20837
20838 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
20839 (x_set_frame_parameters): Process `font' parameter before other
20840 parameters as fringe widths depend on it.
20841 (x_set_fringe_width): New function.
20842 (x_figure_window_size): Use x_compute_fringe_widths.
20843 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
20844 parameters.
20845
20846 * widget.c (set_frame_size): Use x_compute_fringe_widths.
20847 (EmacsFrameSetCharSize): Ditto.
20848
20849 * w32term.h: Merged changes from xterm.h.
20850 * w32term.c: Merged changes from xterm.c.
20851 * w32fns.c: Merged changes from xfns.c.
20852
20853 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20854
20855 * COPYING: Removed.
20856
20857 2001-11-29 Dave Love <fx@gnu.org>
20858
20859 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
20860 extra extra slot.
20861 (detect_coding_mask): Fix call of detect_coding_iso2022.
20862
20863 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20864
20865 * fileio.c (file-name-coding-system)
20866 (default-file-name-coding-system): Doc fix (links to referenced
20867 variables added).
20868
20869 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20870
20871 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
20872 Add dummy uses of gcproN variables.
20873
20874 * category.c (describe_category, describe_category_1)
20875 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
20876 (syms_of_category): Don't defsubr Sdescribe_categories.
20877
20878 2001-11-28 Richard M. Stallman <rms@gnu.org>
20879
20880 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
20881
20882 * Makefile.in (lispdir): New variable, referring to build dir.
20883 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
20884
20885 2001-11-28 Andrew Innes <andrewi@gnu.org>
20886
20887 * w32menu.c (w32_menu_display_help): Actually add the new argument
20888 OWNER.
20889
20890 2001-11-28 Jason Rumney <jasonr@gnu.org>
20891
20892 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
20893 menu items. From David Ponce <dponce@wanadoo.fr>.
20894 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
20895 conditionally.
20896 (w32_menu_display_help): New argument OWNER. Rewritten to store a
20897 help event in the owner frame's keyboard buffer.
20898
20899 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
20900 (Fx_show_tip): Don't subtract last width from row width.
20901
20902 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
20903 (w32_read_socket): Use EQ to compare frames.
20904
20905 2001-11-28 Gerd Moellmann <gerd@gnu.org>
20906
20907 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20908 OVERLAPS_P.
20909
20910 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20911
20912 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
20913 `gcpro3' and `gcpro4'.
20914
20915 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
20916
20917 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20918
20919 * ccl.c: Use AREF and ASIZE.
20920
20921 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
20922
20923 * lisp.h (run_hook_list_with_args): Remove.
20924 (LIST_END_P): Fix call to wrong_type_argument.
20925 (make_fixnum_or_float): Use EMACS_INT rather than int.
20926
20927 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
20928
20929 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
20930 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
20931
20932 * eval.c: Use AREF and ASIZE.
20933 (Ffetch_bytecode): Add the file name to the error message.
20934
20935 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
20936 which match the end of the file-name.
20937 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
20938 is not a valid env var, but leave it as is instead.
20939
20940 * keymap.c (access_keymap): Handle t bindings like nil bindings.
20941 Make nil bindings in char-tables transparent.
20942 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
20943
20944 2001-11-26 Richard M. Stallman <rms@gnu.org>
20945
20946 * textprop.c (set_text_properties_1): Allow START, END in either order.
20947 Do nothing if range is empty.
20948
20949 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
20950
20951 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
20952 (clean): Not here.
20953
20954 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20955
20956 * textprop.c (set_text_properties_1): Clearly mark that the
20957 interval should not be empty.
20958
20959 * intervals.c (graft_intervals_into_buffer):
20960 Don't call set_text_properties_1 on an empty interval.
20961
20962 2001-11-25 Richard M. Stallman <rms@gnu.org>
20963
20964 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
20965
20966 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
20967 don't lose the data in it.
20968
20969 2001-11-25 Juanma Barranquero <lektu@terra.es>
20970
20971 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
20972
20973 * buffer.c (Fkill_buffer): Likewise.
20974
20975 * print.c (temp_output_buffer_setup): Likewise.
20976
20977 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20978
20979 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
20980
20981 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
20982
20983 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
20984 Niemitalo <kon@iki.fi>.
20985
20986 2001-11-25 Jason Rumney <jasonr@gnu.org>
20987
20988 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
20989
20990 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
20991 (Fx_show_tip): Block input during frame creation.
20992 (Fx_show_tip, Fx_hide_tip): Enable.
20993
20994 2001-11-24 Richard M. Stallman <rms@gnu.org>
20995
20996 * lread.c (Fload): Detect recursive load error for more than 3
20997 nestings of the same file.
20998 (Vrecursive_load_depth_limit): Variable deleted.
20999 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
21000
21001 2001-11-24 Jason Rumney <jasonr@gnu.org>
21002
21003 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
21004 mouse position if either left or top is not specified.
21005
21006 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
21007 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
21008 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
21009 (my_create_tip_window): Assign tip_window.
21010 (x_create_tip_frame): Use same defaults as X.
21011 (compute_tip_xy): Remove unused variable. Use full screen width.
21012 (Fx_show_tip): Do not double height. Call ShowWindow directly.
21013
21014 * w32term.c (x_after_update_window_line): Doc fix.
21015 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
21016 frames.
21017 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
21018
21019 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
21020 for all Windowed systems.
21021
21022 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
21023
21024 * msdos.c (IT_clear_screen): If the frame's faces are not yet
21025 realized, use the initial screen colors to clear the screen.
21026
21027 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21028
21029 * textprop.c (Fset_text_properties): Remove unused variables
21030 `unchanged', `prev_changed', `s' and `len'.
21031
21032 * search.c (Freplace_match): Remove unused variable `inslen'.
21033
21034 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
21035
21036 2001-11-22 Jason Rumney <jasonr@gnu.org>
21037
21038 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
21039 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
21040 (my_create_tip_window): New function.
21041 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
21042 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
21043
21044 2001-11-20 Jason Rumney <jasonr@gnu.org>
21045
21046 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
21047 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
21048
21049 * w32fns.c (Vw32_system_coding_system): Remove.
21050 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
21051
21052 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
21053
21054 * fileio.c (Fwrite_region): Move choose_write_coding_system to
21055 after build_annotations.
21056
21057 * syntax.c (describe_syntax): Add dummy arg.
21058 (describe_syntax_1): Update call to describe_vector.
21059
21060 * category.c (describe_category): Add dummy arg.
21061 (describe_category_1): Update call to describe_vector.
21062
21063 * keymap.c (Fdescribe_vector): Add `describer' parameter.
21064 (describe_command, describe_translation): Add dummy second param.
21065 (describe_map): Call elt_describer with two arguments.
21066 (describe_vector_princ): Add `fun' parameter.
21067 Call it instead of the hardcoded `princ'.
21068 (describe_vector): Add arg `args'.
21069 Pass it as a new second argument to elt_describer.
21070
21071 * keymap.h (describe_vector): Update prototype.
21072
21073 * frame.c: Don't include keymap.h any more.
21074 (keys_of_frame): Remove.
21075
21076 * lisp.h (keys_of_frame): Remove declaration.
21077
21078 * emacs.c (main): Don't call `keys_of_frame' any more.
21079
21080 2001-11-14 Andreas Schwab <schwab@suse.de>
21081
21082 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
21083 if defined, 0 otherwise.
21084 (MAP_FAILED): Define if not defined and use it to test mmap failure.
21085 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
21086
21087 2001-11-19 Richard M. Stallman <rms@gnu.org>
21088
21089 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
21090
21091 2001-11-18 Jason Rumney <jasonr@gnu.org>
21092
21093 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
21094 (x_draw_bar_cursor): If the background color of the glyph under
21095 the cursor equals the frame's cursor color, use the glyph's
21096 foreground color for drawing the bar cursor.
21097 (x_after_update_window_line): Clear internal border in different
21098 circumstances.
21099 (w32_set_vertical_scroll_bar): Check for width and height > 0.
21100 (w32_draw_relief_rect): Correct relief by 1 pixel.
21101 (x_set_glyph_string_background_width):
21102 Set extends_to_end_of_line_p if the row's fill_line_p is set and
21103 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
21104 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
21105 if cursor_in_non_selected_windows is false.
21106 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
21107 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
21108 Notice if cursor gets overwritten.
21109 (notice_overwritten_cursor): Renamed from
21110 note_overwritten_text_cursor. Rewritten to take glyph widths
21111 into account, and to take X positions as parameters.
21112 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21113 around call to x_draw_glyphs.
21114 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21115 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21116 color to use for image glyph reliefs.
21117 (x_draw_image_relief): Accept zero tool_bar_button_relief.
21118 (glyph_rect): Remove unused variable `area'.
21119
21120 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
21121 some items.
21122 (x_set_internal_border_width): Set frame garbaged when window
21123 doesn't exist yet.
21124 (Fx_create_frame): Accept zero tool_bar_button_relief.
21125 (x_clear_image_1, four_corners_best, image_background)
21126 (image_background_transparent): New functions.
21127 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21128 (gs_format): Add `:background' entry.
21129 (lookup_image): Set IMG's background color if specified.
21130 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21131 when appropriate.
21132 (x_clear_image_1): Reset `background_valid' and
21133 `background_transparent_valid' fields.
21134 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21135 calculating it here. Set IMG's background_transparent field.
21136 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21137 (enum png_keyword_index): Add PNG_BACKGROUND.
21138 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21139 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21140 (enum gif_keyword_index): Add GIF_BACKGROUND.
21141 (enum gs_keyword_index): Add GS_BACKGROUND.
21142 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21143 Pre-calculate image background color where necessary.
21144 (x_create_x_image_and_pixmap, xbm_load, gs_load):
21145 Use display info's n_cbits entry for screen depth.
21146 (Fx_show_tip): Remove unused variables `buffer', `top',
21147 `left', `max_width' and `max_height'.
21148
21149 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
21150
21151 2001-11-18 Gerd Moellmann <gerd@gnu.org>
21152
21153 * puresize.h (BASE_PURESIZE): Increase to 750000.
21154
21155 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21156
21157 * frame.c (Fframe_live_p): Doc fix.
21158
21159 2001-11-18 Richard M. Stallman <rms@gnu.org>
21160
21161 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
21162 (message_dolog_marker3): New static variables hold three markers.
21163 (syms_of_xdisp): Initialize and staticpro them.
21164 (message_dolog): Use message_dolog_marker1..3 instead of
21165 allocating markers each time. Unchain them when done.
21166
21167 2001-11-17 Richard M. Stallman <rms@gnu.org>
21168
21169 * doc.c (Fsnarf_documentation): Doc fix.
21170
21171 2001-11-17 Andreas Schwab <schwab@suse.de>
21172
21173 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
21174
21175 2001-11-17 Richard M. Stallman <rms@gnu.org>
21176
21177 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
21178
21179 2001-11-17 Jason Rumney <jasonr@gnu.org>
21180
21181 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
21182
21183 2001-11-17 Gerd Moellmann <gerd@gnu.org>
21184
21185 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
21186 with invalid position.
21187
21188 2001-11-16 Richard M. Stallman <rms@gnu.org>
21189
21190 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
21191
21192 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
21193 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
21194 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
21195
21196 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
21197
21198 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
21199
21200 * fileio.c (build_annotations): Split off the tail.
21201 (build_annotations_2): New fun. Extracted from build_annotations.
21202 (Fwrite_region): Split the call to build_annotations into two
21203 calls to build_annotations and build_annotations_2.
21204
21205 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21206
21207 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
21208 clear_waiting_for_input with argument.
21209
21210 * xterm.h (x_update_cursor): Remove duplicated prototype.
21211
21212 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
21213
21214 * xterm.c (waiting_for_input): Remove unnecessary declaration.
21215
21216 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
21217
21218 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
21219
21220 * fileio.c (choose_write_coding_system): New fun, extracted
21221 from Fwrite_region.
21222 (Fwrite_region): Use it.
21223
21224 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
21225 (funcall_lambda, run_hook_with_args): Make static and add prototype.
21226 (ml_apply, find_handler_clause): Add prototype.
21227
21228 2001-11-16 Eli Zaretskii <eliz@gnu.org>
21229
21230 * config.in: Add #undef HAVE_COFF_H.
21231
21232 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
21233 Required for ISC 4.1.
21234
21235 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
21236
21237 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
21238 Andrew Wiseman <a.wiseman@btclick.com>.
21239
21240 2001-11-16 Kim F. Storm <storm@cua.dk>
21241
21242 The following changes are made to clean up the various internal
21243 references to the fringes to actually use the term `fringe' for
21244 them. Previously, they were called `flags areas', `bitmap areas',
21245 `left/right side of windows', or implicitly as `flags' or
21246 `bitmaps':
21247
21248 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
21249 Comments fixed. Use renamed symbols.
21250
21251 * dispnew.c: Comment fix. Use renamed symbols.
21252
21253 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
21254 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
21255 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
21256
21257 * msdos.c: Comment fix.
21258
21259 * w32fns.c: Use renamed symbols.
21260
21261 * w32term.c: Comment fixes. Use renamed symbols.
21262 (fringe_bitmap_type): Renamed from bitmap_type.
21263 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
21264 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
21265 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
21266
21267 * w32term.h: Comment fixes. Use renamed symbols.
21268 (fringes_extra): Renamed from flags_areas_extra.
21269 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
21270 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
21271 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
21272 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
21273 (FRAME_X_LEFT_FRINGE_WIDTH):
21274 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
21275 (FRAME_X_RIGHT_FRINGE_WIDTH):
21276 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
21277
21278 * widget.c: Use renamed symbols.
21279
21280 * window.c: Comment fixes. Use renamed symbols.
21281 (coordinates-in-window-p): Doc fix.
21282
21283 * xdisp.c: Comment fixes. Use renamed symbols.
21284
21285 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
21286
21287 * xfns.c: Use renamed symbols.
21288
21289 * xterm.c: Comment fixes. Use renamed symbols.
21290 (fringe_bitmap_type): Renamed from bitmap_type.
21291 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
21292 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
21293 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
21294
21295 * xterm.h: Comment fixes. Use renamed symbols.
21296 (fringes_extra): Renamed from flags_areas_extra.
21297 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
21298 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
21299 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
21300 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
21301 (FRAME_X_LEFT_FRINGE_WIDTH):
21302 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
21303 (FRAME_X_RIGHT_FRINGE_WIDTH):
21304 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
21305
21306 2001-11-15 Jason Rumney <jasonr@gnu.org>
21307
21308 * w32menu.c (add-menu-item): Make help_echo and radio buttons
21309 work for most menu items. From David Ponce
21310 <david.ponce@wanadoo.fr>.
21311
21312 2001-11-15 Gerd Moellmann <gerd@gnu.org>
21313
21314 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
21315 Some x_set_* function expect to be called even if old and new
21316 value are equal.
21317
21318 * xdisp.c (build_desired_tool_bar_string): Accept zero
21319 tool_bar_button_relief.
21320
21321 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
21322
21323 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
21324
21325 * xterm.c (x_draw_bar_cursor): If the background color of the
21326 glyph under the cursor equals the frame's cursor color, use
21327 the glyph's foreground color for drawing the bar cursor.
21328
21329 * dispnew.c (direct_output_forward_char): Fix character/byte
21330 position comparison.
21331
21332 2001-11-15 Miles Bader <miles@gnu.org>
21333
21334 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
21335 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
21336 Update arguments to find_field.
21337 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
21338 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
21339 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
21340 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
21341
21342 2001-11-14 Richard M. Stallman <rms@gnu.org>
21343
21344 * editfns.c (Fpropertize): Allow call with 1 arg.
21345
21346 * dispextern.h (image_background, image_background_transparent):
21347 Conditionalize on HAVE_X_WINDOWS.
21348
21349 2001-11-13 Richard M. Stallman <rms@gnu.org>
21350
21351 * print.c (Fprin1_to_string): Doc fix.
21352
21353 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
21354
21355 * floatfns.c (Fceiling, Ffloor): Doc fixes.
21356
21357 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
21358
21359 * fileio.c (Ffile_accessible_directory_p): Doc fix.
21360
21361 * eval.c (syms_of_eval): Doc fix.
21362
21363 * coding.c (syms_of_coding): Doc fix.
21364
21365 * doc.c (Fsnarf_documentation): Doc fix.
21366
21367 * dispnew.c (syms_of_display): Doc fix.
21368
21369 * category.c (Fget_unused_category): Doc fix.
21370
21371 * buffer.c (syms_of_buffer): Doc fixes.
21372
21373 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
21374
21375 * print.c (prin1, print): Doc fix.
21376
21377 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21378
21379 * fontset.h: Remove declarations of variables
21380 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
21381
21382 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
21383 `Vclip_large_size_font'.
21384
21385 2001-11-13 Jason Rumney <jasonr@gnu.org>
21386
21387 * w32fns.c: Doc fix.
21388
21389 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21390
21391 * xfaces.c (Fface_attributes_as_vector): Doc fix.
21392
21393 * fns.c: Doc fix.
21394
21395 * emacs.c: Doc fix.
21396
21397 * coding.c: Doc fix.
21398
21399 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
21400 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
21401 `new style' [w/`doc:' keyword].
21402
21403 2001-11-12 Richard M. Stallman <rms@gnu.org>
21404
21405 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
21406 LeaveNotify events. Only FocusIn and FocusOut do that now.
21407 (x_display_and_set_cursor): Do display hollow cursors in active
21408 minibuffer windows when they are not selected.
21409
21410 2001-11-12 Jason Rumney <jasonr@gnu.org>
21411
21412 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
21413 * w32term.c: Change doc-string comments to `new style'
21414 [w/`doc:' keyword]. Doc fixes.
21415
21416 * w32fns.c: Don't define max.
21417 (Fx_open_connection): Only execute once.
21418
21419 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21420
21421 * ccl.c: Change macros to use do-while block instead of if-else.
21422 Use braces to follow GNU Coding Standards.
21423
21424 2001-11-11 Richard M. Stallman <rms@gnu.org>
21425
21426 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
21427
21428 * lread.c (read_escape): Use end_of_file_error for reporting eof.
21429
21430 * insdel.c (replace_range): Use adjust_markers_for_replace
21431 instead of adjust_markers_for_delete and adjust_markers_for_insert.
21432
21433 * intervals.h (set_text_properties, set_text_properties_1): Declare.
21434
21435 * textprop.c (set_text_properties_1): New subroutine
21436 broken out of set_text_properties.
21437 (set_text_properties): Use set_text_properties_1.
21438
21439 * intervals.c (graft_intervals_into_buffer):
21440 Use set_text_properties_1 to clear out properties.
21441
21442 * search.c (Freplace_match): Use replace_range to insert
21443 and delete. Don't request property inheritance from
21444 surrounding text.
21445
21446 2001-11-10 Jason Rumney <jasonr@gnu.org>
21447
21448 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
21449 vertical fonts. Allow them if face name is explicitly specified.
21450 Do not give up if we find a font that cannot be converted to an xlfd.
21451
21452 2001-11-10 Gerd Moellmann <gerd@gnu.org>
21453
21454 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
21455 instead of malloc/free.
21456
21457 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21458
21459 * xfaces.c (merge_face_vectors): Use braces to follow GNU
21460 Coding Standards.
21461 (Finternal_set_lisp_face_attribute): Likewise.
21462
21463 * buffer.c (Fbury_buffer): Likewise.
21464
21465 * indent.c (current_column_1): Remove unused variable `prev_col'.
21466
21467 * coding.c (encode_coding): Use precomputed value of `src'.
21468 (encode_coding): Remove unused variable `src_end'.
21469 (code_convert_region): Remove unused variables `count'.
21470
21471 2001-11-07 Jason Rumney <jasonr@gnu.org>
21472
21473 * w32term.c (x_display_and_set_cursor): Do not move system caret
21474 if cursor_glyph is NULL.
21475
21476 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21477
21478 * keymap.c (access_keymap): Fix compilation error.
21479
21480 2001-11-07 Miles Bader <miles@gnu.org>
21481
21482 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
21483
21484 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21485
21486 * intervals.c (graft_intervals_into_buffer):
21487 Remove #ifdef'd-out code.
21488 (graft_intervals_into_buffer): Remove unused variable `middle'.
21489
21490 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
21491 code (eval-current-buffer).
21492 Change doc-string comments to `new style' [w/`doc:' keyword].
21493
21494 2001-11-06 Richard M. Stallman <rms@gnu.org>
21495
21496 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
21497
21498 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
21499
21500 * lread.c (read1): Fix behavior with nested backquoting.
21501
21502 * keyboard.c (make_lispy_event): Check integerness and fix
21503 Lisp_Object/int mixup.
21504
21505 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21506
21507 * fns.c (copy_hash_table): Remove unused variable `v'.
21508
21509 * fontset.c (fontset_font_pattern): Remove unused variable
21510 `family_registry'.
21511
21512 * indent.c (current_column_1): Remove unused variable `prev_col'.
21513
21514 2001-11-05 Richard M. Stallman <rms@gnu.org>
21515
21516 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
21517
21518 * buffer.c (Fkill_buffer): Don't delete auto save file
21519 if buffer is modified.
21520
21521 2001-11-05 Andrew Innes <andrewi@gnu.org>
21522
21523 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
21524 CHECK_NUMBER_CDR.
21525
21526 2001-11-05 Richard M. Stallman <rms@gnu.org>
21527
21528 * unexelf.c (unexec): Minor changes; clean up comments.
21529
21530 2001-11-05 Sam Steingold <sds@gnu.org>
21531
21532 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
21533
21534 2001-11-05 Andreas Schwab <schwab@suse.de>
21535
21536 * sound.c (sound_perror): Save errno from being clobbered.
21537
21538 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
21539
21540 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
21541 the program image directly.
21542
21543 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21544
21545 * buffer.h (Fbuffer_local_value): Add prototype.
21546
21547 2001-11-04 Richard M. Stallman <rms@gnu.org>
21548
21549 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
21550 and CHECK_BUFFER.
21551
21552 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
21553 (record_char): Likewise.
21554
21555 * keyboard.c (make_lispy_event): Don't insist a drag event must
21556 move to a different buffer position. Instead, check for moving at
21557 least double_click_fuzz.
21558
21559 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
21560
21561 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
21562
21563 * indent.c (current_column_1, Fmove_to_column): Separate the code
21564 for display-table glyphs from the code for buffer text, to fix
21565 bugs in the former.
21566
21567 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
21568
21569 * buffer.c (Fbuffer_local_value): New function.
21570 (syms_of_buffer): Defsubr it.
21571
21572 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
21573 value of `cursor-in-non-selected-windows'.
21574
21575 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
21576 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
21577 (syms_of_xdisp): Initialize it.
21578
21579 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21580
21581 * xfns.c (Fx_create_frame): Doc fix.
21582
21583 * coding.c: Change doc-string comments to `new style' [w/`doc:'
21584 keyword].
21585
21586 * eval.c (top_level_value, top_level_set): Remove commented and
21587 #ifdef'd-out code.
21588 (Fdefvar): Fix usage in doc-string.
21589
21590 2001-11-03 Richard M. Stallman <rms@gnu.org>
21591
21592 * xfns.c: Include unistd.h, if it exists.
21593
21594 * editfns.c: Move the include of ctype.h after unistd.h.
21595
21596 * gmalloc.c: Test BROKEN_PROTOTYPES.
21597
21598 2001-11-03 Ken Raeburn <raeburn@gnu.org>
21599
21600 * lisp.h (CHECK_STRING_CAR): New macro.
21601 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
21602 treating XCAR and XCDR as lvalues.
21603 (openp): Use CHECK_STRING_CAR.
21604 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
21605
21606 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
21607
21608 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
21609 (SIGMASKTYPE): Define.
21610
21611 * syssignal.h (sigunblock): Don't define if already defined.
21612
21613 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21614
21615 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
21616 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
21617 Fix typos in comments.
21618
21619 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
21620 and #ifdef'd-out code.
21621 Fix and reindent comments.
21622
21623 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
21624
21625 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
21626 argument `i' in macros.
21627
21628 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
21629 `i' in macros.
21630
21631 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
21632 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
21633 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
21634 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
21635 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
21636 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
21637 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
21638 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
21639 in macros.
21640
21641 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
21642 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
21643 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
21644 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
21645 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
21646 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
21647 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
21648 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
21649 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
21650 (remove unused second argument).
21651
21652 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
21653
21654 * syntax.c (describe_syntax): New wrapper.
21655 (Finternal_describe_syntax_value): Rename from describe_syntax.
21656 Don't insert space at front and \n at the end.
21657 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
21658
21659 * regex.c (re_wctype): Try to fix some warnings.
21660 (regcomp, regexec): Don't forget the __restrict.
21661
21662 2001-11-02 Richard M. Stallman <rms@gnu.org>
21663
21664 * textprop.c (Fget_char_property): Doc fix.
21665
21666 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21667
21668 * process.c (Fstart_process): Add usage to doc-string.
21669
21670 * data.c (Fsetq_default): Ditto.
21671
21672 * callint.c (Finteractive): Ditto.
21673
21674 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
21675
21676 * macros.c: Don't include keymap.h any more.
21677
21678 2001-11-01 Richard M. Stallman <rms@gnu.org>
21679
21680 * data.c (Fmake_local_variable): Doc fix.
21681
21682 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
21683 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
21684
21685 * keymap.c (Fdescribe_buffer_bindings): Print character property
21686 bindings along with or instead of the buffer local map.
21687 Make the overriding maps override what they should.
21688
21689 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21690
21691 * window.c (grow_mini_window): Fix typo in comment.
21692
21693 2001-11-01 Gerd Moellmann <gerd@gnu.org>
21694
21695 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
21696 (XTset_vertical_scroll_bar): Likewise.
21697
21698 * xfns.c (x_build_heuristic_mask): Use four_corners_best
21699 instead of IMAGE_BACKGROUND.
21700
21701 * xfns.c (four_corners_best): Reindent.
21702
21703 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
21704 Handle :box so that it is possible to specify sexprs.
21705
21706 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
21707
21708 * s/hpux11.h: New file.
21709
21710 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21711
21712 * emacs.c (USAGE1): Show command line option --no-window-system
21713 instead of --no-windows in usage.
21714 (standard_args): Rename --no-windows to --no-window-system.
21715 (bug_reporting_address): Follow Emacs coding conventions.
21716
21717 * eval.c (Fcommandp): Doc fix.
21718 Change doc-string comments to `new style' [w/`doc:' keyword].
21719
21720 * frame.c (Fframe_live_p): Doc fix.
21721
21722 * buffer.c (selective-display-ellipses): Doc fix.
21723
21724 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21725
21726 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
21727
21728 * xfaces.c (realize_x_face): If C is not a single-byte character,
21729 set the face's colors_copied_bitwise_p instead of the defaulted_p
21730 members which have a different meaning.
21731 (free_face_colors): Do nothing for a face whose colors have been
21732 copied bitwise.
21733
21734 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
21735
21736 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21737
21738 * marker.c, mocklisp.c: Change doc-string comments to `new style'
21739 [w/`doc:' keyword].
21740
21741 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21742
21743 * fns.c (require_unwind): Return Lisp_Object.
21744
21745 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21746
21747 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
21748 (last-input-char): Revert doc-string to be the same as the
21749 doc-string of `last-input-event'.
21750
21751 * xdisp.c: Fix typos in comments.
21752
21753 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21754
21755 * window.c (grow_mini_window): Handle case that the root
21756 window is already smaller than the nominal mininum height.
21757
21758 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
21759
21760 * emacs.c (main): Don't call keys_of_macros any more.
21761
21762 * lisp.h (keys_of_macros): Remove.
21763
21764 * macros.c (keys_of_macros): Remove.
21765
21766 * xfaces.c (Fface_attribute_relative_p): Declare args.
21767
21768 2001-10-30 Jason Rumney <jasonr@gnu.org>
21769
21770 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
21771 (enum_font_cb2): Ignore fonts with vertical orientation.
21772
21773 2001-10-30 Richard M. Stallman <rms@gnu.org>
21774
21775 * keyboard.c (Finput_pending_p): Doc fix.
21776
21777 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21778
21779 * xterm.c (x_after_update_window_line): Don't run the code
21780 clearing in borders for rows whose visible height is 0.
21781
21782 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21783 resized_p flag is set. If not set, use the much less flickering
21784 method previously used.
21785
21786 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21787
21788 * frame.h (struct frame) <resized_p>: New member.
21789
21790 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21791 as large as the number of bytes to convert.
21792
21793 * lread.c (to_multibyte): New function.
21794 (read1): Use it.
21795
21796 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21797
21798 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21799
21800 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21801
21802 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21803 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21804 if the row's fill_line_p is set and drawing the last glyph with
21805 DRAW_IMAGE_{RAISED,SUNKEN}.
21806
21807 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21808
21809 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21810
21811 * xmenu.c: Include coding.h and charset.h.
21812 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21813 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21814 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21815 Explicitly set wv->help. Use `TRUE' rather than `True'.
21816 (menu_help_callback): Use empty_string.
21817
21818 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21819 (Fx_popup_dialog): Explicitly init f.
21820 (w32_menu_display_help): Use empty_string.
21821
21822 2001-10-29 Richard M. Stallman <rms@gnu.org>
21823
21824 * fns.c (Frequire): Detect recursive try to require the same
21825 feature 3 or more levels deep, and get error.
21826 (require_unwind): New subroutine.
21827 (require_nesting_list): New variable.
21828 (syms_of_fns): Init and staticpro it.
21829
21830 * print.c (print_object): Clarify indication of insertion type.
21831
21832 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21833
21834 * coding.c (syms_of_coding): Document that locale-coding-system is
21835 used for decoding input on X.
21836
21837 * window.c (Fscroll_left, Fscroll_right): Doc fix.
21838
21839 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21840
21841 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
21842 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
21843
21844 2001-10-29 Gerd Moellmann <gerd@gnu.org>
21845
21846 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
21847 use NO_CURSOR if cursor_in_non_selected_windows is false.
21848
21849 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
21850 the slant attribute if FRAME is t.
21851
21852 * xfns.c (x_set_internal_border_width): Set frame garbaged
21853 when X window doesn't exist yet.
21854
21855 * xterm.c (x_after_update_window_line): Clear internal border
21856 in different circumstances.
21857
21858 * xterm.c (XTread_socket) <KeyPress>: Don't use
21859 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
21860 <handa@etl.go.jp>.
21861
21862 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
21863
21864 * m/ibms390.h: New file. From Adam Thornton
21865 <athornton@sinenomine.net>.
21866
21867 2001-10-28 Gerd Moellmann <gerd@gnu.org>
21868
21869 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
21870
21871 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
21872 a loop counter.
21873
21874 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21875
21876 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
21877
21878 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
21879 keyword].
21880 Fix typos in comments.
21881
21882 * emacs.c (bug_reporting_address): New function.
21883 Use it when displaying usage message.
21884
21885 * minibuf.c (read_minibuf): Remove unused external declaration of
21886 variable `Qread_only'.
21887
21888 * keymap.c (access_keymap): Remove unused variable `charset'.
21889
21890 2001-10-28 Miles Bader <miles@gnu.org>
21891
21892 * xfaces.c (merge_face_heights): Handle TO being relative as well.
21893 Remove #ifdef'd-out code.
21894 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
21895 (syms_of_xfaces): Initialize them.
21896
21897 2001-10-27 Jason Rumney <jasonr@gnu.org>
21898
21899 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
21900 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
21901 position using the system caret.
21902
21903 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
21904 (w32_system_caret_height, w32_system_caret_x)
21905 (w32_system_caret_y): New variables for tracking system caret.
21906 (w32_initialize): Initialize them.
21907 (x_display_and_set_cursor): Make system caret follow the active cursor.
21908
21909 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
21910 New messages types.
21911
21912 * w32term.c (note_mouse_highlight): Clear old help_echo.
21913
21914 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21915
21916 * xterm.c: Fix typo in a comment.
21917
21918 * emacs.c: Fix typos in comments.
21919 Remove unnecessary spaces.
21920 Change doc-string comments to `new style' [w/`doc:' keyword].
21921 (USAGE2): Fix typos in usage string.
21922
21923 * xterm.c: Fix typo in a comment.
21924
21925 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
21926 emacs.c.
21927
21928 2001-10-27 Gerd Moellmann <gerd@gnu.org>
21929
21930 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
21931 instead of 1/2 line_height in the heuristic for skipping
21932 farther backward when target_y was not reached.
21933
21934 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
21935 Display errno only if non-zero.
21936 (sound_warning): New function.
21937 (vox_configure): Don't treat failing to set sample rate as error.
21938 (various places): Improve error messages.
21939
21940 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
21941
21942 * fileio.c (Faccess_file): Run the argument filename through
21943 Fexpand_file_name, before using it.
21944
21945 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
21946 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
21947
21948 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21949
21950 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
21951
21952 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21953 Fix clearing in the case of scroll bars on the right.
21954
21955 2001-10-26 Juanma Barranquero <lektu@terra.es>
21956
21957 * w32gui.h (XImage): Add a dummy typedef.
21958
21959 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21960
21961 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
21962
21963 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
21964
21965 * frame.c (Fframe_parameter): Fix last change.
21966
21967 * fileio.c: Revert last change (which removed old commented-out
21968 version of expand-file-name). Add a comment that explains why
21969 this old version should not be removed.
21970
21971 2001-10-25 Gerd Moellmann <gerd@gnu.org>
21972
21973 * frame.c (Fframe_parameter): Fix a bug whereby some
21974 ``artificial'' frame parameters, like `minibuffer' were not
21975 obtained by calling Fframe_parameters.
21976
21977 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
21978 cursor differently.
21979
21980 * xdisp.c (move_it_vertically_backward): Compute line height
21981 differently. Add heuristic to try to be more compatible to 20.x.
21982
21983 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
21984
21985 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
21986
21987 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
21988 boolean.
21989
21990 2001-10-25 Miles Bader <miles@gnu.org>
21991
21992 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
21993 BG is a pointer to a structure, not a structure.
21994 (gif_format, png_format): Add missing commas.
21995
21996 2001-10-24 Richard M. Stallman <rms@gnu.org>
21997
21998 * xfaces.c (Fface_attributes_as_vector): New function.
21999 (syms_of_xfaces): Defsubr it.
22000
22001 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22002
22003 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
22004 variable `area'.
22005
22006 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22007
22008 * search.c (scan_newline): Remove unused variable `selective_display'.
22009
22010 2001-10-25 Miles Bader <miles@gnu.org>
22011
22012 * dispextern.h (struct image): Add `background',
22013 `background_valid', and `background_transparent' fields.
22014 (image_background, image_background_transparent): New declarations.
22015 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
22016 * xfns.c (image_background, image_background_transparent)
22017 (four_corners_best): New functions.
22018 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
22019 (gs_format): Add `:background' entry.
22020 (lookup_image): Set IMG's background color if specified.
22021 (pbm_load, xbm_load_image, png_load): Set IMG's background field
22022 when appropriate.
22023 (x_clear_image_1): Reset `background_valid' and
22024 `background_transparent_valid' fields.
22025 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
22026 calculating it here. Set IMG's background_transparent field.
22027 (enum xpm_keyword_index): Add XPM_BACKGROUND.
22028 (enum png_keyword_index): Add PNG_BACKGROUND.
22029 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
22030 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
22031 (enum gif_keyword_index): Add GIF_BACKGROUND.
22032 (enum gs_keyword_index): Add GS_BACKGROUND.
22033 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
22034 Pre-calculate image background color where necessary.
22035 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
22036 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
22037 color to use for image glyph reliefs.
22038
22039 2001-10-24 Gerd Moellmann <gerd@gnu.org>
22040
22041 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
22042 in full-width rows.
22043
22044 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
22045 Fix clearing of area not covered by scroll bar.
22046
22047 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22048
22049 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
22050 and `real_start'.
22051 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
22052 (glyph_rect): Remove unused variable `area'.
22053
22054 2001-10-24 Gerd Moellmann <gerd@gnu.org>
22055
22056 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
22057
22058 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
22059 (row_containing_pos): Take additional argument DY.
22060 Treat rows ending in middle of char differently.
22061 (display_line): Handle tabs on window systems differently.
22062
22063 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
22064 with additional argument.
22065
22066 * dispextern.h (row_containing_pos): Adjust prototype.
22067
22068 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
22069 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
22070 (try_window_id, try_window_reusing_current_matrix)
22071 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
22072 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
22073
22074 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22075
22076 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
22077 gnuemacs).
22078 (HAVE_BOXES): Fix typo in comment.
22079 (push_menu_pane): Fix typo in comment.
22080
22081 * xdisp.c (display_prop_string_p): Remove unused local declaration
22082 of `Qwhen'.
22083 (single_display_prop_string_p): Remove unused local declarations
22084 of `Qwhen' and `Qmargin'.
22085 (string_buffer_position): Remove unused variable `around'.
22086 (store_frame_title): Remove unused variable `width'.
22087
22088 * window.c: Don't define max.
22089 (coordinates_in_window): Remove unused variable `uy'.
22090
22091 * widget.c: Don't define max.
22092
22093 * process.c: Don't define max.
22094 (create_process): Remove unused variable `buffer'.
22095
22096 2001-10-23 Gerd Moellmann <gerd@gnu.org>
22097
22098 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
22099
22100 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
22101
22102 * xfaces.c (Finternal_set_lisp_face_attribute)
22103 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
22104 frame is on a windowed display.
22105
22106 2001-10-23 Gerd Moellmann <gerd@gnu.org>
22107
22108 * dispnew.c (sync_window_with_frame_matrix_rows):
22109 Fix handling of windows which aren't full-width, fix handling
22110 of marginal areas.
22111
22112 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
22113
22114 2001-10-23 Andreas Schwab <schwab@suse.de>
22115
22116 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
22117 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
22118
22119 2001-10-23 Gerd Moellmann <gerd@gnu.org>
22120
22121 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
22122 REAL_END. Notice if cursor gets overwritten.
22123 (notice_overwritten_cursor): Take X positions as parameters.
22124 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
22125 around call to x_draw_glyphs.
22126
22127 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22128
22129 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
22130 instead of C) and usage.
22131
22132 * editfns.c (char-to-string): Fix argument names (use CHAR instead
22133 of C) and usage.
22134
22135 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
22136 `left', `max_width' and `max_height'.
22137
22138 2001-10-23 Gerd Moellmann <gerd@gnu.org>
22139
22140 * xdisp.c (display_line): For a tab continued to the next line,
22141 set row's ends_in_middle_of_char_p.
22142
22143 2001-10-22 Gerd Moellmann <gerd@gnu.org>
22144
22145 * xdisp.c (display_line): Fix computation of continuation lines
22146 width for TABs.
22147
22148 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22149
22150 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
22151 `Qlaplace'.
22152
22153 * fileio.c: Remove unused code.
22154
22155 2001-10-22 Miles Bader <miles@gnu.org>
22156
22157 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
22158 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
22159 Remove `DOC_STRINGS_IN_COMMENTS' cases.
22160
22161 2001-10-21 Jason Rumney <jasonr@gnu.org>
22162
22163 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
22164
22165 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
22166
22167 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
22168 (Finsert_string): Avoid the multi-line string literals warning.
22169
22170 2001-10-22 Miles Bader <miles@gnu.org>
22171
22172 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
22173 (Fdocumentation): Don't use it.
22174 (syms_of_doc): Don't initialize it.
22175
22176 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
22177 * print.c (Fwith_output_to_temp_buffer): Likewise.
22178 * window.c (Fsave_window_excursion): Likewise.
22179 * editfns.c (Fsave_excursion, Fsave_current_buffer)
22180 (Fsave_restriction): Likewise.
22181 * eval.c (Frun_hooks, Frun_hook_with_args)
22182 (Frun_hook_with_args_until_failure)
22183 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
22184 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
22185 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
22186 (Funwind_protect, Fcondition_case): Likewise.
22187 * coding.c (Ffind_operation_coding_system): Likewise.
22188 * keyboard.c (Ftrack_mouse): Likewise.
22189
22190 2001-10-21 Miles Bader <miles@gnu.org>
22191
22192 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
22193 (Fmake_hash_table): Add usage: string to doc string.
22194 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
22195 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
22196 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
22197 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
22198 (Fml_prefix_argument_loop): Likewise.
22199
22200 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22201
22202 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
22203
22204 * sysdep.c (init_sys_modes): Change doc-string comments to `new
22205 style' [w/`doc:' keyword].
22206
22207 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
22208 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
22209 comments to `new style' [w/`doc:' keyword].
22210
22211 2001-10-21 Jason Rumney <jasonr@gnu.org>
22212
22213 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
22214
22215 * w32term.c (remember_mouse_glyph): New function.
22216 (w32_mouse_position): Use it.
22217 (note_mouse_movement): If the mouse moved off the glyph, remember
22218 its new position.
22219
22220 * w32term.h (struct w32_output): Correct spelling of x_compatible.
22221 (w32_display_info): Add mouse_face_overlay.
22222
22223 * w32term.c (notice_overwritten_cursor): Renamed from
22224 note_overwritten_text_cursor. Rewritten to take glyph widths into
22225 account.
22226 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
22227 (fast_find_string_pos): New function.
22228 (fast_find_position): Return the correct vpos. Add parameter
22229 STOP. In the final row, stop before glyphs having STOP as object.
22230 Don't consider glyphs that are not from a buffer.
22231 (fast_find_position) [0]: Add a presumably more correct version
22232 for after 21.1.
22233 (expose_window_tree, expose_frame): Don't compute intersections here.
22234 (expose_window): Do it here instead.
22235 (expose_window_tree, expose_window, expose_line): Return 1 when
22236 overwriting mouse-face.
22237 (expose_window): If W is the window currently being updated, mark
22238 the frame garbaged.
22239 (expose_frame): If mouse-face was overwritten, redo it.
22240 (x_use_underline_position_properties): New variable.
22241 (syms_of_xterm): DEFVAR_BOOL it.
22242 (x_draw_glyph_string): Add comment to use it in future.
22243 (x_draw_glyph_string): Restore clipping after drawing box.
22244 Fix a computation of the underline position.
22245 (w32_get_glyph_string_clip_rect): Minor cleanup.
22246 (x_fill_stretch_glyph_string): Remove an assertion.
22247 (x_produce_glyphs): Don't convert multibyte characters
22248 to unibyte characters in unibyte buffers.
22249 (cursor_in_mouse_face_p): New function.
22250 (x_draw_stretch_glyph_string): Use it to choose a different GC
22251 when drawing a cursor within highlighted text. Don't draw
22252 background again if it has already been drawn.
22253 (x_draw_glyph_string_box): Don't draw a full-width
22254 box just because the glyph row's full_width_p flag is set.
22255 (x_draw_glyphs): Fix computation of rightmost x for
22256 full-width rows.
22257 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
22258 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
22259 change bottom shadow accordingly. Some cleanup.
22260 (x_update_window_end): Handle overwritten mouse face
22261 also for tool bar windows.
22262 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
22263 DRAW is DRAW_IMAGE_RAISED.
22264 (clear_mouse_face): Return 1 if text with mouse face was
22265 actually redrawn. Make the function static.
22266 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
22267 optimize away highlighting if we pass over that same overlay again.
22268 (note_mouse_highlight): Call mouse_face_overlay_overlaps
22269 to detect a case where we have to highlight a different region
22270 despite not having left the currently highlighted region.
22271 Set mouse_face_overlay in the x_display_info. Avoid changing the
22272 mouse pointer shape when show_mouse_face has already done it, or
22273 there is no need. Handle mouse-face and help-echo in strings.
22274 (glyph_rect): New function.
22275 (w32_mouse_position): Use it to raise the threshold for mouse
22276 movement event generation.
22277 (w32_initialize_display_info): Initialize the x_display_info's
22278 mouse_face_overlay.
22279 (w32_set_vertical_scroll_bar): Don't clear a zero height
22280 or width area.
22281 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
22282 a widget to zero height.
22283
22284 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
22285 Protect unibyte strings created by replacing their multibyte
22286 equivalents in menu_items.
22287 (w32_menu_show): Don't overwrite an item's name with its key
22288 description in case the description is a multibyte string.
22289 (single_submenu): Some cleanup.
22290
22291 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
22292 (postprocess_image): New function.
22293 (lookup_image): Call it for all image types except PostScript.
22294 (x_kill_gs_process): Call postprocess_image.
22295 (tiff_error_handler, tiff_warning_handler): New functions.
22296 (tiff_load): Install them as handlers.
22297 (x_kill_gs_process): Recognize if someone has cleared the image
22298 cache under us.
22299 (valid_image_p): Protect better against invalid image
22300 specifications. Previous code could signal an error.
22301 (Fx_hide_tip, Fshow_tip): Doc fix.
22302 (Fv_max_tooltip_size): New variable.
22303 (syns_of_xfns): DEFVAR_LISP it.
22304 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
22305 window buffer to *tip* right after creating the frame. Set frame's
22306 window_width. Use a maximum tooltip size specified by
22307 Vx_max_tooltip_size, if that has valid contents.
22308 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
22309 Make sure the tooltip is completely visible.
22310 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
22311 (Fx_create_frame): Adjust the frame's height for presence
22312 of the tool bar before calling x_figure_window_size.
22313 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
22314 when the window gets smaller.
22315 (x_set_foreground_color): Set frame's cursor_pixel.
22316 (x_set_foreground_color, x_set_background_color): Cleaned up.
22317 (x_set_font): Handle case of x_new_fontset returning the same name
22318 as before, although there was a change in fontsets.
22319
22320 2001-10-21 Miles Bader <miles@gnu.org>
22321
22322 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
22323 (Flogxor): Add usage: string to doc string.
22324 * charset.c (Fstring): Likewise.
22325 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
22326 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
22327
22328 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22329
22330 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
22331
22332 * alloc.c: Reindent DEFUNs with doc: keywords.
22333
22334 * abbrev.c (Finsert_abbrev_table_description): Reindent.
22335
22336 * frame.c: Change doc-string comments to `new style' [w/`doc:'
22337 keyword].
22338
22339 See ChangeLog.9 for earlier changes.
22340
22341 ;; Local Variables:
22342 ;; coding: iso-2022-7bit
22343 ;; End:
22344
22345 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
22346 Copying and distribution of this file, with or without modification,
22347 are permitted provided the copyright notice and this notice are preserved.
22348
22349 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4