*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
1 2006-02-13 Richard M. Stallman <rms@gnu.org>
2
3 * .gdbinit (xwindow): Update the code to show the window box.
4
5 2006-02-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6
7 * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame).
8
9 2006-02-12 Richard M. Stallman <rms@gnu.org>
10
11 * cmds.c (internal_self_insert): Handle weird auto-fill-function.
12
13 2006-02-11 Eli Zaretskii <eliz@gnu.org>
14
15 * keyboard.c (Venable_disabled_menus_and_buttons): New variable.
16 (syms_of_keyboard): DEVFAR_LISP and initialize it.
17 (parse_tool_bar_item, parse_menu_item): If that variable is
18 non-nil, don't disable menu items and tool-bar buttons.
19
20 2006-02-11 Juanma Barranquero <lekktu@gmail.com>
21
22 * doc.c (Fsubstitute_command_keys): Doc fix.
23
24 2006-02-10 Thien-Thi Nguyen <ttn@gnu.org>
25
26 * data.c (Findirect_function): Rewrite docstring.
27 Fix omission bug: Declare new arg NOERROR.
28
29 2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
30
31 * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor
32 if window_desc is not set yet.
33 (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07
34 and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame
35 parameter `visibility' is `icon'.
36 (Fx_create_frame, x_create_tip_frame): Use "fontset-standard"
37 instead of "fontset-mac".
38 (Fx_focus_frame): New defun.
39 (syms_of_macfns): Defsubr it.
40
41 * macterm.c (mac_define_frame_cursor): Don't change pointer shape
42 for unfocused frame.
43 (x_raise_frame): Call BringToFront instead of SelectWindow.
44 (x_lower_frame): Use NULL instead of nil.
45 (x_make_frame_visible): Don't call SelectWindow.
46 (XTread_socket): Increment handling_signal at the start, decrement
47 it at the end.
48 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use
49 CFPreferencesGetAppIntegerValue instead of Fmac_get_preference.
50
51 2006-02-10 Kim F. Storm <storm@cua.dk>
52
53 * data.c (Findirect_function): Add NOERROR arg. All callers changed
54 to pass Qnil for NOERROR.
55
56 * keymap.c (current_minor_maps_error): Remove.
57 (current_minor_maps): Pass Qt for NOERROR to Findirect_function
58 instead of using internal_condition_case_1+current_minor_maps_error.
59
60 2006-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
61
62 * xterm.c (handle_one_xevent): Must note mouse movement even for nil
63 frames for GTK, in that case it is the tool bar. This is so that
64 highlighted text get reset properly.
65
66 2006-02-09 Juanma Barranquero <lekktu@gmail.com>
67
68 * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes.
69
70 2006-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
71
72 * window.c (adjust_window_trailing_edge): Check that shrinking
73 does not set a window to size zero or less.
74
75 2006-02-08 Miles Bader <miles@gnu.org>
76
77 * editfns.c (Fconstrain_to_field): Use Fget_char_property instead
78 of Fget_text_property (other field functions work with overlays as
79 well as text-properties).
80
81 2006-02-07 Kenichi Handa <handa@m17n.org>
82
83 * dispextern.h (unibyte_display_via_language_environment): Extern it.
84
85 * xterm.h (unibyte_display_via_language_environment):
86 * w32term.h (unibyte_display_via_language_environment):
87 * macterm.h (unibyte_display_via_language_environment): Delete extern.
88
89 2006-02-07 Kenichi Handa <handa@m17n.org>
90
91 * term.c (append_glyph): Refer to it->char_to_display instead of it->c.
92 (produce_glyphs): Set the character to print in
93 it->char_to_display. Handle unibyte-display-via-language-environment.
94 (produce_stretch_glyph): Set character to print in it->char_to_display.
95
96 2006-02-06 Kenichi Handa <handa@m17n.org>
97
98 * lread.c (openp): Initialize encoded_fn before GCPRO it.
99
100 2006-02-05 Ken Raeburn <raeburn@raeburn.org>
101
102 * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup.
103
104 * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]:
105 Cast bitfield value to EMACS_INT, to suppress gcc warning.
106
107 * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before
108 defining.
109
110 2006-02-03 Kim F. Storm <storm@cua.dk>
111
112 * xdisp.c: Cache last merged escape glyph face.
113 (last_escape_glyph_frame, last_escape_glyph_face_id)
114 (last_escape_glyph_merged_face_id): New variables.
115 (get_next_display_element): Use/update them.
116 (redisplay_internal): Reset them before redisplay.
117
118 * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix.
119 Only recheck faces after displaying ellipsis.
120
121 2006-02-02 Kenichi Handa <handa@m17n.org>
122
123 * coding.c (decode_composition_emacs_mule): Fix handling of
124 incorrect format data.
125
126 2006-01-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
127
128 * gtkutil.c (update_frame_tool_bar): Use new tool bar functions
129 (gtk_toolbar_insert) so we can have tool bars of different sizes.
130
131 2006-01-30 Luc Teirlinck <teirllm@auburn.edu>
132
133 * data.c (Flistp): Doc fix.
134
135 2006-01-30 Juanma Barranquero <lekktu@gmail.com>
136
137 * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll):
138 Fix typos in docstrings.
139
140 2006-01-28 Luc Teirlinck <teirllm@auburn.edu>
141
142 * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings.
143
144 2006-01-27 Chong Yidong <cyd@stupidchicken.com>
145
146 * alloc.c (make_interval, allocate_string)
147 (allocate_string_data, make_float, Fcons, allocate_vectorlike)
148 (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing
149 global variables.
150
151 2006-01-27 Eli Zaretskii <eliz@gnu.org>
152
153 * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use
154 the MSDOS definition.
155
156 2006-01-26 Richard M. Stallman <rms@gnu.org>
157
158 * alloc.c (check_pure_size): Make overflow message an "error message".
159
160 * keymap.c (Fmap_keymap): Doc fix.
161
162 * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist
163 unless they were cleared out.
164
165 * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there.
166
167 2006-01-26 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
168
169 * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
170 (find_field): Set before_field to after_field when pos is at BEGV.
171 (Fline_beginning_position, Fline_end_position): Clarify
172 confusing doc string.
173
174 * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
175 string.
176
177 2006-01-26 Kenichi Handa <handa@m17n.org>
178
179 * callproc.c (Fcall_process): GCPRO error_file. Encode infile,
180 current_dir, and error_file. On reporting an error, decode them
181 back.
182
183 2006-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
184
185 * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well.
186 (re_match_2_internal) <on_failure_jump, on_failure_jump_smart>:
187 Don't check for quit, since any loop will go through fail or jump.
188
189 2006-01-24 Chong Yidong <cyd@stupidchicken.com>
190
191 * alloc.c (allocate_string_data): Update next_free immediately, to
192 reduce risk of memory clobberage.
193
194 2006-01-24 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
195
196 * xdisp.c (handle_invisible_prop): Set it->position to fix cursor
197 display when point moves across an ellipsis. If there are
198 adjacent invisible texts, don't lose the second one's ellipsis.
199 (x_produce_glyphs): Doc fix.
200
201 2006-01-23 Stefan Monnier <monnier@iro.umontreal.ca>
202
203 * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup.
204
205 2006-01-23 Kim F. Storm <storm@cua.dk>
206
207 * xdisp.c (handle_single_display_spec): Fix handling of space
208 property on char from string: set *position rather than
209 it->current.pos.
210 (produce_stretch_glyph): Reduce width of stretch glyphs so they
211 don't get wider than the window (unless truncate-lines is on).
212
213 2006-01-22 Stefan Monnier <monnier@iro.umontreal.ca>
214
215 * xterm.c: Avoid allocating Lisp data from a signal handler.
216 (x_error_message): New var to replace x_error_message_string.
217 (x_error_catcher, x_catch_errors, x_catch_errors_unwind)
218 (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler)
219 (syms_of_xterm): Use it instead of x_error_message_string.
220
221 * alloc.c (lisp_align_free): Add an assertion.
222 (make_interval, allocate_string, make_float, Fcons, Fmake_symbol)
223 (allocate_misc): If ENABLE_CHECKING is on, check we're not called from
224 a signal handler.
225
226 2006-01-21 Luc Teirlinck <teirllm@auburn.edu>
227
228 * dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix.
229
230 2006-01-21 Romain Francoise <romain@orebokech.com>
231
232 * xdisp.c (get_window_cursor_type): Fix last change.
233 Update copyright year.
234
235 2006-01-20 Eli Zaretskii <eliz@gnu.org>
236
237 * lread.c (Fload): Don't leak the file descriptor returned by
238 openp if we are going to signal an error.
239
240 * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it
241 directly to _close.
242 (sys_dup): Protect against new_fd larger than fd_info[] can handle.
243 (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly
244 to _read.
245 (sys_write): If FD is outside [0..MAXDESC) limits, pass it
246 directly to _write.
247
248 * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer
249 if it is NULL.
250
251 2006-01-20 Kenichi Handa <handa@m17n.org>
252
253 * puresize.h (BASE_PURESIZE): Increment to 1190000.
254
255 2006-01-19 Chong Yidong <cyd@stupidchicken.com>
256
257 * xdisp.c (get_window_cursor_type): Use cursor type specified by
258 the selected buffer for the echo area too.
259
260 2006-01-19 Richard M. Stallman <rms@gnu.org>
261
262 * keymap.c (Fmap_keymap): Doc fix.
263
264 * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions.
265
266 * keyboard.c (echo_char): Don't omit the space between first two
267 echoed chars.
268
269 * minibuf.c (read_minibuf): Fix previous change.
270
271 2006-01-19 Kenichi Handa <handa@m17n.org>
272
273 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
274
275 2006-01-17 Richard M. Stallman <rms@gnu.org>
276
277 * frame.c (x_frame_get_and_record_arg): Don't record Qunbound
278 value in f->param_alist.
279
280 2006-01-15 Andreas Schwab <schwab@suse.de>
281
282 * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP.
283
284 2006-01-13 Richard M. Stallman <rms@gnu.org>
285
286 * Makefile.in: Define new macro WINDOW_SUPPORT.
287 (lisp): Use it.
288 (SOME_MACHINE_LISP): Add conditionally loaded files.
289
290 2006-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
291
292 * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
293 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering.
294 (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in
295 decomposed form.
296
297 * process.c [HAVE_INTTYPES_H]: Include inttypes.h.
298 (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
299 (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
300 macro. Also try member ifr_addr when getting netmask.
301
302 2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
303
304 * fileio.c (Fexpand_file_name): Remove redundant tests.
305 Fix elimination of // so that it doesn't prevent elimination of an
306 immediately following /. or /..
307
308 2006-01-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
309
310 * gtkutil.c (xg_toggle_notify_cb): New function.
311 (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to
312 xg_toggle_notify_cb.
313 (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when
314 parameter value changes so the toggle button gets updated.
315
316 2006-01-06 Nick Roberts <nickrob@snap.net.nz>
317
318 * .gdbinit: Fix typo.
319
320 2006-01-05 Eli Zaretskii <eliz@gnu.org>
321
322 * .gdbinit: Fix last change.
323
324 2006-01-05 Kim F. Storm <storm@cua.dk>
325
326 * process.c (Fmake_network_process): Use AF_INET instead of
327 AF_UNSPEC when AF_INET6 is not defined.
328
329 2006-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
330
331 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc):
332 Don't check that the other type is known file-related one.
333
334 * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor,
335 gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac
336 OS X 10.4 and later.
337
338 2006-01-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
339
340 * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file,
341 let GTK do all image processing. Importing Emacs own pixmaps to GTK
342 looks bad for inactive tool bar items with some Gnome themes.
343
344 2006-01-04 Eli Zaretskii <eliz@gnu.org>
345
346 * .gdbinit: Avoid a warning message when x_error_quitter is not
347 compiled in.
348
349 * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support
350 for w32.
351
352 2006-01-04 Kim F. Storm <storm@cua.dk>
353
354 * process.c: Add IPv6 support.
355 (Qipv4, Qipv6): New vars.
356 (syms_of_process): Intern and staticpro them.
357 (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
358 with or without port number. Handle 4 element vector as IPv4 address
359 without port number.
360 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
361 (conv_lisp_to_sockaddr): Handle IPv6 addresses.
362 (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
363 request that address family only. :family nil or omitted means to
364 determine address family from the specified :host and :service.
365 (ifflag_table): Add missing OpenBSD IFF_ flags.
366 (server_accept_connection): Handle IPv6 addresses.
367 (init_process): Add (:family ipv4) and (:family ipv6) sub-features.
368
369 * .gdbinit: Undo last change. Instead, look at Vsystem_type to
370 determine which breakpoints to set.
371
372 2006-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
373
374 * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup.
375
376 * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c).
377
378 2006-01-03 Romain Francoise <romain@orebokech.com>
379
380 * emacs.c (main): Update copyright year.
381
382 2006-01-03 Ken Raeburn <raeburn@gnu.org>
383
384 * callproc.c (delete_temp_file): Bind file-name-handler-alist to
385 nil for the call to internal_delete_file.
386
387 2006-01-01 Ken Raeburn <raeburn@gnu.org>
388
389 * callproc.c (Fcall_process_region): Bind file-name-handler-alist
390 to nil for the call to Fwrite_region.
391
392 2005-12-31 Richard M. Stallman <rms@gnu.org>
393
394 * minibuf.c (read_minibuf): Clear out all other minibuffer windows.
395
396 2005-12-31 Eli Zaretskii <eliz@gnu.org>
397
398 * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake.
399
400 2005-12-30 Luc Teirlinck <teirllm@auburn.edu>
401
402 * textprop.c (set_text_properties): Reword description of return value.
403 Return Qnil if caller wants to remove all text properties from a
404 string and the string already has no intervals.
405
406 2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca>
407
408 * term.c (visible_cursor): New boolean var.
409 (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
410 visible_cursor.
411 (syms_of_term): Export the new var as "visible-cursor".
412
413 2005-12-30 Eli Zaretskii <eliz@gnu.org>
414
415 * .gdbinit: Tell users not to worry about GDB warnings that some
416 functions do not exist in the binary.
417
418 2005-12-30 Andreas Schwab <schwab@suse.de>
419
420 * process.c (Fnetwork_interface_info): Correctly terminate the
421 loop over ifflag_table.
422
423 2005-12-29 Richard M. Stallman <rms@gnu.org>
424
425 * lread.c (readevalloop): Test for reading a whole buffer
426 before actually reading anything. Handle all cases, including
427 START = END = nil and an already-narrowed buffer.
428 Convert END to a marker if it is a number.
429
430 * keymap.c (describe_map): Put sparse map elements into an array,
431 sort them, then output a sequence of identical bindings on one line.
432 (struct describe_map_elt): New data type.
433 (describe_map_compare): New function.
434
435 2005-12-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
436
437 * gtkutil.c (xg_get_file_with_chooser): Change message shown
438 in file chooser.
439
440 2005-12-27 Richard M. Stallman <rms@gnu.org>
441
442 * lread.c (readevalloop): Set PT and ZV in the proper buffer,
443 not the current one.
444
445 * minibuf.c (Fminibuffer_message): Doc fix.
446 (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
447
448 * eval.c (do_autoload): Ignore elements of Vautoload_queue
449 where car is not symbol.
450
451 2005-12-27 Kenichi Handa <handa@m17n.org>
452
453 * charset.c (lisp_string_width): Check multibyteness of STRING.
454
455 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
456
457 * xfns.c: x_show_hidden_files, new variable.
458 (syms_of_xfns): Defvar it.
459
460 * gtkutil.c (xg_toggle_visibility_cb): New function.
461 (xg_get_file_with_chooser): Add toggle hidden files and a message
462 to the new file chooser dialog. Show hidden files if
463 x_show_hidden_files is non-zero.
464
465 2005-12-26 Richard M. Stallman <rms@gnu.org>
466
467 * keyboard.h: Undo previous change.
468
469 * Makefile.in (undo.o): Undo previous change.
470
471 * undo.c: Undo previous change.
472
473 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
474
475 * keyboard.h: extern last_point_position_window.
476
477 * undo.c: include keyboard.h.
478
479 * Makefile.in (undo.o): Depend on keyboard.h.
480
481 2005-12-26 Richard M. Stallman <rms@gnu.org>
482
483 * commands.h (last_point_position_window): Declare.
484
485 * undo.c: Depend on window.h.
486 (record_point): Save old point from the correct window.
487
488 * keyboard.c (last_point_position_window): New variable.
489 (command_loop_1): Set last_point_position_window.
490 (syms_of_keyboard): Init it.
491
492 * Makefile.in (undo.o): Depend on window.h.
493
494 2005-12-25 Richard M. Stallman <rms@gnu.org>
495
496 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
497 to undo a `provide'.
498
499 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
500
501 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
502
503 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
504 define for FreeBSD on this platform.
505
506 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
507
508 * macterm.h (TYPE_FILE_NAME): New define.
509 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
510
511 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname):
512 Add prototypes. Make static.
513 (mac_aedesc_to_lisp): Initialize err to noErr.
514 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
515 (init_coercion_handler): New functions.
516 (Fmac_coerce_ae_data): Use coercion of Apple event data for
517 translation from/to file names.
518
519 * macterm.c: Don't include sys/param.h.
520 (init_coercion_handler): Add extern.
521 [MAC_OS8] (main): Call init_coercion_handler.
522 (mac_initialize) [MAC_OSX]: Likewise.
523 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
524 Apple event data for translation from/to file names.
525
526 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
527
528 * image.c [MAC_OS] (find_image_fsspec): Likewise.
529
530 2005-12-23 Martin Rudalics <rudalics@gmx.at> (tiny change)
531
532 * insdel.c (insert, insert_and_inherit, insert_before_markers)
533 (insert_before_markers_and_inherit): Make sure FROM is correct
534 when `after-change-functions' are called.
535
536 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
537
538 * xfns.c (Fx_uses_old_gtk_dialog): New function.
539
540 * gtkutil.c (xg_uses_old_file_dialog): New function.
541 (xg_get_file_name): Use xg_uses_old_file_dialog.
542
543 * gtkutil.h: Declare xg_uses_old_file_dialog.
544
545 2005-12-22 Richard M. Stallman <rms@gnu.org>
546
547 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
548
549 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
550
551 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
552
553 * macgui.h (XCharStruct): Remove member `valid_p'.
554 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
555 (XCharStructRow): New typedef.
556 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID):
557 New macros.
558 (struct MacFontStruct): Add member `bounds'. Remove member
559 `per_char'. All uses for QuichDraw Text fonts are changed to
560 `bounds.per_char'. ATSUI font bounds are represented as an array
561 `bounds.rows' of XCharStructRow's, each of which consists of a
562 bitmap of valid entries and an array of char bounds.
563
564 * macterm.c (mac_per_char_metric): Add prototype.
565 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
566 (mac_query_char_extents): New function.
567 (x_per_char_metric): Use it.
568 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
569 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg):
570 Use mac_per_char_metric instead of x_per_char_metric.
571 (mac_text_extents_16): New function.
572 (mac_compute_glyph_string_overhangs): Use it.
573 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
574
575 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
576
577 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
578 (Fminibuffer_completion_help): Remove duplicates before display.
579
580 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
581
582 * print.c (print_preprocess): Don't lose print_depth levels while
583 iterating.
584
585 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
586
587 * macmenu.c (Qmac_apple_event): Add extern.
588 (set_frame_menubar, mac_menu_show keymp_panes)
589 (single_keymap_panes, list_of_panes, list_of_item)
590 (single_menu_item): Add argument types to prototypes.
591 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
592 (struct skp): New struct (from xmenu.c).
593 (single_keymap_panes, single_menu_item, list_of_panes)
594 (list_of_item): Sync with xmenu.c.
595 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
596 POSITION if it is mac-apple-event event.
597 (menubar_selection_callback): Don't use menu_command_in_progress.
598 (set_frame_menubar): First parse all submenus, then make
599 widget_value trees from them. Don't allocate any widget_value
600 objects until we are done with the parsing.
601 (parse_single_submenu, digest_single_submenu): New functions.
602 (single_submenu): Function deleted, replaced by those two.
603 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
604 create or dispose of EventHandlerUPP. Install hander to all submenus.
605 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
606 instead of ENCODE_SYSTEM.
607 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
608 integer values.
609 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
610 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
611 format menu item string. Don't use NULL for integer value.
612
613 * macterm.h (struct mac_output): Remove unused member
614 menu_command_in_progress.
615
616 2005-12-20 Juri Linkov <juri@jurta.org>
617
618 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
619 position is non-nil, else set it to nil.
620
621 * macmenu.c (Fx_popup_menu): Add `else' to set
622 Vmenu_updating_frame to nil only if position is nil.
623
624 * w32menu.c (Fx_popup_menu): Add `else' to set
625 Vmenu_updating_frame to nil only if position is nil.
626
627 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
628
629 * keyboard.c (make_lispy_event): Drag-and-drop items are now
630 stored in member `args' of struct input_event.
631
632 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
633
634 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
635 stored in member `args' of struct input_event.
636
637 * w32term.c (construct_drag_n_drop): Likewise.
638
639 * macterm.c (mac_do_receive_drag): Likewise.
640 (x_use_underline_position_properties): Undo 2005-07-13 change.
641 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
642 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
643 (mac_pass_command_to_system, mac_pass_control_to_system):
644 New boolean variables renamed from Lisp_Object ones
645 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
646 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
647 All uses changed.
648 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
649 Make them user options.
650 (mac_handle_command_event, mac_store_services_event):
651 Call create_apple_event_from_event_ref without 5th argument.
652 (backtranslate_modified_keycode): Mask off modifier keys that are
653 mapped to some Emacs modifiers before passing it to KeyTranslate.
654 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
655 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
656 Fix docstrings of `mac-*-modifier'.
657
658 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
659 (do_applescript): Change argument types to Lisp_Object.
660 All uses changed.
661
662 * macterm.h (create_apple_event_from_event_ref): Remove 5th
663 argument from extern.
664
665 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
666
667 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
668 the answer, return `lambda', not nil.
669
670 2005-12-17 Eli Zaretskii <eliz@gnu.org>
671
672 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
673 enclosed in $(ARGQUOTE)s should not be split between two lines, as
674 that will break with GNU Make >3.80, when sh.exe is used and
675 arg quoting is with '..'.
676
677 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
678
679 * print.c (print_preprocess): Just signal an error if print_depth
680 is exceeded.
681
682 2005-12-17 Eli Zaretskii <eliz@gnu.org>
683
684 * .gdbinit: Set a breakpoint on w32_abort.
685
686 2005-12-16 Juri Linkov <juri@jurta.org>
687
688 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
689 created from minibuffer_completion_contents.
690 (minibuffer_completion_contents): Remove.
691 (do_completion, Fminibuffer_complete_word)
692 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
693 with Fminibuffer_completion_contents.
694 (syms_of_minibuf): Add Sminibuffer_completion_contents.
695 (Fdisplay_completion_list): Doc fix.
696 (display_completion_list_1): Use `nil' for second arg of
697 `Fdisplay_completion_list'.
698
699 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
700
701 * xfns.c (compute_tip_xy): Handle negative dx and dy.
702
703 * w32fns.c (compute_tip_xy): Ditto.
704
705 * macfns.c (compute_tip_xy): Ditto.
706
707 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
708
709 * print.c (print_preprocess): Go to a deeper print_depth to avoid
710 print_object loop.
711
712 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
713
714 * coding.c (code_convert_region_unwind): GCPRO arg.
715
716 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
717
718 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
719 i.e. dy is offset from top of frame instead of bottom.
720
721 * macfns.c (compute_tip_xy): Ditto.
722
723 * w32fns.c (compute_tip_xy): Ditto.
724
725 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
726 (xg_get_image_for_pixmap, xg_create_frame_widgets)
727 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
728
729 * xmenu.c (menubar_selection_callback): Do nothing if the callback
730 is for an unselected radio menu item.
731
732 2005-12-11 Richard M. Stallman <rms@gnu.org>
733
734 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
735
736 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
737
738 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
739 (Flookup_key): Doc fix.
740 (syms_of_keymap) <function-key-map>: Doc fix.
741
742 * fns.c (Frequire): Treat evaluating from a source file
743 like loading the file.
744
745 * floatfns.c (Flog): Doc fix.
746
747 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
748 when we change the buffer.
749
750 2005-12-11 Juri Linkov <juri@jurta.org>
751
752 * minibuf.c (display_completion_list_1):
753 Call `minibuffer_completion_contents' instead of using `nil' as
754 second arg of `Fdisplay_completion_list'.
755 (keys_of_minibuf): Unbind SPC in
756 Vminibuffer_local_filename_completion_map (see also related
757 change on 2005-12-06).
758
759 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
760
761 * emacs.c (main) [MAC_OS8]: Undo previous change.
762
763 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
764 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
765
766 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
767
768 * Makefile.in (macselect.o): Depend on keymap.h.
769
770 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
771 syms_of_macselect.
772
773 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
774 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
775
776 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
777 (syms_of_keyboard) [MAC_OS]: Initialize it.
778 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
779
780 * mac.c (Qundecoded_file_name): New variable.
781 (syms_of_mac): Initialize it.
782 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
783 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
784 (Fmac_coerce_ae_data): New defun.
785 (syms_of_mac): Defsubr it.
786
787 * macselect.c: Include keymap.h.
788 (mac_ready_for_apple_events): New variable.
789 (Vmac_apple_event_map, Qmac_apple_event_class)
790 (Qmac_apple_event_id): New variables.
791 (syms_of_macselect): Initialize them.
792 (Qundefined, mac_store_apple_event): Add externs.
793 (struct apple_event_binding): New struct.
794 (find_event_binding_fun, find_event_binding)
795 (mac_find_apple_event_spec, defer_apple_events)
796 (mac_handle_apple_event, init_apple_event_handler)
797 (copy_scrap_flavor_data): New functions.
798 (Fmac_process_deferred_apple_events): New defun.
799 (syms_of_macselect): Defsubr it.
800 (mac_store_services_event): Fix extern.
801 (mac_handle_service_event): Don't allocate Lisp objects during
802 asynchronous input processing. Use mac_store_services_event
803 instead of mac_store_application_menu_event.
804
805 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
806 (Qpreferences): Remove variables.
807 (syms_of_macterm) : Don't initialize them.
808 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
809 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
810 (init_required_apple_events, do_ae_open_application)
811 (do_ae_print_documents, do_ae_open_documents)
812 (do_ae_quit_application): Remove functions and prototypes.
813 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
814 (mac_find_apple_event_spec): Add externs.
815 (mac_store_application_menu_event): Remove function.
816 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
817 (mac_handle_command_event): Create Apple event from Carbon event.
818 Use mac_store_apple_event instead of mac_store_application_menu_event.
819 [MAC_OSX] (mac_store_services_event): Likewise.
820 (struct SelectionRange, SelectionRange): Remove struct and typedef.
821 [MAC_OS8] (main): Call init_apple_event_handler instead of
822 init_required_apple_events.
823 (mac_initialize) [MAC_OSX]: Likewise.
824 [!USE_CARBON_EVENTS] (mac_wait_next_event):
825 Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
826
827 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp):
828 Add externs.
829 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
830 (Fmac_get_preference): Add EXFUN.
831
832 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
833 event.
834
835 2005-12-09 Richard M. Stallman <rms@gnu.org>
836
837 * xfns.c (Fx_create_frame): Reinstate previous change.
838
839 2005-12-09 Eli Zaretskii <eliz@gnu.org>
840
841 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
842 GDB to the abort dialog.
843
844 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
845
846 * indent.c (Fvertical_motion): Force move if starting on
847 stretch glyph.
848
849 2005-12-08 Richard M. Stallman <rms@gnu.org>
850
851 * lread.c (read_escape) <\s>: Don't treat strings specially.
852
853 * xfns.c (Fx_create_frame): Comment out previous change.
854
855 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
856
857 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
858 when needed.
859
860 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
861
862 * minibuf.c (keys_of_minibuf): Just unbind SPC in
863 Vminibuffer_local_filename_completion_map rather than forcing it
864 explicitly to the same binding as the global map.
865
866 2005-12-06 Ken Raeburn <raeburn@gnu.org>
867
868 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args.
869 * bytecode.c (Fbyte_code): Likewise.
870 * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise.
871 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
872 * undo.c (truncate_undo_list): Likewise.
873
874 2005-12-05 Richard M. Stallman <rms@gnu.org>
875
876 * window.c (enlarge_window): Eliminate arg preserve_before.
877 Assume it is 0. All callers changed.
878 (Fenlarge_window, Fshrink_window): Likewise.
879
880 2005-12-02 Eli Zaretskii <eliz@gnu.org>
881
882 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
883 fit below.
884
885 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
886
887 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
888
889 * xfns.c (x_real_positions): int ign => unsigned int.
890 (xg_set_icon_from_xpm_data): Remove unused variable err.
891 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
892 to remove compiler warning.
893 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
894
895 2005-12-02 David Reitter <david.reitter@gmail.com>
896
897 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
898 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
899 and Vminibuffer_local_must_match_filename_map keymaps.
900 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
901
902 * keymap.c (Vminibuffer_local_filename_completion_map)
903 (Vminibuffer_local_must_match_filename_map): New variables.
904 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
905 parent to be Vminibuffer_local_completion_map and
906 Vminibuffer_local_must_match_map, respectively.
907
908 * commands.h (Vminibuffer_local_filename_completion_map)
909 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
910
911 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
912
913 * window.c (Fset_window_configuration): Don't accidentally copy the
914 window-point of one window to another.
915
916 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
917
918 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
919
920 2005-11-30 Kim F. Storm <storm@cua.dk>
921
922 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
923 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
924 passing it to `emacs_write'.
925
926 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
927
928 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
929
930 2005-11-27 Richard M. Stallman <rms@gnu.org>
931
932 * window.c (adjust_window_trailing_edge): New function.
933 (Fadjust_window_trailing_edge): New function.
934 (syms_of_window): Defsubr it.
935 (window_deletion_count): New variable.
936 (delete_window): Update window_deletion_count.
937
938 2005-11-26 Eli Zaretskii <eliz@gnu.org>
939
940 * minibuf.c (syms_of_minibuf): Mention the extension of
941 `completion-auto-help's meaning by complete.el.
942
943 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
944
945 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
946 Handle :inherit property as a lisp expression.
947
948 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
949
950 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
951 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
952 Qsuper, and Qmodifier_value.
953 (Vmac_control_modifier, Vmac_option_modifier)
954 (Vmac_command_modifier, Vmac_function_modifier)
955 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
956 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
957 (Vmac_charset_info_alist): Doc fixes.
958
959 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
960
961 * emacs.c (main) [MAC_OSX]: Change working directory to home
962 directory if `-psn_*' option is specified.
963
964 * mac.c (DECODE_UTF_8): Remove macro.
965 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
966 created from cfstring_to_lisp.
967 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
968 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
969
970 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
971 Add prototype.
972
973 2005-11-21 Ken Raeburn <raeburn@gnu.org>
974
975 * keymap.c (shadow_lookup): Use make_number to pass a number to
976 Fsubstring.
977
978 2005-11-21 Juri Linkov <juri@jurta.org>
979
980 * puresize.h (BASE_PURESIZE): Increment to 1180000.
981
982 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
983
984 * xfaces.c (Finternal_set_lisp_face_attribute):
985 Use :ignore-defface for new frame defaults when `unspecified' is
986 supplied.
987 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
988 (merge_face_vectors): Don't do :ignore-defface overwriting here.
989 (Finternal_merge_in_global_face): Do it here.
990
991 2005-11-20 Juri Linkov <juri@jurta.org>
992
993 * charset.c (invalid_character): Use Lisp-readable syntax
994 for octal and hex. Reorder decimal, octal and hex values.
995
996 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
997
998 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
999 this type is recognised when debugging.
1000
1001 2005-11-19 Andreas Schwab <schwab@suse.de>
1002
1003 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
1004 Lisp_Cons and Lisp_Float.
1005
1006 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1007
1008 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
1009 New variable.
1010 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
1011 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
1012 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
1013 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
1014
1015 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
1016
1017 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
1018
1019 * xfaces.c (Qignore_defface): New variable.
1020 (syms_of_xfaces): Provide `:ignore-defface'.
1021 (IGNORE_DEFFACE_P): New macro.
1022 (check_lface_attrs, lface_fully_specified_p)
1023 (Finternal_set_lisp_face_attribute)
1024 (Fface_attribute_relative_p, Fmerge_face_attribute):
1025 Handle Qignore_defface as a possible value.
1026 (merge_face_vectors): The merged face is `unspecified' if the
1027 mergee specifies `:ignore-defface'.
1028
1029 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
1030
1031 * lread.c (readevalloop): Add missing GCPROs.
1032
1033 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
1034
1035 * xfns.c (xg_set_icon_from_xpm_data): New function.
1036
1037 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
1038 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
1039
1040 * xterm.c (x_bitmap_icon): Use the xpm if available.
1041
1042 * image.c (x_create_bitmap_from_xpm_data): New function.
1043 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
1044
1045 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
1046
1047 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
1048
1049 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
1050
1051 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
1052
1053 2005-11-15 Andreas Schwab <schwab@suse.de>
1054
1055 * lisp.h (struct Lisp_Cons): Make cdr a union.
1056 (XCDR_AS_LVALUE): Adjust.
1057 (struct Lisp_Float): Make data a union.
1058 (XFLOAT_DATA): Adjust.
1059
1060 * alloc.c (free_float): Make free list chaining aliasing-safe.
1061 (make_float): Likewise.
1062 (free_cons): Likewise.
1063 (Fcons): Likewise.
1064 (check_cons_list): Likewise.
1065 (Fmake_symbol): Likewise.
1066 (allocate_misc): Likewise.
1067 (free_misc): Likewise.
1068 (gc_sweep): Likewise.
1069
1070 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1071
1072 * mac.c (HASHKEY_QUERY_CACHE): New define.
1073 (xrm_create_database, xrm_q_put_resource): Empty query cache.
1074 (xrm_get_resource): Use query cache.
1075
1076 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
1077 inhibit_window_system is set.
1078
1079 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1080
1081 * macgui.h (USE_CG_TEXT_DRAWING): New define.
1082 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
1083 and cg_glyphs.
1084
1085 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
1086 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
1087 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
1088 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
1089 not used and font substitution never occurs for ASCII and Latin-1
1090 characters.
1091 (XLoadQueryFont): Maximum and minimum metrics are now those among
1092 ASCII characters.
1093 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
1094 height adjustments for Courier, Helvetica, and Times.
1095
1096 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
1097
1098 2005-11-11 David Reitter <david.reitter@gmail.com>
1099
1100 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
1101 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
1102 Vmac_control_modifier / mac-control-modifier,
1103 Vmac_option_modifier / mac-option-modifier,
1104 Vmac_command_modifier / mac-command-modifier.
1105 (mac_to_emacs_modifiers): Use the new style modifier
1106 variables. Return UInt32 (modifiers are longs now.)
1107 (backtranslate_modified_keycode): New function (refactoring).
1108 (XTread_socket): Use new modifier variables and refactored function.
1109 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
1110 no dedicated meta key. Not in use anyway.)
1111 (convert_fn_keycode): Map Fn-keys to their original keycode
1112 using a table (english keyboard only).
1113
1114 2005-11-11 Kim F. Storm <storm@cua.dk>
1115
1116 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
1117 Add post hook to "backtrace" to always dump lisp call stack to
1118 increase chance of people sending it to us when reporting bugs.
1119
1120 * doc.c (Fsubstitute_command_keys): Doc fix.
1121
1122 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
1123
1124 * xdisp.c (handle_stop): Skip overlay string handling if
1125 ignore_overlay_strings_at_pos_p is set.
1126 (set_iterator_to_next): At end of display vector, set
1127 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
1128 string, so we skip those overlay strings at current pos.
1129
1130 2005-11-10 Lars Hansen <larsh@soem.dk>
1131
1132 * fileio.c (file-regular-p): Doc fix.
1133
1134 2005-11-10 Kim F. Storm <storm@cua.dk>
1135
1136 * alloc.c (valid_lisp_object_p): New function to validate that
1137 an object is really a valid Lisp_Object.
1138
1139 * lisp.h (valid_lisp_object_p): Add prototype.
1140
1141 * print.c (safe_debug_print): New function to be called from gdb
1142 to print Lisp objects; use valid_lisp_object_p to avoid crashing
1143 if user tries to print something which is not a Lisp object.
1144
1145 * .gdbinit (pp, pp1): Use safe_debug_print.
1146 (pv, pv1): New commands to print value of a lisp variable.
1147
1148 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
1149
1150 * .gdbinit (pp1): New user-defined function.
1151
1152 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1153
1154 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
1155
1156 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
1157 related variables for dumped executable.
1158
1159 * unexmacosx.c (unexec_write_zero): New function.
1160 (copy_data_segment): Clear uninitialized local variables in
1161 statically linked libraries.
1162
1163 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
1164
1165 2005-11-09 Juri Linkov <juri@jurta.org>
1166
1167 * keymap.c (shadow_lookup): If Flookup_key returns a number,
1168 call it again with a sub-key-sequence, and if its return value
1169 is non-nil (sub-key is bound), return nil.
1170
1171 2005-11-08 Kim F. Storm <storm@cua.dk>
1172
1173 * process.c (Fsignal_process): Recognize signal names with and
1174 without SIG prefix, e.g. SIGHUP and HUP.
1175
1176 * search.c (search_buffer): No need to initialize base_pat.
1177
1178 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
1179
1180 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
1181 Don't abuse the `mini' arg. Use the `obj' arg instead.
1182
1183 2005-11-04 Kim F. Storm <storm@cua.dk>
1184
1185 * xdisp.c (show_mouse_face): Clear mouse face to eol.
1186
1187 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
1188
1189 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
1190 font-lock.elc and jit-lock.elc.
1191
1192 2005-11-03 Richard M. Stallman <rms@gnu.org>
1193
1194 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
1195 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
1196 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
1197
1198 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
1199
1200 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
1201
1202 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
1203
1204 * window.c (Fdisplay_buffer): Fix last change to not use
1205 a dedicated window.
1206
1207 2005-11-01 Kim F. Storm <storm@cua.dk>
1208
1209 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
1210 Instead, rotate the bottom angle bitmap 180 degrees to indicate
1211 that the bottom row does not end in a newline.
1212
1213 2005-11-01 Andreas Schwab <schwab@suse.de>
1214
1215 * unexelf.c (unexec): Handle .plt section in BSS segment.
1216
1217 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
1218
1219 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
1220
1221 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
1222 determine whether to consider dedicated windows as well.
1223 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
1224 (Fdisplay_buffer): Do consider dedicated windows in those cases where
1225 we will split the window rather than reuse it.
1226 Don't try to use windows on other displays.
1227
1228 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
1229
1230 * puresize.h (BASE_PURESIZE): Increment to 1170000.
1231
1232 2005-10-31 Romain Francoise <romain@orebokech.com>
1233
1234 * macfns.c: Update copyright year.
1235 * m/gould.h: Likewise.
1236
1237 2005-10-30 Kim F. Storm <storm@cua.dk>
1238
1239 * xdisp.c (display_line): Restore it->current_x and call
1240 extend_face_to_end_of_line when last glyph doesn't fit on line.
1241 (set_glyph_string_background_width): Remove specific tests here
1242 to see if face background should extend to end of line. Simplify.
1243
1244 2005-10-30 Richard M. Stallman <rms@gnu.org>
1245
1246 * alloc.c (BYTES_USED): Use uordblks, not arena.
1247 (bytes_used_when_reconsidered): New variable.
1248 (emacs_blocked_free): Set that.
1249
1250 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
1251
1252 * alloc.c (emacs_blocked_free): Fix typo.
1253
1254 2005-10-29 Richard M. Stallman <rms@gnu.org>
1255
1256 * data.c (Fmake_variable_frame_local): Doc fix.
1257
1258 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
1259 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
1260 controls whether to save and restore mode_line_proptrans_alist.
1261 Callers changed.
1262 (unwind_format_mode_line): Work with that feature.
1263 (redisplay_internal): Don't call prepare_menu_bars if memory full.
1264 (move_elt_to_front): New function.
1265 (display_mode_element): Use move_elt_to_front.
1266 Don't bother munging text props on a null string.
1267 Delete obsolete elts from mode_line_proptrans_alist.
1268 (decode_mode_spec): Test Vmemory_full, not spare_memory.
1269 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
1270
1271 * lisp.h (memory_full_cons_threshold): Declare.
1272 (internal_lisp_condition_case): Declare.
1273
1274 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
1275 (Fmemory_full_p): Function deleted.
1276 (syms_of_alloc): Don't defsubr it.
1277 (memory_full_cons_threshold): New variable.
1278 (spare_memory): Now a vector of 7 elts.
1279 (buffer_memory_full): Don't set Vmemory_full here.
1280 (xfree): Don't try to refill here.
1281 (emacs_blocked_free): Record BYTES_USED in local var.
1282 (memory_full): Now free all the slots in spare_memory.
1283 (refill_memory_reserve): Allocate each slot in spare_memory.
1284 (init_alloc_once): Call refill_memory_reserve.
1285
1286 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
1287
1288 * eval.c (internal_lisp_condition_case): New function.
1289 (Fcondition_case): Use internal_lisp_condition_case.
1290 (Feval): Test Vmemory_full and memory_full_cons_threshold.
1291 (Ffuncall): Likewise.
1292
1293 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
1294
1295 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
1296
1297 * syntax.c (Fparse_partial_sexp): Fix docstring.
1298
1299 2005-10-28 Romain Francoise <romain@orebokech.com>
1300
1301 * puresize.h (BASE_PURESIZE): Increment to 1130000.
1302
1303 2005-10-28 Richard M. Stallman <rms@gnu.org>
1304
1305 * xfns.c (syms_of_xfns): Provide `x' as feature.
1306
1307 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
1308
1309 * editfns.c (Fformat): Don't include string padding
1310 between info[n].start and info[n].end.
1311
1312 * alloc.c (spare_memory): No longer static.
1313 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
1314
1315 * puresize.h (BASE_PURESIZE): Increment to 1120000.
1316
1317 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
1318
1319 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
1320
1321 * fringe.c (update_window_fringes): Handle case where buffer ends
1322 with a newline.
1323
1324 2005-10-27 Kenichi Handa <handa@m17n.org>
1325
1326 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
1327
1328 2005-10-24 Kenichi Handa <handa@m17n.org>
1329
1330 * charset.h (charset_mule_unicode_0100_24ff)
1331 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
1332 Extern them.
1333
1334 * charset.c (charset_mule_unicode_0100_24ff)
1335 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
1336 New variables.
1337 (Fsetup_special_charsets): Initialize them.
1338
1339 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
1340 supported Unicode characters.
1341
1342 2005-10-25 Jason Rumney <jasonr@gnu.org>
1343
1344 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
1345
1346 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1347
1348 * image.c [MAC_OS] (image_load_qt_1): Check image size.
1349 Use GraphicsImportGetImageDescription instead of
1350 GraphicsImportGetNaturalBounds.
1351 [MAC_OSX] (image_load_quartz2d): Check image size.
1352 [MAC_OS] (xpm_load_image): Likewise.
1353
1354 * macterm.c (last_mouse_glyph_frame): New var.
1355 (note_mouse_movement): Say mouse moved if current frame differs
1356 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
1357 (XTmouse_position): Set last_mouse_glyph_frame.
1358 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
1359 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
1360 Use EndianU16_BtoN.
1361 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
1362 (x_per_char_metric, XLoadQueryFont)
1363 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
1364 glyph bounds.
1365 (mac_to_x_fontname, mac_do_list_fonts)
1366 (mac_initialize_display_info): Change screen resolutions to 72dpi.
1367
1368 2005-10-25 Masatake YAMATO <jet@gyve.org>
1369
1370 * minibuf.c (Fdisplay_completion_list): Small doc fix.
1371
1372 2005-10-24 Kim F. Storm <storm@cua.dk>
1373
1374 * xterm.c: Undo 2005-10-23 change.
1375 (last_mouse_glyph_frame): New var.
1376 (note_mouse_movement): Say mouse moved if current frame differs
1377 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
1378 (XTmouse_position): Set last_mouse_glyph_frame.
1379 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
1380 last_mouse_glyph] on mouse up/down event.
1381
1382 * editfns.c (Fcompare_buffer_substrings): Fix last change.
1383
1384 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
1385
1386 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
1387
1388 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1389
1390 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
1391 so tool tips don't interfere with press on tool bar button.
1392
1393 2005-10-23 Richard M. Stallman <rms@gnu.org>
1394
1395 * casetab.c (Fset_case_table): Doc fix.
1396
1397 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
1398 (readevalloop): Compute ENTIRE properly.
1399 (syms_of_lread) <load-history>: Doc fix.
1400
1401 2005-10-21 Richard M. Stallman <rms@gnu.org>
1402
1403 * lread.c (Fload): Simplify gcpro structure.
1404 Gcpro FOUND as well as FILE, but not EFOUND.
1405 Unless preloading, record FOUND instead of FILE in Vload_history.
1406 Rename repeat local FILE to MSG_FILE.
1407 (syms_of_lread) <load-history>: Doc fix.
1408
1409 2005-10-21 Kenichi Handa <handa@m17n.org>
1410
1411 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
1412
1413 2005-10-20 Kim F. Storm <storm@cua.dk>
1414
1415 * buffer.c (clone_per_buffer_values): Remove unused var tem.
1416 (init_buffer): Remove unused vars dotstat, pwdstat.
1417
1418 * ccl.c (check_ccl_update): Remove unused var vp.
1419
1420 * fileio.c (auto_save_error): Call SAFE_FREE.
1421
1422 * fns.c (Fchar_table_range): Remove unused var i.
1423
1424 * minibuf.c (display_completion_list_1): New wrapper function
1425 for Fdisplay_completion_list.
1426 (Fminibuffer_completion_help): Use it.
1427
1428 * term.c (encode_terminal_code): Remove unused var src_start.
1429
1430 * window.c (Fwindow_tree): Remove unused var alist.
1431
1432 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
1433
1434 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
1435
1436 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
1437
1438 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
1439
1440 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
1441
1442 2005-10-20 Andreas Schwab <schwab@suse.de>
1443
1444 * minibuf.c (Fdisplay_completion_list): Doc fix.
1445
1446 2005-10-19 Kim F. Storm <storm@cua.dk>
1447
1448 * image.c (check_image_size): Handle integer Vmax_image_size value
1449 directly as max pixel value. Use default frame size for null frame.
1450 (syms_of_image) <max-image-size>: Describe integer value.
1451
1452 2005-10-19 Romain Francoise <romain@orebokech.com>
1453
1454 * emacs.c (main): Update copyright year.
1455
1456 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
1457
1458 * image.c (Vmax_image_size): New variable.
1459 (check_image_size): New function.
1460 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
1461 (gif_load, gs_load): Use it.
1462 (lookup_image): Try loading again if previous load failed.
1463 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
1464 to display in, NULL if none.
1465 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
1466 argument.
1467
1468 2005-10-18 Richard M. Stallman <rms@gnu.org>
1469
1470 * search.c (Fstring_match): Doc fix.
1471
1472 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1473
1474 * macterm.c (note_mouse_movement): Use PtInRect.
1475 (XTread_socket): Also ignore mouse motion just before a button
1476 release event. Don't process button release event when mouse is
1477 not grabbed.
1478
1479 2005-10-16 Masatake YAMATO <jet@gyve.org>
1480
1481 * minibuf.c (Fdisplay_completion_list): Add new optional
1482 argument COMMON_SUBSTRING. Bind `completion-common-substring'
1483 to the optional argument during running `completion-setup-hook'.
1484
1485 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1486
1487 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
1488 Allow nil as argument.
1489 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
1490 for encoding arguments as UTF-16 in native byte order, no BOM.
1491
1492 * macfns.c (Fx_create_frame): Add debugging code.
1493 (Fx_show_tip): Set frame pixel width and height.
1494
1495 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
1496 (FRAME_NORMAL_GC): New macro.
1497 (mac_draw_line, mac_clear_area, mac_clear_window)
1498 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
1499 (mac_draw_image_string, mac_draw_image_string_16): Rename from
1500 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
1501 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
1502 All uses changed.
1503 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
1504 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
1505 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
1506 (mac_draw_string_16, mac_draw_image_string)
1507 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
1508 (mac_scroll_area): Drawing functions now take frame as destination.
1509 All uses changed.
1510 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
1511 (x_draw_fringe_bitmap): Set clipping area in face->gc.
1512
1513 * macterm.h (mac_clear_area): Add extern.
1514
1515 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1516
1517 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
1518 changes for xterm.c.
1519
1520 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
1521
1522 2005-10-14 Kenichi Handa <handa@m17n.org>
1523
1524 * search.c (search_buffer): Give up BM search on case-fold-search
1525 if one of a target character has a case-equivalence of different
1526 charset even if that target charcter is an ASCII.
1527
1528 * casefiddle.c (casify_object): Fix for the case that case
1529 conversion change the byte length.
1530
1531 2005-10-14 Kim F. Storm <storm@cua.dk>
1532
1533 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
1534 (handle_one_xevent): Only clear help_echo_string; restore it if
1535 note_mouse_movement didn't record any mouse movement.
1536
1537 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
1538 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
1539
1540 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
1541 (Fposn_at_x_y): Fix calculation of x coordinate.
1542 (Fposn_at_point): Return nil if point is hscrolled out of view.
1543
1544 2005-10-13 Andreas Schwab <schwab@suse.de>
1545
1546 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
1547 non-interactive mode.
1548
1549 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1550
1551 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
1552
1553 2005-10-12 Kim F. Storm <storm@cua.dk>
1554
1555 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
1556
1557 2005-10-12 Romain Francoise <romain@orebokech.com>
1558
1559 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
1560
1561 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1562
1563 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
1564 get end of text rows. Obtain header-line/mode-line rows directly.
1565
1566 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
1567 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
1568
1569 2005-10-12 Kim F. Storm <storm@cua.dk>
1570
1571 * xdisp.c (remember_mouse_glyph): New generic version based on
1572 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
1573 properly handle all different window areas.
1574
1575 * dispextern.h (remember_mouse_glyph): Add prototype.
1576
1577 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
1578 (note_mouse_movement, XTmouse_position): Use generic
1579 remember_mouse_glyph, add last_mouse_glyph arg.
1580
1581 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
1582 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
1583 (note_mouse_movement, w32_mouse_position): Use generic
1584 remember_mouse_glyph, add last_mouse_glyph arg.
1585
1586 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
1587 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
1588 (XTmouse_position): Adapt to use generic remember_mouse_glyph
1589 instead of pixel_to_glyph_coords.
1590
1591 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
1592 Fix x position for ON_TEXT when left margin width > 0.
1593
1594 2005-10-11 Kim F. Storm <storm@cua.dk>
1595
1596 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
1597
1598 * keyboard.c (make_lispy_position): Fix buffer calculations for
1599 mouse click or movement in right fringe and the margins.
1600
1601 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
1602
1603 * image.c (fn_jpeg_stdio_src): Don't define it.
1604 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
1605 (our_common_init_source): Rename from `our_init_source'.
1606 (our_common_term_source): Rename from `our_term_source'.
1607 (our_memory_fill_input_buffer): Rename from
1608 `our_fill_input_buffer'.
1609 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
1610 (jpeg_memory_src): Use the new names.
1611 (struct jpeg_stdio_mgr): New struct.
1612 (JPEG_STDIO_BUFFER_SIZE): New constant.
1613 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
1614 (jpeg_file_src): New functions.
1615 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
1616
1617 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1618
1619 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
1620 (fm_font_family_alist): New variable.
1621 (syms_of_macterm): Initialize and staticpro it.
1622 (decode_mac_font_name): Replace '-' in family name with '_' if it
1623 occurs just once. Lower family name.
1624 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
1625 All uses changed. Remove argument MF and code conversion for it.
1626 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
1627 to CHARSET. Parse font size. Lower family name. Return integer
1628 value for status of parsing.
1629 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
1630 Don't use Fdowncase because family name is already lowered by
1631 decode_mac_font_name.
1632 (init_font_name_table): Always call decode_mac_font_name.
1633 Add pair of family name and its reference to fm_font_family_alist.
1634 (mac_clear_font_name_table): Clear fm_font_family_alist.
1635 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
1636 Lookup fm_font_family_alist to get font family reference.
1637 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
1638 name is already lowered by parse_x_font_name.
1639
1640 2005-10-11 Kim F. Storm <storm@cua.dk>
1641
1642 * xterm.c (glyph_rect): Return 0 if position is outside text area.
1643
1644 * keyboard.c (make_lispy_position): Fix buffer position calculation for
1645 mouse click or movement in fringe.
1646
1647 2005-10-10 Jason Rumney <jasonr@gnu.org>
1648
1649 * xterm.c (remember_mouse_glyph): New function.
1650 (note_mouse_movement): Use it to remember the current glyph if changed.
1651 (XTmouse_position): Fix calculation of fake glyph under mouse.
1652 Move code to calculate glyph under mouse into remember_mouse_glyph.
1653
1654 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1655
1656 * emacs.c (USAGE3, standard_args): -nb => -nbi.
1657
1658 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
1659
1660 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
1661 (next_frame, prev_frame, set_term_frame_name): Make static.
1662
1663 * window.c (Fwindow_tree): Fix spelling.
1664
1665 2005-10-09 Romain Francoise <romain@orebokech.com>
1666
1667 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
1668
1669 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1670
1671 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
1672 Add options -nb, --no-bitmap-icon.
1673
1674 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
1675
1676 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1677
1678 * macgui.h (MAX_CLIP_RECTS): New define.
1679 (struct _XGC): New member clip_region.
1680 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
1681 clip_rects.
1682
1683 * macterm.c (GC_CLIP_REGION): New macro.
1684 (saved_port_clip_region): New variable.
1685 (mac_begin_clip, mac_end_clip): New functions.
1686 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
1687 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
1688 (mac_copy_area_with_mask, mac_scroll_area): Use them.
1689 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
1690 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1691 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
1692 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
1693 rectangles stored in gc.
1694 (XFreeGC): Dispose of clipping region.
1695 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
1696 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
1697 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
1698 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
1699 (x_draw_bar_cursor): Use them.
1700 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
1701 get multiple clipping rectangles.
1702
1703 * macterm.h (mac_term_init): Add types to extern.
1704 (struct mac_output): Remove members mWP and pending_menu_activation.
1705 Put members scroll_bar_foreground_pixel and
1706 scroll_bar_background_pixel in #if 0.
1707 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
1708
1709 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
1710 Add debugging code.
1711
1712 2005-10-08 Kim F. Storm <storm@cua.dk>
1713
1714 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
1715
1716 2005-10-07 Kim F. Storm <storm@cua.dk>
1717
1718 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
1719 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
1720 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
1721
1722 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1723
1724 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
1725 to for_overlaps. Now occupy 3 bits.
1726 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
1727 (OVERLAPS_ERASED_CURSOR): New defines.
1728 (struct redisplay_interface): Add new OVERLAPS arg to member
1729 fix_overlapping_area.
1730 (x_fix_overlapping_area): Add new OVERLAPS arg.
1731 (get_glyph_string_clip_rects): Add extern.
1732
1733 * dispnew.c (redraw_overlapping_rows):
1734 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
1735
1736 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
1737 for_overlaps.
1738 (get_glyph_string_clip_rects): New function created from
1739 get_glyph_string_clip_rect. Set clipping rectangles according to the
1740 value of for_overlaps. Enable to store multiple clipping rectangles.
1741 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
1742 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
1743 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
1744 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
1745 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
1746 calculating clipping rectangles later. Call x_fix_overlapping_area
1747 with new OVERLAPS arg to draw only erased cursor area.
1748 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
1749 to draw overlaps in both preceding and succeeding rows.
1750
1751 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
1752 struct glyph_string to for_overlaps.
1753
1754 2005-10-04 Richard M. Stallman <rms@gnu.org>
1755
1756 * alloc.c (refill_memory_reserve): Conditionalize the body,
1757 not the function's existence.
1758
1759 2005-10-04 Kim F. Storm <storm@cua.dk>
1760
1761 * window.c (window_split_tree): New function.
1762 (Fwindow_split_tree): New defun.
1763 (syms_of_window): Defsubr it.
1764
1765 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1766
1767 * macterm.c (mac_invert_rectangle): New function.
1768 (XTflash): Use it.
1769
1770 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
1771
1772 * regex.h (re_char): Don't expose it in the interface.
1773 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
1774
1775 * regex.c (re_char): Move it back here.
1776 (re_set_whitespace_regexp): Change the arg's type to not use it.
1777
1778 * keyboard.c (make_lispy_event): If point has moved between down and up
1779 event, make it a drag, not a click, to mirror what
1780 mouse-drag-region expects.
1781
1782 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1783
1784 * lisp.h (fatal): Undo previous change.
1785 * term.c (fatal): Undo previous change.
1786
1787 2005-10-01 Richard M. Stallman <rms@gnu.org>
1788
1789 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
1790
1791 2005-10-01 Kim F. Storm <storm@cua.dk>
1792
1793 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
1794
1795 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1796
1797 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
1798
1799 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
1800 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
1801 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
1802 Try ATSUI-compatible 12pt Monaco font first.
1803
1804 * macgui.h (struct _XCharStruct): New member valid_p.
1805 (STORE_XCHARSTRUCT): Set valid_p.
1806 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
1807
1808 * macterm.c (mac_draw_string_common, x_per_char_metric)
1809 (mac_compute_glyph_string_overhangs, init_font_name_table)
1810 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
1811 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
1812 (x_draw_glyph_string_background)
1813 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
1814 XDrawImageString. Always draw background and foreground separately.
1815 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
1816 functions for one-byte chars when using ATSUI-compatible fonts.
1817 (atsu_font_id_hash) [USE_ATSUI]: New variable.
1818 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
1819 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
1820 max_char_or_byte2 more in detail.
1821 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
1822
1823 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
1824
1825 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
1826 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
1827
1828 * unexelf.c (fatal): Fix prototype.
1829
1830 * term.c (fatal): Implement using varargs.
1831
1832 * regex.c (re_char): Move typedef ...
1833 * regex.h (re_char): ... here.
1834 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
1835
1836 * emacs.c (malloc_set_state): Fix return type.
1837 (endif): Fix type.
1838
1839 * lisp.h (fatal): Add argument types.
1840
1841 * dispextern.h (fatal): Delete prototype.
1842
1843 * systime.h (make_time): Prototype moved from ...
1844 * editfns.c (make_time): ... here.
1845
1846 * editfns.c: Move systime.h include after lisp.h.
1847 * dired.c:
1848 * xsmfns.c:
1849 * process.c: Likewise.
1850
1851 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
1852 Add parameter types.
1853 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
1854 (emacs_blocked_free): Change definition to match __free_hook.
1855 (emacs_blocked_malloc): Change definition to match __malloc_hook.
1856 (emacs_blocked_realloc): Change definition to match __realloc_hook.
1857
1858 2005-09-30 Romain Francoise <romain@orebokech.com>
1859
1860 * minibuf.c (Fread_buffer): Follow convention for reading from the
1861 minibuffer with a default value. Doc fix.
1862
1863 2005-09-29 Juri Linkov <juri@jurta.org>
1864
1865 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
1866 Rename argument name `string' to `format-string'.
1867 (Fformat): Doc fix.
1868
1869 2005-09-28 Kim F. Storm <storm@cua.dk>
1870
1871 * image.c (gif_load): Fix size of allocated image buffer
1872 for images where a sub-image may be larger than the image's
1873 total height/width specifications.
1874
1875 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1876
1877 * macgui.h (struct _XCharStruct): Each member now takes short value.
1878
1879 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
1880
1881 * xfaces.c (lookup_derived_face): Add parameter type.
1882
1883 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
1884
1885 * marker.c (verify_bytepos): Add parameter type.
1886
1887 * process.c (get_operating_system_release): Move prototype ...
1888
1889 * systime.h (get_operating_system_release): ... here.
1890
1891 * xterm.c (handle_one_xevent): Refer to union field to match the
1892 type required by the function definition.
1893 (set_vertical_scroll_bar): Move prototype ...
1894
1895 * xterm.h: ... here.
1896
1897 * fns.c (internal_equal, seed_random): Fix prototypes.
1898 (internal_equal): Add missing parameter.
1899
1900 2005-09-25 Richard M. Stallman <rms@gnu.org>
1901
1902 * keyboard.c (update_menu_bindings): Variable deleted.
1903 (syms_of_keyboard): Don't defvar it.
1904 (parse_menu_item): Don't test it.
1905
1906 2005-09-23 Richard M. Stallman <rms@gnu.org>
1907
1908 * editfns.c (Fformat): Explicitly test for end of format string
1909 and don't use `index'.
1910
1911 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
1912
1913 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
1914 Define BROKEN_GET_CURRENT_DIR_NAME.
1915
1916 * sysdep.c (get_current_dir_name): Also define if
1917 BROKEN_GET_CURRENT_DIR_NAME.
1918
1919 * m/ibmrs6000.h: Test for USG5, not USG5_4.
1920
1921 2005-09-22 Kim F. Storm <storm@cua.dk>
1922
1923 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
1924 (message2): Fix commentary. Ok to use alloca'ed memory.
1925 Still not ok to use Lisp string data (because of GC).
1926 (set_message): Add comment why GC cannot happen.
1927
1928 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1929
1930 * macterm.c (xlfdpat_block_match_1): Fix assertion.
1931 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
1932 variants for a scalable font multiple times.
1933
1934 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1935
1936 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
1937 Setup slave tty options before forking.
1938
1939 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1940
1941 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1942 positions have been set for the frame (as is done for frames in
1943 special-display-buffer-names).
1944
1945 2005-09-19 Kim F. Storm <storm@cua.dk>
1946
1947 * editfns.c (Fformat): Don't scan past end of format string that
1948 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1949
1950 2005-09-18 Andreas Schwab <schwab@suse.de>
1951
1952 * window.h (struct window): Remove height_fixed_p, no longer set.
1953
1954 * window.c (make_window): Don't initialize height_fixed_p.
1955 (window_fixed_size_p): Don't use it.
1956
1957 2005-09-18 John Paul Wallington <jpw@pobox.com>
1958
1959 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1960
1961 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1962
1963 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1964
1965 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1966 New variables.
1967 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1968 file selection.
1969
1970 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1971
1972 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1973
1974 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1975 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1976
1977 2005-09-16 Romain Francoise <romain@orebokech.com>
1978
1979 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1980
1981 2005-09-15 Richard M. Stallman <rms@gnu.org>
1982
1983 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1984 (display_mode_element): Instead of `lisp_string' and `this',
1985 record `offset' and increment that.
1986 `last_offset' replaces `last'.
1987
1988 * Makefile.in (XMENU_OBJ): Variable deleted.
1989 (obj): Use xmenu.o unconditionally.
1990 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1991
1992 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1993
1994 2005-09-15 Kim F. Storm <storm@cua.dk>
1995
1996 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1997 (reseat_at_next_visible_line_start): Likewise (in xassert).
1998
1999 2005-09-14 Romain Francoise <romain@orebokech.com>
2000
2001 * fileio.c (write_region_inhibit_fsync): New variable.
2002 (Fwrite_region): Use it to skip call to fsync.
2003 (syms_of_fileio): Initialize it.
2004
2005 2005-09-14 Kenichi Handa <handa@m17n.org>
2006
2007 * coding.c (code_convert_region_unwind): Argument format changed.
2008 (run_pre_post_conversion_on_str): If pre-write-conversion function
2009 changed the current buffer, delete the new buffer.
2010 (run_pre_write_conversin_on_c_str): Likewise.
2011
2012 * fileio.c (Fexpand_file_name): Check multibyteness of
2013 default_directory.
2014
2015 2005-09-13 Kenichi Handa <handa@m17n.org>
2016
2017 * composite.c (compose_chars_in_text): Delete it.
2018
2019 * composite.h (compose_chars_in_text): Delete extern.
2020
2021 2005-09-13 Kim F. Storm <storm@cua.dk>
2022
2023 * print.c (print_error_message): Fix last change.
2024
2025 2005-09-12 Kim F. Storm <storm@cua.dk>
2026
2027 * composite.c (compose_chars_in_text): Fix setup of `pend'.
2028 Unconditionally reload `ptr' and `pend' after eval.
2029
2030 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
2031
2032 * print.c (print_error_message): Pass copy of caller name to
2033 message_dolog.
2034
2035 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
2036
2037 2005-09-12 Kenichi Handa <handa@m17n.org>
2038
2039 * xdisp.c (display_mode_element): Be sure to make variables THIS
2040 and LISP_STRING point into a string data of ELT.
2041
2042 2005-09-12 Kim F. Storm <storm@cua.dk>
2043
2044 * editfns.c (Ftranslate_region_internal): Reload `tt' after
2045 signal_after_change that may have GC'ed.
2046 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
2047
2048 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
2049 after insert while runs signal_after_change.
2050
2051 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
2052 declaration to where it is used.
2053
2054 * w32.c (check_windows_init_file): Fix allocation of error buffer.
2055
2056 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
2057 (x_set_name_internal): Call x_encode_text with new FREEP arg to
2058 know if xfree is needed instead of guessing.
2059
2060 * xterm.h (x_encode_text): Remove prototype.
2061
2062 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
2063
2064 * w32term.c (x_bitmap_icon): Load small icons too.
2065
2066 2005-09-10 Romain Francoise <romain@orebokech.com>
2067
2068 * buffer.c (init_buffer): Grow buffer to add directory separator
2069 and terminal zero. Fix typos.
2070
2071 2005-09-10 Eli Zaretskii <eliz@gnu.org>
2072
2073 * buffer.c (init_buffer): Fix error message for failed call to
2074 get_current_dir_name.
2075 (get_current_dir_name): Remove prototype.
2076
2077 * xsmfns.c (get_current_dir_name): Remove prototype.
2078
2079 * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
2080 Add prototype.
2081
2082 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
2083 Don't #undef NULL after including blockinput.h.
2084
2085 * config.in: Regenerated.
2086
2087 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
2088
2089 Remove the MAXPATHLEN limitations:
2090
2091 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
2092 New function.
2093
2094 * buffer.c (init_buffer): Use it.
2095
2096 * xsmfns.c (smc_save_yourself_CB): Ditto.
2097
2098 2005-09-09 Kim F. Storm <storm@cua.dk>
2099
2100 * doc.c (Fsubstitute_command_keys): Lookup key binding for
2101 commands that are remapped from some other command.
2102
2103 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
2104 flag in disabled rows below the window.
2105
2106 * frame.h (struct frame): New member updated_p.
2107
2108 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
2109 member. Remove local `updated' array and associated variables.
2110
2111 2005-09-07 Kim F. Storm <storm@cua.dk>
2112
2113 * xdisp.c (handle_display_prop): Respect overlay window property.
2114
2115 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
2116 Fixes crash reported by YAMAMOTO Mitsuharu.
2117
2118 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2119
2120 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
2121 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
2122 (xlfdpat_block_match_1, xlfdpat_match): New functions.
2123 (xlfdpat_block_match): New macro.
2124 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
2125 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
2126 (add_font_name_table_entry): Increase font_name_table_size more
2127 rapidly.
2128 (mac_c_string_match): Remove function.
2129 (mac_do_list_fonts): Use XLFD pattern match instead of regular
2130 expression match.
2131
2132 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
2133
2134 2005-09-03 Richard M. Stallman <rms@gnu.org>
2135
2136 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
2137 (move_it_in_display_line_to): Stop after last char on line even
2138 on a windowing terminal, if that's the specified stop position.
2139
2140 * fns.c (Fsort): Doc fix.
2141
2142 * editfns.c (Fpropertize): Don't insist that properties be symbols.
2143
2144 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
2145
2146 * dired.c (directory_files_internal_unwind, directory_files_internal)
2147 (file_name_completion): Use a Save_Value object rather than a cons of
2148 two 16bit ints to store the DIR*.
2149 (directory_files_internal, file_name_completion): Handle both EINTR and
2150 EAGAIN consistently after `readdir'.
2151
2152 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
2153
2154 * intervals.c (update_interval): Add position info in error.
2155
2156 * dispnew.c (window_to_frame_hpos, update_window):
2157 Avoid gcc warning about unused variable `f'.
2158
2159 2005-08-31 Jason Rumney <jasonr@gnu.org>
2160
2161 * w32menu.c (add_menu_item): If unicode_append_menu returns an
2162 error, revert to using AppendMenu.
2163
2164 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2165
2166 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
2167 All uses changed.
2168 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
2169 cases.
2170 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
2171 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
2172 Use posix_pathname_to_fsspec.
2173 [MAC_OS] (xpm_load_image): Fill in background_transparent field
2174 while we have mask.
2175
2176 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
2177
2178 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
2179
2180 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
2181
2182 * syntax.c (update_syntax_table): Properly reproduce the special +1
2183 setting of e_property at the end of the buffer when bumping into the
2184 INTERVALS_AT_ONCE limit.
2185
2186 2005-08-27 Eli Zaretskii <eliz@gnu.org>
2187
2188 * emacs.c (USAGE1): Fix the description of the -Q option.
2189
2190 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
2191
2192 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
2193
2194 2005-08-26 Kim F. Storm <storm@cua.dk>
2195
2196 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
2197 Don't move PT to new window start.
2198
2199 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2200
2201 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
2202 ICONIFY/DEICONIFY_EVENT.
2203
2204 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
2205 Restore background color.
2206 (mac_handle_visibility_change): New function.
2207 (x_make_frame_invisible, x_iconify_frame)
2208 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
2209 [USE_CARBON_EVENTS] (mac_handle_window_event)
2210 (install_window_handler): Handle visibility change events.
2211 (x_make_frame_visible): Don't reposition window if it is iconified
2212 or asked for visible before. Select and uncollapse window when it
2213 is made visible.
2214 (x_make_frame_invisible): Don't reset x_highlight_frame.
2215 (x_iconify_frame): Likewise. Make invisible frame visible before
2216 it is iconified.
2217 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
2218 (do_window_update): Don't change visibility of invisible frame.
2219
2220 2005-08-22 Juri Linkov <juri@jurta.org>
2221
2222 * term.c (turn_on_face): Check for TS_set_foreground and
2223 TS_set_background depending on standout_mode. Simplify.
2224
2225 2005-08-21 Kim F. Storm <storm@cua.dk>
2226
2227 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
2228 bitmaps on fully visible rows.
2229
2230 * fringe.c (update_window_fringes): Replace FORCE_P arg with
2231 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
2232 and return 0.
2233
2234 * xdisp.c (redisplay_window): Call update_window_fringes with
2235 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
2236
2237 2005-08-20 Richard M. Stallman <rms@gnu.org>
2238
2239 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
2240 (resize_mini_window): Set w->start, and PT, so as to display the tail
2241 end of the buffer, if it doesn't all fit.
2242
2243 2005-08-18 Kim F. Storm <storm@cua.dk>
2244
2245 * xdisp.c (calc_pixel_width_or_height): Use actual display
2246 resolution when available instead of Vdisplay_pixels_per_inch.
2247
2248 2005-08-17 Kim F. Storm <storm@cua.dk>
2249
2250 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
2251
2252 * dispnew.c (buffer_posn_from_coords): Check that target row is
2253 within matrix.
2254
2255 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2256
2257 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
2258 xg_set_frame_icon and call it.
2259
2260 * gtkutil.c (xg_set_frame_icon): New function.
2261
2262 * gtkutil.h (xg_set_frame_icon): Declare it.
2263
2264 2005-08-16 Kim F. Storm <storm@cua.dk>
2265
2266 * dispnew.c (increment_row_positions): Skip non-enabled rows.
2267
2268 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
2269 (Fcurrent_window_configuration): Use VECSIZE macro instead.
2270
2271 2005-08-15 Richard M. Stallman <rms@gnu.org>
2272
2273 * xdisp.c (message3_nolog): Clear echo_message_buffer.
2274
2275 2005-08-15 Kim F. Storm <storm@cua.dk>
2276
2277 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
2278
2279 * process.c (deactivate_process, status_notify, read_process_output)
2280 (update_status, status_convert, decode_status, allocate_pty)
2281 (make_process, remove_process, list_processes_1)
2282 (create_process_1, unwind_request_sigio, read_process_output)
2283 (send_process, keyboard_bit_set): Declare static.
2284 (Fdelete_process): Simplify. Pass process to status_notify, so we
2285 don't try to read output from it.
2286 (status_notify): New arg deleting_process--don't try to read
2287 output from that process.
2288
2289 * lisp.h (deactivate_process, status_notify, read_process_output):
2290 Remove prototypes.
2291
2292 2005-08-14 Richard M. Stallman <rms@gnu.org>
2293
2294 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
2295 define_image_type.
2296
2297 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2298
2299 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
2300 (xg_get_image_for_pixmap): Move some code to
2301 xg_get_pixbuf_from_pix_and_mask, and call it.
2302
2303 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
2304
2305 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
2306 to get an GTK icon and set it with GTK functions to avoid having GTK
2307 override an icon set with just X functions.
2308
2309 2005-08-11 Richard M. Stallman <rms@gnu.org>
2310
2311 * image.c (syms_of_image): Init image_types here, and call
2312 define_image_type.
2313 (init_image): Not here.
2314
2315 2005-08-09 Richard M. Stallman <rms@gnu.org>
2316
2317 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
2318
2319 * lisp.h (QUIT): Throw t to Vthrow_on_input.
2320
2321 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
2322
2323 * floatfns.c (Fexpt): Use floats for negative exponent.
2324
2325 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2326
2327 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
2328 should not be there, causing menu display errors with GTK 2.6.9.
2329
2330 2005-08-07 Richard M. Stallman <rms@gnu.org>
2331
2332 * floatfns.c (Fexpt): Undo previous change.
2333
2334 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
2335 so it can be used with various state vectors.
2336
2337 * emacs.c (endif): Convert -script into -scriptload.
2338 (standard_args): Add -scriptload. Allow -basic-display with one dash.
2339
2340 * fns.c (syms_of_fns): Add `emacs' to features.
2341
2342 * term.c (set_terminal_modes): If no TS_termcap_modes string,
2343 output newlines to scroll the old screen contents off the screen.
2344
2345 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
2346
2347 * floatfns.c (Fexpt): Use floats for negative exponent.
2348 Reported by D Goel.
2349
2350 2005-08-02 Richard M. Stallman <rms@gnu.org>
2351
2352 * frame.c (Fframe_char_width): Doc fix.
2353
2354 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
2355
2356 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
2357 Defvar it.
2358
2359 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
2360
2361 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
2362 (my_create_window, my_create_tip_window): Make static.
2363
2364 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
2365 (my_set_foreground_window, my_destroy_window): Make static.
2366
2367 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
2368
2369 Merge gnulib getopt implementation into Emacs.
2370
2371 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
2372 now part of lib-src.
2373
2374 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
2375
2376 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
2377
2378 2005-07-25 Jason Rumney <jasonr@gnu.org>
2379
2380 * w32menu.c (w32_menu_display_help): Suppress tooltip when
2381 navigating menus with the keyboard.
2382
2383 2005-07-23 Richard M. Stallman <rms@gnu.org>
2384
2385 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
2386
2387 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
2388 gc_relative_threshold, one by one.
2389
2390 * keyboard.c (read_char): Test gc_cons_threshold.
2391 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
2392
2393 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
2394 gc_relative_threshold, one by one.
2395
2396 * alloc.c (gc_cons_threshold): Not static.
2397 (gc_cons_combined_threshold): Var deleted.
2398 (gc_relative_threshold): New variable.
2399 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
2400 instead of gc_cons_combined_threshold.
2401
2402 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
2403 (gc_cons_combined_threshold): Declaration deleted.
2404
2405 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2406
2407 * mac.c: Don't include stdlib.h or string.h.
2408 (Fdo_applescript, Fmac_file_name_to_posix)
2409 (Fmac_file_name_to_posix): Doc fixes.
2410 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
2411 (Fmac_code_convert_string): Likewise.
2412 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
2413 if the executable is not contained in a bundle.
2414
2415 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
2416 (gray_width, gray_height): Remove defines.
2417 (gray_bits, gray_bitmap_width, gray_bitmap_height)
2418 (gray_bitmap_bits): Remove variables.
2419 (lispy_function_keys): Remove extern.
2420 (free_frame_menubar): Add extern.
2421 (x_window_to_frame): Remove function.
2422 (unwind_create_tip_frame): Add declaration.
2423 (x_set_name_internal): New function.
2424 (x_set_name, x_set_title): Use it.
2425 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
2426 (Fx_display_pixel_height, Fx_display_planes)
2427 (Fx_display_color_cells, Fx_server_max_request_size)
2428 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2429 (Fx_display_mm_height, Fx_display_mm_width)
2430 (Fx_display_backing_store, Fx_display_visual_class)
2431 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
2432
2433 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2434
2435 * macselect.c (Fx_own_selection_internal): Follow error conventions.
2436 (Fx_get_selection_internal, Fx_selection_owner_p)
2437 (Fx_selection_exists_p): Doc fixes.
2438 (syms_of_macselect) <selection-converter-alist>: Likewise.
2439
2440 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
2441
2442 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2443
2444 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
2445 (Fccl_execute_on_string): Likewise; add usage info.
2446
2447 * composite.c (Fcompose_region_internal)
2448 (Fcompose_string_internal):
2449 Improve argument/docstring consistency.
2450
2451 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
2452 Fix typos in docstrings.
2453
2454 * textprop.c (Fnext_char_property_change)
2455 (Fprevious_char_property_change): Doc fixes.
2456
2457 * window.c (Fset_window_margins, Fset_window_fringes):
2458 Improve argument/docstring consistency.
2459
2460 * xfaces.c (Finternal_lisp_face_p): Doc fix.
2461
2462 2005-07-21 Andreas Schwab <schwab@suse.de>
2463
2464 * eval.c (restore_stack_limits): Return a value.
2465
2466 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
2467
2468 * eval.c (Fdefvar): Doc fix.
2469
2470 2005-07-20 Kim F. Storm <storm@cua.dk>
2471
2472 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
2473 Use make_save_value to unwind protect stream.
2474
2475 * lread.c (Fload, load_unwind):
2476 Use make_save_value to unwind protect stream.
2477
2478 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
2479
2480 * eval.c (Fprog2, Fcalled_interactively_p),
2481 (syms_of_eval) <debug-on-quit>: Doc fixes.
2482 (syms_of_eval) <max-specpdl-size>:
2483 (Finteractive_p): Fix typos in docstrings.
2484
2485 2005-07-19 Kim F. Storm <storm@cua.dk>
2486
2487 * w32fns.c (Vx_hand_shape): Variable removed.
2488 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
2489
2490 2005-07-19 Kenichi Handa <handa@m17n.org>
2491
2492 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
2493
2494 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
2495
2496 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
2497
2498 2005-07-18 Kim F. Storm <storm@cua.dk>
2499
2500 * frame.h (struct frame): New member already_hscrolled_p.
2501
2502 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
2503 to avoid redisplay looping hscrolling back and forth ad infinitum.
2504
2505 2005-07-18 Juri Linkov <juri@jurta.org>
2506
2507 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
2508 * keymap.c (Fminor_mode_key_binding):
2509 * macterm.c (mac-emulate-three-button-mouse):
2510 Delete duplicate duplicate words.
2511
2512 2005-07-18 Ken Raeburn <raeburn@gnu.org>
2513
2514 * minibuf.c (Ftest_completion): Fix odd syntax in test.
2515
2516 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2517
2518 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
2519
2520 * macgui.h (struct _XGC): New struct.
2521 (GC): Use it.
2522 (GCForeground, GCBackground, GCFont): Use X11 mask values.
2523 (XCreateGC, XParseGeometry): Move externs to macterm.h.
2524
2525 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
2526 (XSetFont): Add declaration.
2527 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
2528 Remove functions.
2529 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
2530 New defines.
2531 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
2532 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
2533 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
2534 Use them.
2535 (mac_erase_rectangle): New function.
2536 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
2537 (x_draw_stretch_glyph_string): Use it.
2538 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
2539 (XSetBackground, XSetFont): Adjust for new GC implementation.
2540 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
2541 (XTset_vertical_scroll_bar): Clear area under scroll bar.
2542
2543 * macterm.h (struct mac_display_info): Change types of
2544 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
2545 (XCreateGC, XParseGeometry): Move externs from macgui.h.
2546
2547 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
2548
2549 2005-07-16 Richard M. Stallman <rms@gnu.org>
2550
2551 * buffer.c (Fmake_overlay): Doc fix.
2552
2553 2005-07-16 Eli Zaretskii <eliz@gnu.org>
2554
2555 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
2556 Vw32_valid_locale_ids, and Vw32_valid_codepages.
2557
2558 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2559
2560 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
2561 Use Fstring_as_unibyte instead of string_make_unibyte.
2562
2563 2005-07-15 Richard M. Stallman <rms@gnu.org>
2564
2565 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
2566
2567 2005-07-15 Kim F. Storm <storm@cua.dk>
2568
2569 * xdisp.c: Fix redisplay loop in last change.
2570 (IT_POS_VALID_AFTER_MOVE_P): New macro.
2571 (move_it_vertically_backward, move_it_by_lines): Use it.
2572
2573 2005-07-14 Jason Rumney <jasonr@gnu.org>
2574
2575 * w32.c (init_environment): Default HOME directory to user's
2576 appdata directory if possible.
2577
2578 2005-07-14 Kim F. Storm <storm@cua.dk>
2579
2580 * .gdbinit (pitx): Fix output format. Print string charpos.
2581
2582 * lread.c (syms_of_lread): Initialize seen_list.
2583
2584 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
2585
2586 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
2587 Staticpro re_match_object.
2588
2589 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2590
2591 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
2592 dereference.
2593
2594 * macterm.c (mac_window_to_frame): Remove duplicate define.
2595
2596 2005-07-14 Kenichi Handa <handa@m17n.org>
2597
2598 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
2599 (code_convert_region): Adjust for the above change.
2600 (set_conversion_work_buffer): If the work buffer is already in
2601 use, generate a new buffer and return it. Otherwise return Qnil.
2602 (run_pre_post_conversion_on_str): Adjust for the above change.
2603 (run_pre_write_conversin_on_c_str): Likewise.
2604
2605 2005-07-13 Kim F. Storm <storm@cua.dk>
2606
2607 * xdisp.c (start_display): Don't reseat to next visible line start
2608 if current start position is in a string or image.
2609 (move_it_vertically_backward): Be sure to move out of strings and
2610 images when moving it2 forward.
2611 (move_it_by_lines): When moving forward, move to next buffer
2612 position if we end up in a string or image. When moving backward,
2613 count rows moved over when moving to start of current row in case
2614 row starts in middle of a string or image. Also move further
2615 backward if we end up in a string or image.
2616 (try_cursor_movement): If overlay string spans multiple lines,
2617 move backward to set cursor on start of an overlay string.
2618 (cursor_row_p): Row is ok if cursor is at newline from string, but
2619 string starts on this line (so we always position cursor at start
2620 of string).
2621
2622 * indent.c (Fvertical_motion): If start position is on an image,
2623 don't move back if we move too far (that's almost certain to happen).
2624
2625 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
2626 row in minibuffer windows.
2627 (try_window): Don't check margins in minibuffer windows.
2628
2629 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2630
2631 * macterm.c: Don't include stdlib.h or composite.h.
2632 (x_use_underline_position_properties, last_mouse_press_frame)
2633 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
2634 (syms_of_macterm, mac_initialize): Don't initialize them.
2635 (waiting_for_input, initial_argv, initial_argc)
2636 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
2637 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
2638 (extra_keyboard_modifiers): Fix type in extern.
2639 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
2640 (x_scroll_bar_report_motion): Add argument types to declaration.
2641 (mac_compute_glyph_string_overhangs): Add declaration.
2642 (disable_mouse_highlight): Remove unused variable.
2643 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
2644 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
2645 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
2646 All callers changed.
2647 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
2648 timestamp.
2649 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
2650 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
2651 only when its width is less than the height.
2652 (XTredeem_scroll_bar): Sync with xterm.c.
2653 (font_name_table, font_name_table_size, font_name_count):
2654 Make static.
2655 (drag_and_drop_file_list): Remove variable. Previous use is now
2656 local to function.
2657 (do_ae_open_documents): Move DRAG_N_DROP event construction part
2658 from XTread_socket.
2659 (XTread_socket): Consolidate setting of event timestamp.
2660 Move DRAG_N_DROP event construction part to do_ae_open_documents.
2661 Support extra_keyboard_modifiers.
2662
2663 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
2664 beginning with that for ASCII.
2665
2666 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
2667
2668 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
2669 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
2670 (syms_of_alloc): Declare gc-cons-percentage.
2671
2672 * eval.c (Feval, Ffuncall):
2673 * keyboard.c (read_char):
2674 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
2675
2676 * lisp.h (gc_cons_combined_threshold): Declare.
2677
2678 2005-07-12 Kim F. Storm <storm@cua.dk>
2679
2680 * coding.c (Qprocess_argument):
2681 * coding.h (Qprocess_argument): Remove unused var.
2682
2683 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
2684
2685 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2686
2687 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
2688 Endian.h.
2689 [!MAC_OSX] (fchmod, fchown): New functions.
2690 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
2691 Use SBYTES and EndianU32_BtoN.
2692 (mac_get_object_from_code): Return 4 byte string even if argument
2693 is 0. Use make_unibyte_string and EndianU32_NtoB.
2694 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
2695 (Fmac_set_file_type): Fix documents and argument declarations.
2696 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
2697
2698 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
2699
2700 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
2701
2702 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2703
2704 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
2705 Lucid if X_I18N, font otherwise.
2706
2707 2005-07-10 Steven Tamm <steventamm@mac.com>
2708
2709 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
2710 (Fmac_set_file_type, Fmac_set_file_creator): Add.
2711 (mac_get_object_from_code, mac_get_code_from_arg): Add.
2712
2713 2005-07-10 Richard M. Stallman <rms@gnu.org>
2714
2715 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
2716 (syms_of_lread): Set up eval-buffer-list.
2717 (Feval_buffer, Feval_region): Bind eval-buffer-list.
2718
2719 2005-07-08 Richard M. Stallman <rms@gnu.org>
2720
2721 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
2722
2723 2005-07-08 Kim F. Storm <storm@cua.dk>
2724
2725 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
2726 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
2727
2728 2005-07-07 Kim F. Storm <storm@cua.dk>
2729
2730 * window.c (Frecenter): Fix last change (set iarg before use).
2731
2732 2005-07-06 Richard M. Stallman <rms@gnu.org>
2733
2734 * window.c (Frecenter): When arg is inside the scroll margin,
2735 move it out of the margin.
2736
2737 2005-07-06 Jason Rumney <jasonr@gnu.org>
2738
2739 * w32console.c (initialize_w32_display): Detect when the console
2740 dimensions are insane, and default to 80x25 instead.
2741 (w32_use_full_screen_buffer): Default to NIL.
2742
2743 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2744
2745 * macterm.c (mac_draw_vertical_window_border): Use foreground of
2746 VERTICAL_BORDER_FACE_ID for vertical border line.
2747 (mac_encode_char): Call check_ccl_update in advance.
2748 (mac_to_x_fontname, x_font_name_to_mac_font_name)
2749 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
2750 Don't assume that font family length is less than 32.
2751 (x_compute_min_glyph_bounds): Make static.
2752 (x_load_font): Never set fonts_changed_p to zero.
2753
2754 2005-07-04 Lute Kamstra <lute@gnu.org>
2755
2756 * Update FSF's address in GPL notices.
2757
2758 2005-07-03 Richard M. Stallman <rms@gnu.org>
2759
2760 * xdisp.c (try_window): Fix previous change in how it handles
2761 a partially-visible line or one only partly past the margin.
2762
2763 * window.c (window_scroll_pixel_based): Take account
2764 of this_scroll_margin when finding point when scrolling up.
2765
2766 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
2767
2768 * window.c (window_scroll_pixel_based, window_scroll_line_based):
2769 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
2770 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
2771
2772 2005-07-02 Juri Linkov <juri@jurta.org>
2773
2774 * w32term.c (w32_draw_vertical_window_border): Use foreground of
2775 VERTICAL_BORDER_FACE_ID for vertical border line.
2776
2777 2005-07-02 Eli Zaretskii <eliz@gnu.org>
2778
2779 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
2780 fchmod so that chmod doesn't get called on MSDOS before the file
2781 is closed.
2782
2783 2005-07-01 Jason Rumney <jasonr@gnu.org>
2784
2785 * w32term.c (cleartype_active): New flag for enabling sub-pixel
2786 workaround.
2787 (w32_initialize): Initialize it.
2788 (w32_native_per_char_metric): Allow a couple of extra pixels when
2789 Cleartype is active.
2790
2791 * w32term.c (w32_initialize): Move check for screen reader here
2792 from syms_of_w32term.
2793
2794 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2795
2796 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
2797 is not zero.
2798
2799 2005-07-01 Masatake YAMATO <jet@gyve.org>
2800
2801 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
2802
2803 2005-06-30 Juri Linkov <juri@jurta.org>
2804
2805 * xdisp.c (x_draw_vertical_border): If left fringe is not present
2806 decrease x coord of vertical border by 1 pixel to not occupy text
2807 area of the right window.
2808
2809 * xterm.c (x_draw_vertical_window_border): Use foreground of
2810 VERTICAL_BORDER_FACE_ID for vertical border line.
2811
2812 * term.c (turn_on_face): In standout mode apply specified
2813 fg to bg, and specified bg to fg (this makes the logic of
2814 inversion on terminal consistent with X).
2815
2816 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
2817
2818 * eval.c (user_variable_p_eh): New function.
2819 (Fuser_variable_p): Use it. Clarify docstring.
2820 Return t for aliases of user options, nil for alias loops.
2821
2822 2005-06-27 Richard M. Stallman <rms@gnu.org>
2823
2824 * eval.c (Fdefvar): Improve error message.
2825
2826 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2827
2828 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
2829 change.
2830
2831 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
2832
2833 * eval.c (Fdefvar): Don't try to set constant symbols.
2834
2835 2005-06-25 Richard M. Stallman <rms@gnu.org>
2836
2837 * macfns.c (Fx_show_tip): Pass new arg to try_window.
2838
2839 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
2840
2841 * xfns.c (Fx_show_tip): Pass new arg to try_window.
2842
2843 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
2844 (redisplay_window): Handle try_window reporting point in scroll margin.
2845
2846 * dispextern.h (try_window): Declare new arg.
2847
2848 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
2849 Use fchmod to copy the file modes.
2850 (Frename_file): Don't copy UID and GID here;
2851 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
2852
2853 * eval.c (call_debugger): Take full care of extending stack limits
2854 to make space for the debugger, and restore the change afterward.
2855 Bind debug-on-error to nil.
2856 (restore_stack_limits): New subroutine.
2857 (Fsignal): Extend specpdl bound along with eval depth bound,
2858 for calling edebug. Don't do either one, for calling debugger.
2859 (find_handler_clause): Don't bind debug-on-error here.
2860 Don't unbind anything either.
2861 Temporarily advance max_specpdl_size for calling
2862 internal_with_output_to_temp_buffer.
2863 (grow_specpdl): Don't alter max_specpdl_size before signaling
2864 an error.
2865 (syms_of_eval) <max-specpdl-size>: Doc fix.
2866
2867 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
2868
2869 2005-06-24 Eli Zaretskii <eliz@gnu.org>
2870
2871 * fileio.c (Frename_file): Undo last change: no need to ifdef away
2872 chown on DOS_NT platforms.
2873
2874 * w32.c (sys_chown): New function.
2875
2876 * s/ms-w32.h (chown): New; define to sys_chown.
2877
2878 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
2879
2880 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
2881 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
2882
2883 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
2884
2885 2005-06-23 Richard M. Stallman <rms@gnu.org>
2886
2887 * xdisp.c (get_next_display_element): Finish reversing the tests of
2888 Vnobreak_char_display.
2889
2890 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
2891 All uses changed.
2892 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
2893 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
2894
2895 * fileio.c (Frename_file): Preserve owner and group, if possible,
2896 when copying.
2897
2898 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
2899
2900 * abbrev.c (Funexpand_abbrev):
2901 * category.c (Fmake_category_set):
2902 * dispnew.c (Fsleep_for, Fsit_for):
2903 * editfns.c (Fsubst_char_in_region):
2904 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
2905 * frame.c (make_frame_without_minibuffer):
2906 * lread.c (read_vector):
2907 * macfns.c (check_x_frame):
2908 * process.c (Fstop_process, Fcontinue_process):
2909 * search.c (Freplace_match):
2910 * syntax.c (Fstring_to_syntax):
2911 * w32fns.c (check_x_frame, check_x_display_info):
2912 * xfaces.c (x_supports_face_attributes_p):
2913 * xselect.c (Fx_own_selection_internal): Follow error conventions.
2914
2915 * image.c (fn_png_init_io): Don't define it.
2916 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
2917 (png_read_from_file): New function, based on png_read_from_memory.
2918 (png_load): Use it, instead of fn_png_init_io.
2919
2920 2005-06-23 Kim F. Storm <storm@cua.dk>
2921
2922 * search.c (Fmatch_data): Remove evaporate option.
2923 (Fset_match_data): Do not mention evaporate option in doc string.
2924 Add commentary explaining evaporate arg (for internal use only).
2925 (unwind_set_match_data): Add comment on evaporate use.
2926
2927 2005-06-22 Miles Bader <miles@gnu.org>
2928
2929 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
2930 (realize_basic_faces, syms_of_xfaces): Update references to it.
2931 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
2932 to `VERTICAL_BORDER_FACE_ID'.
2933 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2934
2935 2005-06-21 Juri Linkov <juri@jurta.org>
2936
2937 * dispextern.h: Add extern Qframe_set_background_mode.
2938
2939 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2940 Qframe_set_background_mode.
2941
2942 * frame.c (Fmodify_frame_parameters):
2943 Call frame-set-background-mode after changing the background color
2944 on non-window non-dos branch.
2945
2946 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2947
2948 * fns.c (Fchar_table_range):
2949 * process.c (Fmake_network_process): Fix spellings.
2950
2951 2005-06-20 Kim F. Storm <storm@cua.dk>
2952
2953 * fns.c (Fsort): Doc fix.
2954
2955 2005-06-20 Miles Bader <miles@gnu.org>
2956
2957 * xfaces.c (Qvertical_divider): New variable.
2958 (realize_basic_faces): Realize its face.
2959 (syms_of_xfaces): Initialize it.
2960
2961 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2962
2963 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2964 window-separator on ttys using `vertical-divider' face by default.
2965
2966 2005-06-17 Richard M. Stallman <rms@gnu.org>
2967
2968 * xdisp.c (get_next_display_element):
2969 Reverse test of Vshow_nonbreak_escape.
2970
2971 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2972 (Ftty_no_underline): New function.
2973 (syms_of_term): defsubr it.
2974
2975 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2976
2977 * dispnew.c (spec_glyph_lookup_face): New function.
2978 (build_frame_matrix_from_leaf_window): Use it.
2979
2980 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2981
2982 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2983
2984 2005-06-12 Richard M. Stallman <rms@gnu.org>
2985
2986 * keyboard.c (read_char): After catching a longjmp,
2987 call restore_getcjmp.
2988
2989 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2990
2991 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2992
2993 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2994
2995 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2996 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2997 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2998 events.
2999 (XTread_socket): Don't pass keyboard events with the option
3000 modifier to the system when Vmac_command_key_is_meta is nil or
3001 Vmac_option_modifier is non-nil.
3002 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
3003 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
3004 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
3005 handler function.
3006 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
3007 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
3008 handler part to mac_handle_mouse_event.
3009
3010 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
3011
3012 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
3013 NEW-ALIAS and BASE-VARIABLE, respectively.
3014
3015 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
3016
3017 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
3018 (get_phys_cursor_geometry, format_mode_line_unwind_data)
3019 (get_line_height_property, x_produce_glyphs): Remove unused vars.
3020
3021 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
3022
3023 2005-06-13 Eli Zaretskii <eliz@gnu.org>
3024
3025 * w32term.c (x_use_underline_position_properties): New variable.
3026 (x_draw_glyph_string): Remind in a comment to change doc string of
3027 x-use-underline-position-properties if/when underline positioning
3028 is implemented.
3029 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
3030 and initialize it to nil.
3031
3032 2005-06-12 Jason Rumney <jasonr@gnu.org>
3033
3034 * w32fns.c (NEWOPENFILENAME): New struct.
3035 (Fx_file_dialog): Use it to trick the system into giving us up to
3036 date dialogs on systems that are documented to support it.
3037 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
3038
3039 2005-06-12 Eli Zaretskii <eliz@gnu.org>
3040
3041 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
3042 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
3043
3044 2005-06-11 Eli Zaretskii <eliz@gnu.org>
3045
3046 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
3047 to CreateDIBSection to avoid a compiler warning.
3048 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
3049 warning.
3050 (png_load): Cast return values of fn_png_create_read_struct and
3051 fn_png_create_info_struct, to avoid compiler warnings on W32.
3052 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
3053 to avoid compiler warnings.
3054 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
3055 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
3056 avoid a compiler warning.
3057 (tiff_load): Cast return values of fn_TIFFOpen and
3058 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
3059 to IMAGE_BACKGROUND to avoid a compiler warning.
3060 (gif_load): Cast return values of fn_DGifOpenFileName and
3061 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
3062 IMAGE_BACKGROUND to avoid a compiler warning.
3063 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
3064 before redefining.
3065
3066 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
3067 the call to CreateDIBSection, to avoid a compiler warning.
3068
3069 2005-06-11 Jason Rumney <jasonr@gnu.org>
3070
3071 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
3072 minibuffer.
3073 * macfns.c (Fx_file_dialog): Likewise.
3074
3075 2005-06-10 Eli Zaretskii <eliz@gnu.org>
3076
3077 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
3078
3079 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
3080
3081 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
3082 * w32fns.c (syms_of_w32fns): Fix spellings.
3083
3084 2005-06-10 Eli Zaretskii <eliz@gnu.org>
3085
3086 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
3087 `verbose'; print diagnostic messages only if it is non-zero.
3088 All callers changed to pass a zero value unless DEBUG_DUMP is defined
3089 in the environment.
3090 (copy_executable_and_dump_data): Print section names with %.8s.
3091
3092 2005-06-10 Masatake YAMATO <jet@gyve.org>
3093
3094 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
3095 when mouse_face is not given.
3096
3097 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
3098
3099 * window.c (Fselect_window): Adapt call to Fselect_frame.
3100
3101 * lisp.h: Update EXFUN of Fselect_frame.
3102
3103 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
3104
3105 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
3106 no_enter.
3107 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
3108 Adapt to above change.
3109
3110 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
3111
3112 * fns.c (Fmemq, Fmaphash): Doc fixes.
3113
3114 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
3115
3116 * xfaces.c (Fdisplay_supports_face_attributes_p):
3117 Fix typo in docstring.
3118
3119 2005-06-08 Steven Tamm <steventamm@mac.com>
3120
3121 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
3122 used by gcc4 on intel mac.
3123
3124 2005-06-09 Kim F. Storm <storm@cua.dk>
3125
3126 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
3127 in REUSE list if non-nil; free them if equal to evaporate.
3128 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
3129 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
3130 (restore_search_regs): Rename from restore_match_data. Uses changed.
3131 (unwind_set_match_data): New function.
3132 (record_unwind_save_match_data): New function like save-match-data.
3133
3134 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
3135 (record_unwind_save_match_data): Add prototype.
3136 (restore_search_regs): Rename from restore_match_data.
3137
3138 * composite.c (compose_chars_in_text):
3139 * eval.c (do_autoload):
3140 * macmenu.c (set_frame_menubar):
3141 * process.c (read_process_output, exec_sentinel):
3142 * xmenu.c (set_frame_menubar):
3143 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
3144 * w32menu.c (set_frame_menubar):
3145 Use record_unwind_save_match_data.
3146
3147 2005-06-08 Richard M. Stallman <rms@gnu.org>
3148
3149 * xdisp.c (get_next_display_element): Alter previous change:
3150 Distinguish Vshow_nonbreak_escape = t or not t.
3151 For t, use escape_glyph once again, as before previous change.
3152 Use space or hyphen for display, instead of the non-ASCII char.
3153 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
3154
3155 * process.c (Fstart_process): Don't touch command_channel_p slot.
3156
3157 * process.h (struct process): Delete command_channel_p.
3158
3159 2005-06-07 Masatake YAMATO <jet@gyve.org>
3160
3161 * xdisp.c (note_mode_line_or_margin_highlight):
3162 Check the overlapping of re-rendering area to avoid flickering.
3163 (note_mouse_highlight): Call clear_mouse_face if PART
3164 is not ON_MODE_LINE nor ON_HEADER_LINE.
3165
3166 2005-06-07 Kim F. Storm <storm@cua.dk>
3167
3168 * process.c: Improve commentary for adaptive read buffering.
3169
3170 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
3171
3172 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
3173 if available.
3174
3175 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3176
3177 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
3178 New functions for popping down menus on C-g.
3179 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
3180
3181 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
3182 non-static.
3183
3184 * config.in: Add HAVE_CANCELMENUTRACKING.
3185
3186 2005-06-06 Eli Zaretskii <eliz@gnu.org>
3187
3188 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
3189
3190 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
3191
3192 * w32proc.c (RVA_TO_PTR): New macro.
3193
3194 * w32heap.c (RVA_TO_PTR): No need to #undef now.
3195
3196 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
3197 Depend on w32heap.h.
3198
3199 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
3200
3201 * keyboard.c (command_loop_1): Update Vthis_original_command.
3202
3203 2005-06-06 Richard M. Stallman <rms@gnu.org>
3204
3205 * xmenu.c (popup_get_selection): Undo previous change.
3206
3207 2005-06-06 Juri Linkov <juri@jurta.org>
3208
3209 * xdisp.c (Qno_break_space): New variable.
3210 (syms_of_xdisp): Initialize it.
3211 (get_next_display_element): Add no-break space and soft hypen
3212 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
3213 Use `no-break-space' face for no-break spaces.
3214
3215 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3216
3217 * window.c (delete_window): Handle the case where a h/vchild has
3218 a h/vchild.
3219
3220 2005-06-05 Eli Zaretskii <eliz@gnu.org>
3221
3222 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
3223 call to pfn_setsockopt, cast optval to `const char *'.
3224
3225 2005-06-04 Eli Zaretskii <eliz@gnu.org>
3226
3227 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
3228 (open_unc_volume): Cast return value of map_w32_filename, to avoid
3229 compiler warnings.
3230
3231 * s/ms-w32.h (fileno): Don't define if already defined.
3232
3233 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
3234
3235 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
3236
3237 2005-06-04 Richard M. Stallman <rms@gnu.org>
3238
3239 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
3240
3241 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3242
3243 * macmenu.c (cleanup_popup_menu): New function.
3244 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
3245 mac_menu_show Quit:s.
3246 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
3247 a dialog).
3248
3249 2005-06-04 Kim F. Storm <storm@cua.dk>
3250
3251 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
3252
3253 * callproc.c (Fcall_process): Don't use alloca to gradually
3254 increase size of buf, as it effectively uses twice the necessary
3255 space on the stack. Instead, pre-allocate buf of full size, and
3256 gradually increase the read size.
3257
3258 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
3259
3260 * eval.c (unbind_to): Preserve value of Vquit_flag.
3261
3262 * xterm.c (handle_one_xevent): Also ignore mouse motion just
3263 before a button release event.
3264
3265 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
3266
3267 * xfaces.c (Finternal_lisp_face_equal_p): Really report
3268 on faces in a frame, if the argument FRAME is non-nil.
3269 Improve argument/docstring consistency.
3270
3271 2005-06-02 Kim F. Storm <storm@cua.dk>
3272
3273 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
3274 (x_consider_frame_title, Fformat_mode_line): Save offset into
3275 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
3276
3277 2005-06-01 Kim F. Storm <storm@cua.dk>
3278
3279 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
3280
3281 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3282
3283 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
3284 resolution fields for scalable fonts to 0.
3285
3286 * xfaces.c (build_scalable_font_name): Round pixel size to the
3287 nearest integer.
3288
3289 2005-06-01 Kim F. Storm <storm@cua.dk>
3290
3291 * xdisp.c (display_mode_line): Support nested calls to redisplay
3292 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
3293
3294 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
3295
3296 * fileio.c (Finsert_file_contents):
3297 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
3298
3299 2005-05-31 Kim F. Storm <storm@cua.dk>
3300
3301 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
3302 (mode_line_noprop_ptr): Rename from frame_title_*.
3303 (store_mode_line_noprop_char): Rename from store_frame_title_char.
3304 (store_mode_line_noprop): Rename from store_frame_title.
3305 (mode_line_target): New enum to specify current output target
3306 for mode line formatting.
3307 (display_mode_element): Test it rather than frame_title_ptr and
3308 mode_line_string_list to determine where output should go.
3309 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
3310 (Vmode_line_unwind_vector): New variable.
3311 (format_mode_line_unwind_data, unwind_format_mode_line):
3312 New functions for unwind protection in mode line formatting.
3313 (x_consider_frame_title): Use them and new local var 'title_start'
3314 to support nested calls to format-mode-line and redisplay.
3315 Set mode_line_target to MODE_LINE_TITLE.
3316 (Fformat_mode_line): Use them and new local var 'string_start' to
3317 support nested calls to format-mode-line and redisplay.
3318 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
3319 Don't trim trailing dashes.
3320 (decode_mode_spec): Don't make infinite number of trailing dashes
3321 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
3322 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
3323 mode_line_string_face_prop, and Vmode_line_unwind_vector.
3324 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
3325 Initialize mode_line_target to MODE_LINE_DISPLAY.
3326
3327 2005-05-29 Richard M. Stallman <rms@gnu.org>
3328
3329 * buffer.c (Fbuffer_local_value): Call indirect_variable.
3330
3331 2005-05-28 Masatake YAMATO <jet@gyve.org>
3332
3333 * xdisp.c (note_mode_line_or_margin_highlight): Change the
3334 pointer to a hand cursor when hoovering over a mouse-face.
3335
3336 2005-05-27 Kenichi Handa <handa@m17n.org>
3337
3338 * xterm.c (x_encode_char): Call check_ccl_update in advance.
3339
3340 * ccl.c: Now an element of Vccl_program_table is a vector of
3341 length 4, not 3.
3342 (ccl_get_compiled_code): New arg idx. Caller changed.
3343 Adjust for the change of Vccl_program_table.
3344 (setup_ccl_program): Adjust for the change of Vccl_program_table.
3345 (check_ccl_update): New function.
3346 (Fregister_ccl_program): Use ASET to set an element of a vector.
3347 Adjusted for the change of Vccl_program_table.
3348
3349 * ccl.h (struct ccl_program): New member idx.
3350 (check_ccl_update): Extern it.
3351
3352 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
3353
3354 * image.c (Vimage_library_alist): Move from image.el.
3355 (syms_of_image): Defvar it.
3356 (lookup_image_type): Use it.
3357
3358 * buffer.c (Fbuffer_local_value): Make argument name match its use
3359 in docstring.
3360
3361 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
3362
3363 * keyboard.c (Frecursive_edit): Fix typo in docstring.
3364 (Fposn_at_x_y): Make argument name match its use in docstring.
3365
3366 2005-05-26 Lute Kamstra <lute@gnu.org>
3367
3368 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
3369
3370 2005-05-24 Masatake YAMATO <jet@gyve.org>
3371
3372 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
3373 as loop sentinels.
3374
3375 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
3376
3377 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
3378 select frame title ("Question"/"Information").
3379 (xdialog_show): Use it.
3380
3381 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
3382
3383 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
3384
3385 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
3386 a third argument (Qnil).
3387
3388 * lisp.h: x-popup-dialog can have three arguments.
3389
3390 * editfns.c (Fmessage_box): Use "Information" for frame title.
3391
3392 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
3393
3394 * termcap.c [VMS]: Include <starlet.h>.
3395
3396 2005-05-23 Masatake YAMATO <jet@gyve.org>
3397
3398 * xdisp.c (note_mode_line_or_margin_highlight): Add code
3399 for mouse-face. Change the type of the first argument from `window'
3400 to `Lisp_Object'.
3401 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
3402 window instead of w.
3403
3404 2005-05-22 Andreas Schwab <schwab@suse.de>
3405
3406 * process.c (send_process): Move misplaced volatile.
3407
3408 2005-05-21 Richard M. Stallman <rms@gnu.org>
3409
3410 * xdisp.c (display_mode_element): If we're processing a list and
3411 padding is specified, put it after the last element.
3412
3413 2005-05-21 Eli Zaretskii <eliz@gnu.org>
3414
3415 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
3416 "superroot" on DOS_NT systems.
3417
3418 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
3419
3420 * process.c (send_process): Restore the SIGPIPE handler if we
3421 catch a SIGPIPE.
3422
3423 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
3424
3425 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
3426 misleading comments).
3427 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
3428
3429 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
3430
3431 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
3432 Correct the right value.
3433
3434 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
3435
3436 * keyboard.c (syms_of_keyboard): Remove Lisp variables
3437 post-command-idle-hook and post-command-idle-delay.
3438 (command_loop_1): Don't try to execute post-command-idle-hook.
3439
3440 2005-05-16 Kim F. Storm <storm@cua.dk>
3441
3442 * xdisp.c (handle_display_prop): Handle empty replacement.
3443 (handle_single_display_spec): Return -1 for empty replacement.
3444
3445 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
3446
3447 * .gdbinit (pitx): Print more info about iterator.
3448
3449 2005-05-16 Andreas Schwab <schwab@suse.de>
3450
3451 * unexmacosx.c (unexec_realloc): Move declarations before statements.
3452
3453 2005-05-14 Richard M. Stallman <rms@gnu.org>
3454
3455 * xdisp.c (message3): Call cancel_echoing.
3456
3457 * alloc.c (Fmemory_full_p): New function.
3458 (syms_of_alloc): defsubr it.
3459
3460 * process.c (send_process_trap): Unblock SIGPIPE.
3461 (send_process): Reset SIGPIPE handler before reporting error.
3462
3463 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
3464
3465 * emacs.c (syms_of_emacs): Fix doc string for system-type.
3466
3467 2005-05-13 Richard M. Stallman <rms@gnu.org>
3468
3469 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
3470 (Finsert_file_contents): If we read 0 bytes from a special file,
3471 unlock the visited file if we locked it.
3472 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
3473 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
3474
3475 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3476
3477 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
3478
3479 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
3480 Regard toolkit scroll bar thumb drag events as squeezable and prevent
3481 redisplay from being paused by them.
3482
3483 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
3484 [!MAC_OSX] (target_ticks): Remove variable.
3485 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
3486 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
3487 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
3488 event occurs before timeout, behave as if the function were interrupted.
3489 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
3490 handling using Time Manager routines.
3491 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
3492 New variables.
3493 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
3494 (setitimer): New functions.
3495
3496 * macfns.c, macmenu.c: Don't include signal.h.
3497
3498 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
3499 Rename from get_control_part_bound. All callers changed.
3500 (x_scroll_bar_clear): New function.
3501 (x_clear_frame): Use it.
3502 (XTset_vertical_scroll_bar): Don't call Draw1Control.
3503 (x_scroll_bar_handle_click): Change type of second argument from
3504 int to ControlPartCode.
3505 (check_alarm): Remove declaration.
3506 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
3507 (XTread_socket): Use ControlPartCode instead of SInt16.
3508
3509 2005-05-13 Nozomu Ando <nand@mac.com>
3510
3511 * unexmacosx.c: Include assert.h.
3512 (MACOSX_MALLOC_MULT16): New define.
3513 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
3514 ptr is in unexec regions by checking it is multiple of 16.
3515 (unexec_malloc_header_t): New typedef.
3516 (unexec_malloc, unexec_realloc, unexec_free): Store and use
3517 allocated size information in unexec_malloc_header.
3518
3519 2005-05-10 Richard M. Stallman <rms@gnu.org>
3520
3521 * xterm.c (noinclude): Add #undef.
3522
3523 * image.c, xfns.c, xmenu.c: Don't include signal.h.
3524
3525 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
3526
3527 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
3528 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
3529 Doc fixes.
3530
3531 * dired.c (Ffile_name_completion): Make argument name
3532 match its use in docstring.
3533
3534 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
3535
3536 * eval.c (Fdefvaralias): Remove any pre-existing
3537 variable-documentation property of the alias.
3538
3539 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
3540
3541 * xfns.c (start_hourglass): Do nothing when running on a tty.
3542
3543 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
3544
3545 * fns.c (Fchar_table_range): Fix typos in docstring.
3546
3547 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3548
3549 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
3550
3551 2005-05-06 Eli Zaretskii <eliz@gnu.org>
3552
3553 * lread.c (Flocate_file_internal): Doc fix.
3554
3555 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
3556
3557 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3558
3559 * macselect.c (x_own_selection): Accept Lisp string as result of
3560 selection converter function.
3561 (x_clear_frame_selections): Don't call x-lost-selection-functions
3562 if Emacs is not owner of the selection.
3563 (Vmac_services_selection): Put variable and initialization in
3564 #ifdef MAC_OSX.
3565 (syms_of_macselect) [MAC_OSX]: Set default value of
3566 Vmac_services_selection to PRIMARY.
3567
3568 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
3569 (mac_handle_tool_bar_click): Remove unused function and declaration.
3570 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
3571 (install_scroll_bar_timer, set_scroll_bar_timer)
3572 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
3573 (get_control_part_bound, x_scroll_bar_handle_press)
3574 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
3575 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
3576 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
3577 (scroll_bar_timer_event_posted_p): New variables.
3578 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
3579 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
3580 (x_scroll_bar_create): Set control reference with NewControl.
3581 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
3582 Initialize track_top and track_height to nil.
3583 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
3584 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
3585 (XTset_vertical_scroll_bar): Don't make space between scroll bar
3586 and associated window.
3587 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
3588 from window config.
3589 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3590 Set track_top and track_height to nil when scroll bar size is changed.
3591 Recalculate them if they are nil.
3592 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
3593 clicked control is a scroll bar.
3594 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
3595 event handler functions. Don't add modifiers to scroll bar click
3596 events. Call scroll bar release handler when window is deactivated.
3597 (mac_initialize): Remove unused code for X toolkit.
3598 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
3599 Initialize Vx_toolkit_scroll_bars to nil.
3600
3601 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3602 New members track_top and track_height.
3603
3604 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
3605 init_process when including sys/select.h.
3606
3607 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
3608
3609 * eval.c (Fdefvaralias): Doc fix.
3610
3611 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3612
3613 2005-05-05 Kim F. Storm <storm@cua.dk>
3614
3615 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
3616 default value.
3617 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
3618 Fix type of cursor-in-non-selected-windows.
3619
3620 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3621
3622 * mac.c: #undef init_process so not to conflict with system headers.
3623
3624 2005-05-02 Richard M. Stallman <rms@gnu.org>
3625
3626 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
3627
3628 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
3629
3630 * xdisp.c (Vcursor_in_non_selected_windows)
3631 (Qcursor_in_non_selected_windows): Vars deleted.
3632 (syms_of_xdisp): Don't initialize them.
3633 (get_window_cursor_type): Use cursor_in_non_selected_windows
3634 buffer slot.
3635
3636 2005-05-02 Kim F. Storm <storm@cua.dk>
3637
3638 * macros.c (executing_kbd_macro_index): Rename from
3639 executing_macro_index. All uses changed.
3640 (executing_kbd_macro_iterations): Rename from
3641 executing_macro_iterations. All uses changed.
3642 (executing_kbd_macro): Rename from executing_macro.
3643 All uses changed.
3644 (syms_of_macros): Rename Lisp var executing-macro-index to
3645 executing-kbd-macro-index.
3646
3647 * xdisp.c (move_it_in_display_line_to): Fix last change.
3648
3649 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3650
3651 * xmenu.c (Fx_popup_menu): Doc fix.
3652
3653 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
3654
3655 2005-05-02 Jason Rumney <jasonr@gnu.org>
3656
3657 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
3658
3659 2005-05-02 Nozomu Ando <nand@mac.com>
3660
3661 * sysselect.h: Fix typo.
3662
3663 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
3664
3665 * charset.c (Fchars_in_region): Remove as obsolete.
3666
3667 2005-05-01 Kim F. Storm <storm@cua.dk>
3668
3669 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
3670 TO_CHARPOS. This may happen if last glyphs was an image or stretch
3671 glyph.
3672
3673 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3674
3675 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
3676
3677 2005-05-01 Richard M. Stallman <rms@gnu.org>
3678
3679 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
3680 If user cancels the menu, quit unless FOR_CLICK.
3681
3682 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
3683 All uses changed.
3684 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
3685 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
3686 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
3687 * commands.h (Vexecuting_kbd_macro): Likewise.
3688
3689 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
3690
3691 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
3692
3693 2005-04-30 Richard M. Stallman <rms@gnu.org>
3694
3695 * fileio.c (Ffind_file_name_handler): Handle the `operations'
3696 property of the file name handler.
3697 (Qoperations): New variable.
3698 (syms_of_fileio): Initialize and staticpro it.
3699
3700 * xdisp.c (set_message_1): Delete xassert.
3701
3702 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3703
3704 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
3705
3706 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
3707
3708 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
3709 before/after including Carbon.h if there is a working mktime.
3710
3711 2005-04-28 Kim F. Storm <storm@cua.dk>
3712
3713 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
3714 Fix cyclic alias check. If alias loop is detected, signal
3715 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
3716
3717 2005-04-28 Lute Kamstra <lute@gnu.org>
3718
3719 * eval.c (do_autoload): Record only autoloads in the autoload
3720 property of symbols.
3721
3722 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
3723
3724 * emacs.c (USAGE1): Add --basic-display and --quick options.
3725
3726 2005-04-27 Kim F. Storm <storm@cua.dk>
3727
3728 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
3729
3730 2005-04-26 Richard M. Stallman <rms@gnu.org>
3731
3732 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
3733 (syms_of_window): Doc fixes.
3734
3735 * indent.c (Fvertical_motion): Undo previous change.
3736
3737 2005-04-26 Kenichi Handa <handa@m17n.org>
3738
3739 * fns.c (char_table_range): New function.
3740 (Fchar_table_range): Signal an error if characters in the range
3741 have inconsistent values. Don't check the parent.
3742
3743 2005-04-25 Kenichi Handa <handa@m17n.org>
3744
3745 * fontset.c (fontset_set): Fix previous change.
3746
3747 2005-04-24 Richard M. Stallman <rms@gnu.org>
3748
3749 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
3750
3751 2005-04-24 Eli Zaretskii <eliz@gnu.org>
3752
3753 * regex.c (re_search_2, re_match_2_internal): Convert second arg
3754 of RE_TRANSLATE to int, to shut up GCC warnings.
3755
3756 * fileio.c (Fcopy_file): Doc fix.
3757 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
3758 not needed.
3759
3760 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3761
3762 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
3763 (SOME_MACHINE_OBJECTS): Likewise.
3764 (mac.o): Depend on ccl.h.
3765 (macselect.o): New target.
3766
3767 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
3768 Call syms_of_macselect.
3769
3770 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
3771
3772 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
3773 (QCLIPBOARD): Remove variable.
3774 (syms_of_mac): Don't initialize it.
3775 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
3776 Remove functions.
3777 (syms_of_mac): Don't defsubr them.
3778 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
3779 (QHFS_plus_D, QHFS_plus_C): New variables.
3780 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3781 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
3782 (cfstring_create_normalized): New functions.
3783 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
3784 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3785
3786 * macterm.c (handling_window_update, terminate_flag):
3787 Remove variables.
3788 (do_window_update, do_ae_quit_application, XTread_socket):
3789 Don't use them.
3790 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
3791 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
3792 (init_service_handler): Move to macselect.c. Remove declarations.
3793 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
3794 (Qapplication, Qabout): New variables.
3795 (syms_of_mac): Initialize them.
3796 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
3797 (Qperform): New variables.
3798 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
3799 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
3800 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
3801 (mac_store_application_menu_event, init_menu_bar): New functions.
3802 [USE_CARBON_EVENTS] (mac_handle_command_event)
3803 (init_command_handler): New functions.
3804 (mac_handle_window_event): Return noErr on window update event.
3805 (do_ae_quit_application): Call mac_store_application_menu_event.
3806 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
3807 and init_menu_bar.
3808
3809 * macterm.h (x_clear_frame_selections): Add extern.
3810
3811 * macselect.c: New file for selection processing on Mac OS.
3812
3813 2005-04-23 Richard M. Stallman <rms@gnu.org>
3814
3815 * fileio.c (Fcopy_file): New arg MUSTBENEW.
3816 (Frename_file): Pass new arg to Fcopy_file.
3817
3818 * window.c (window_size_fixed): Variable deleted.
3819 (syms_of_window): Initialize window-size-fixed to nil.
3820 But don't DEFVAR window_size_fixed.
3821
3822 2005-04-23 Andreas Schwab <schwab@suse.de>
3823
3824 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
3825 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
3826 use lib64 instead of lib.
3827 (_LP64) [_ARCH_PPC64]: Define if not defined.
3828
3829 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
3830
3831 * s/ms-w32.h (HAVE_PWD_H): Define.
3832
3833 2005-04-22 Kenichi Handa <handa@m17n.org>
3834
3835 * fns.c (copy_sub_char_table): Explicitly copy the default value
3836 of the sub-chartable.
3837
3838 * fontset.c (fontset_set): When a sub-chartable is created,
3839 explicitly sets the defalt value.
3840
3841 2005-04-22 Kim F. Storm <storm@cua.dk>
3842
3843 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
3844 (Fsafe_plist_get): Rename to Fplist_get.
3845 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
3846 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
3847
3848 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
3849
3850 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
3851 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3852 Use Fplist_get instead of Fsafe_plist_get.
3853
3854 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
3855
3856 2005-04-21 Miles Bader <miles@gnu.org>
3857
3858 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
3859
3860 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
3861
3862 * sysdep.c: Remove reference to defunct vms-pwd.h.
3863 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
3864 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
3865
3866 * config.in: Regenerate.
3867
3868 2005-04-20 Kenichi Handa <handa@m17n.org>
3869
3870 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
3871 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
3872 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
3873
3874 * alloc.c (make_sub_char_table): Argument changed to initial
3875 value of the slots.
3876
3877 * data.c (Faref): Handle special slots used as default values of
3878 ascii, eight-bit-control, eight-bit-control. Don't ignore a
3879 default value set for a group of characters.
3880 (Faset): Signal an error if IDXVAL is not a valid character code.
3881 Make a sub-chartable with correct initial value.
3882
3883 * fns.c (Fset_char_table_range): Don't set slots used as default
3884 values for ascii, eight-bit-control, eight-bit-graphic.
3885 Don't call Faref with charset-id.
3886 (Fset_char_table_default): Document how to treat normal character
3887 argument. Handle special slots used as default values of ascii,
3888 eight-bit-control, eight-bit-control. Make a sub chartable if
3889 necessary.
3890
3891 2005-04-20 Kenichi Handa <handa@m17n.org>
3892
3893 * search.c (boyer_moore): Fix previous change.
3894
3895 2005-04-19 Kim F. Storm <storm@cua.dk>
3896
3897 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
3898 face unless last visible char and first invisible char have the
3899 same face. Also use default face if saved_face_id is undefined.
3900
3901 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3902
3903 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
3904 `full_name'.
3905 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
3906 mac_scriptcode member.
3907
3908 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
3909 (syms_of_mac): Don't initialize them.
3910 (Vmac_charset_info_alist): New variable.
3911 (syms_of_mac): Defvar it.
3912 (create_text_encoding_info_alist): New function.
3913 (decode_mac_font_name, mac_to_x_fontname)
3914 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
3915 code the correspondence among XLFD charsets, Mac script codes, and
3916 Emacs coding systems. Use Vmac_charset_info_alist and result of
3917 create_text_encoding_info_alist instead.
3918 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
3919 routines also on Mac OS Classic.
3920 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
3921 Use add_font_name_table_entry.
3922 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
3923 specified. Derive unspecified scalable fields from specified one.
3924 (x_list_fonts): Consider Valternate_fontname_alist.
3925 (kDefaultFontSize): Change value from 9 to 12.
3926 (XLoadQueryFont): Get decoded font family, font face, and charset
3927 from x_font_name_to_mac_font_name. Set full name of loaded font.
3928 (mac_unload_font): Free `full_name' member.
3929 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
3930 NULL. Copy full_name member of struct MacFontStruct to that of
3931 struct font_info.
3932
3933 2005-04-19 Kim F. Storm <storm@cua.dk>
3934
3935 * xdisp.c (handle_stop): Set saved_face_id to current face if
3936 selective_display_ellipsis_p so ellipsis will be shown in same
3937 face as preceding text.
3938 (setup_for_ellipsis): Don't set saved_face_id here.
3939 (next_element_from_display_vector): Default to saved_face_id.
3940
3941 * fns.c (Fsafe_get): New function.
3942 (syms_of_fns): Defsubr it.
3943
3944 * lisp.h (Fsafe_get): EXFUN it.
3945
3946 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3947 loops in case of bad face property lists. Limit number of face
3948 alias lookups to 10 (in case of face alias loops).
3949
3950 2005-04-18 Kim F. Storm <storm@cua.dk>
3951
3952 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3953 It replaces the corresponding member from struct window, as a
3954 window may now show multiple overlay arrows.
3955 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3956
3957 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3958 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3959
3960 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3961 rather than from window.
3962 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3963 overlay_arrow_p members.
3964 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3965 if not default.
3966
3967 * window.h (struct window): Remove member overlay_arrow_bitmap.
3968
3969 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3970
3971 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3972 Calls changed. Don't check for overlay-arrow-bitmap property here.
3973 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3974 fringe is present, return Lisp integer for bitmap (or -1 for default).
3975 Fix value of overlay-arrow-bitmap property to be a symbol, use
3976 lookup_fringe_bitmap to parse it.
3977 (display_line): Change call to overlay_arrow_at_row. Store integer
3978 return value as overlay bitmap in row rather than window.
3979 Only show overlay arrow if row displays text, or if no other overlay
3980 arrow is seen in window (if overlay marker is at point-max).
3981
3982 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3983
3984 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3985
3986 2005-04-18 Lute Kamstra <lute@gnu.org>
3987
3988 * lread.c (Vloads_in_progress): Static.
3989 * fns.c (Vloads_in_progress): Remove extern.
3990 (load_in_progress): Add extern.
3991 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3992
3993 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3994
3995 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3996
3997 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3998
3999 * macterm.c (XTread_socket): Don't beep on keyboard input even if
4000 no frame is visible.
4001
4002 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
4003
4004 * term.c (struct keys): Add support for shifted keys.
4005
4006 2005-04-16 Richard M. Stallman <rms@gnu.org>
4007
4008 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
4009 (set_message): Call with_echo_area_buffer with WHICH = 0.
4010 (set_message_1): Erase the echo area buffer first thing.
4011 (echo_area_display): Don't clear echo_message_buffer.
4012
4013 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4014
4015 * Makefile.in (mac.o): Depend on charset.h and coding.h.
4016
4017 * mac.c: Include charset.h and coding.h.
4018 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
4019 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
4020 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
4021
4022 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
4023
4024 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
4025
4026 * macterm.c (x_autoselect_window_p): Remove variable.
4027 (last_window): New variable.
4028 (XTreassert_line_highlight, x_change_line_highlight):
4029 Remove declarations.
4030 (mac_focus_changed, x_detect_focus_change): New functions and
4031 declarations.
4032 (XTextExtents16, front_emacs_window): Remove function.
4033 (mac_focus_frame): New function.
4034 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
4035 (mac_check_for_quit_char): Use it instead of front_emacs_window.
4036 (x_scroll_bar_report_motion): Obtain window from control owner.
4037 (x_make_frame_invisible): Set window manager size hint.
4038 (do_mouse_moved): Remove function.
4039 (XTread_socket): Move its contents here. Generate select-window
4040 event on mouse movement if needed. Use x_detect_focus_change on
4041 activate/deactivate events. Don't deiconify frame or invalidate
4042 window rectangle when dnd items are dropped.
4043 Don't activate/deactivate root control.
4044 (frame_highlight, frame_unhighlight): Activate/deactivate root
4045 control here.
4046 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
4047
4048 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
4049 New extern.
4050
4051 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
4052
4053 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
4054 (lisp): Use it.
4055 (SOME_MACHINE_LISP): Add tooltip.
4056
4057 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4058
4059 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
4060 Don't include TextEncodingConverter.h.
4061 (mac_system_script_code, Vmac_system_locale): New variables.
4062 (syms_of_mac): Defvar them.
4063 (mac_get_system_locale): New function.
4064
4065 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
4066 Use ENCODE_SYSTEM to encode title bar string.
4067 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
4068 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
4069 Use CFStringGetSystemEncoding to get system default string encoding.
4070
4071 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
4072 TextEncodingConverter.h.
4073
4074 2005-04-13 Steven Tamm <steventamm@mac.com>
4075
4076 * macterm.c (syms_of_macterm): Remove redundant definition of
4077 mac-pass-control-to-system.
4078
4079 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
4080
4081 * window.c (Fset_window_configuration): Be careful when you choose
4082 among several possible points for the new_current_buffer.
4083
4084 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4085
4086 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
4087 poll_for_input_1. Set interrupt_input_pending to 1 instead.
4088 (Qlanguage_change) [MAC_OS]: New variable.
4089 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
4090 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
4091
4092 * macterm.c (mac_keyboard_text_encoding)
4093 (current_mac_keyboard_text_encoding): Remove variables.
4094 (XTread_socket): Store language-change event if keyboard script change
4095 is detected. Don't convert input to `mac_keyboard_text_encoding'.
4096 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
4097
4098 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
4099
4100 2005-04-10 Richard M. Stallman <rms@gnu.org>
4101
4102 * emacs.c (standard_args): Rename --bare-bones to --quick.
4103 Add -D aka --basic-display.
4104
4105 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
4106
4107 2005-04-09 Richard M. Stallman <rms@gnu.org>
4108
4109 * keymap.c (where_is_internal): Convert a string used as event type
4110 into "(any string)".
4111
4112 * lread.c (Vloads_in_progress): Not static.
4113 * fns.c (Vloads_in_progress): Add extern.
4114 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
4115
4116 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
4117
4118 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
4119
4120 2005-04-09 Lute Kamstra <lute@gnu.org>
4121
4122 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
4123 within the accessible part of the buffer.
4124
4125 2005-04-09 Kim F. Storm <storm@cua.dk>
4126
4127 * lread.c (readevalloop): Add args START and END as region in
4128 current buffer to read. Callers changed.
4129 When specified, narrow to this region only when reading,
4130 not during eval. Track next point to read from during eval.
4131 Also restore point to "real" buffer position before eval.
4132 (Feval_region): Don't save excursion and restriction here, and
4133 don't narrow to region. Just pass region to readevalloop.
4134 Note: Point is now preserved even when PRINTFLAG is nil.
4135
4136 2005-04-08 Kim F. Storm <storm@cua.dk>
4137
4138 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
4139
4140 2005-04-06 Kim F. Storm <storm@cua.dk>
4141
4142 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
4143
4144 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4145
4146 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
4147 (Fmac_get_preference): Doc fix.
4148
4149 * macfns.c (Fx_create_frame, x_create_tip_frame):
4150 Add "fontset-mac" to fallback font/fontsets.
4151
4152 2005-04-04 Kim F. Storm <storm@cua.dk>
4153
4154 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
4155
4156 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
4157 Call it again after autoload.
4158
4159 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4160
4161 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
4162 mallopt.
4163
4164 * ralloc.c (r_alloc_init): Ditto.
4165
4166 2005-04-01 Kenichi Handa <handa@m17n.org>
4167
4168 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
4169 (Vascii_eqv_table): Extern them.
4170
4171 * casetab.c (set_case_table): If standard is nonzero, setup
4172 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
4173
4174 * search.c (looking_at_1): Use current_buffer->case_canon_table,
4175 not DOWNCASE_TABLE.
4176 (string_match_1): Likewise.
4177 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
4178 Vascii_downcase_table.
4179 (fast_string_match_ignore_case): Likewise.
4180 (search_buffer): Fix checking of boyer-moore usability.
4181 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
4182 No need of tranlating characters in PAT. Fix calculation of
4183 simple_translate.
4184
4185 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
4186
4187 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
4188 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
4189 Use XtNtopShadowPixel and XtNbottomShadowPixel.
4190 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
4191 really work and that breaks with some versions of Xaw3d.
4192
4193 2005-03-31 Kenichi Handa <handa@m17n.org>
4194
4195 * coding.c (syms_of_coding): Fix previous change.
4196
4197 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
4198
4199 * fileio.c (search_embedded_absfilename): Fix last change.
4200
4201 2005-03-25 Kenichi Handa <handa@m17n.org>
4202
4203 * coding.c (syms_of_coding): Suggest to use set-coding-category in
4204 the docstring of coding-category-list.
4205
4206 2005-03-31 Kim F. Storm <storm@cua.dk>
4207
4208 * keyboard.c (Qmouse_fixup_help_message): New var.
4209 (syms_of_keyboard): Intern and staticpro it.
4210 (show_help_echo): Apply mouse-fixup-help-message to help string.
4211
4212 2005-03-30 Kim F. Storm <storm@cua.dk>
4213
4214 * xdisp.c (display_line): Allow multiple overlay arrows in window.
4215
4216 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
4217
4218 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
4219 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
4220 (Ffile_name_absolute_p): Use it.
4221 (search_embedded_absfilename): New fun, extracted from
4222 Fsubstitute_in_file_name. Use file_name_absolute_p.
4223 Free the pw data after use.
4224 (Fsubstitute_in_file_name): Use it.
4225 After cutting a prefix, re-check file-name-handler.
4226
4227 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
4228
4229 * w32term.h (x_output): Add focus_state.
4230
4231 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
4232 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
4233
4234 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
4235
4236 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
4237 Use Fexit_minibuffer.
4238 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
4239
4240 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
4241
4242 * dired.c (Ffile_attributes): Add a missing gcpro.
4243
4244 * alloc.c (make_number): The arg can be bigger than `int'.
4245 * lisp.h (make_number): Make prototype more precise.
4246
4247 * process.c, dired.c (Vfile_name_coding_system)
4248 (Vdefault_file_name_coding_system):
4249 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
4250 (Vdefault_file_name_coding_system): Remove unused declarations.
4251
4252 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4253
4254 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
4255 if it failed to pop up (Gnome "show pointer on ctrl" option makes
4256 menus fail to pop up).
4257
4258 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
4259
4260 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
4261 Just prepend a backslash without replacing the NBSP by an SPC.
4262
4263 2005-03-22 Kim F. Storm <storm@cua.dk>
4264
4265 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
4266 * dispextern.h (lookup_derived_face): Fix prototype.
4267 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
4268
4269 * xdisp.c (handle_single_display_spec): Derive left-fringe and
4270 right-fringe face from fringe face.
4271
4272 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
4273 Derive face from fringe face.
4274
4275 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4276
4277 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
4278
4279 2005-03-22 David Kastrup <dak@gnu.org>
4280
4281 * textprop.c (Fnext_char_property_change)
4282 (Fprevious_char_property_change): Allow marker as limit.
4283 (Fnext_single_char_property_change)
4284 (Fprevious_single_char_property_change): Check that limit is a
4285 number in strings.
4286 (Fnext_single_char_property_change): Coerce position to integer.
4287 (Fprevious_single_char_property_change): Same here.
4288
4289 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
4290
4291 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
4292
4293 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
4294
4295 * frame.c (Fignore_event): Remove.
4296 (syms_of_frame): Don't defsubr it.
4297
4298 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
4299 redundant `ignore-event'.
4300
4301 2005-03-19 Eli Zaretskii <eliz@gnu.org>
4302
4303 * unexec.c (write_segment, unexec): Move these functions to avoid
4304 forward references (which cause errors with "gcc -gcoff").
4305
4306 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4307
4308 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
4309 that it doesn't become "tooltip". The specbind is enough.
4310
4311 * xrdb.c (x_load_resources): Use different char *helv when I18N
4312 is present.
4313
4314 2005-03-17 Kenichi Handa <handa@m17n.org>
4315
4316 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
4317
4318 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4319
4320 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
4321 Use xic_create_fontsetname even for non-Motif menus.
4322 Don't forget to free the fontsetname.
4323
4324 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
4325
4326 2005-03-17 Richard M. Stallman <rms@gnu.org>
4327
4328 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
4329
4330 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
4331 (Fmake_symbolic_link): Use G to read the new file name.
4332
4333 * callint.c (Finteractive): Document G option.
4334 (Fcall_interactively): Implement G option.
4335
4336 * buffer.c (buffer_lisp_local_variables): New function,
4337 broken out from Fbuffer_local_variables.
4338 (clone_per_buffer_values): Use buffer_lisp_local_variables.
4339
4340 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
4341
4342 * xfns.c (xic_create_fontsetname): Add `motif' argument.
4343 Always return a freshly allocated string.
4344 (xic_create_xfontset): Adjust call.
4345
4346 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
4347 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
4348 (dump_realized_face): Fix warning.
4349
4350 * emacs.c (Fkill_emacs): YAILOM.
4351
4352 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
4353
4354 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4355
4356 * mac.c (HASHKEY_TERMINAL): Remove.
4357 (HASHKEY_MAX_NID): New macro.
4358 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
4359 argument.
4360 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
4361 (xrm_create_database, xrm_q_put_resource)
4362 (xrm_merge_string_database, xrm_q_get_resource_1)
4363 (xrm_q_get_resource): Change resource database representation so
4364 that it may not use multiple hash tables for a single database.
4365 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
4366
4367 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
4368
4369 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
4370
4371 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
4372 locale-coding-system, as was already done for WINDOWSNT.
4373
4374 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
4375 translation for chars in the 0-255 range.
4376
4377 2005-03-16 Lute Kamstra <lute@gnu.org>
4378
4379 * floatfns.c (Ffloor): Doc fix.
4380
4381 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4382
4383 * mac.c: Include macterm.h instead of directly including Carbon.h.
4384 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
4385 (Qarray, Qdictionary): New variables.
4386 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
4387 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
4388 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
4389 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
4390 in callback for CFDictionaryApplyFunction.
4391 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
4392 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
4393 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
4394 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
4395 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
4396 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
4397 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
4398 (skip_white_space, parse_comment, parse_include_file)
4399 (parse_binding, parse_component, parse_resource_name, parse_value)
4400 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
4401 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
4402 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
4403 New functions.
4404
4405 * macfns.c (mac_get_rdb_resource): Remove function.
4406 (x_get_string_resource): Use xrm_get_resource.
4407
4408 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
4409
4410 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
4411 name_list_element.
4412 (mac_make_rdb): Create resource database from preferences and
4413 argument string.
4414 (mac_term_init): Save resource database to cddr part of
4415 name_list_element.
4416
4417 * macterm.h (xrm_merge_string_database, xrm_get_resource)
4418 (xrm_get_preference_database): Add externs.
4419 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
4420 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
4421 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
4422
4423 * process.c (init_process): Change `#ifdef DARWIN' to `#if
4424 defined (DARWIN) || defined (MAC_OSX)'
4425
4426 * s/darwin.h (DARWIN): Don't define.
4427
4428 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4429
4430 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
4431 Remove unused variables.
4432 (syms_of_macfns): Don't initialize them. Likewise for
4433 Qface_set_after_frame_default. Defvar and initialize
4434 Vx_window_horizontal_drag_shape.
4435 (x_set_mouse_color): Change mouse pointer shape.
4436 (mac_window) [!MAC_OSX]: Create root control.
4437 (Fx_create_frame): Remove initializations of mouse pointer shapes.
4438 (hourglass_started): New function (from xfns.c).
4439 (start_hourglass, cancel_hourglass): Put function body in #ifdef
4440 MAC_OSX.
4441 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
4442 indicator for each non-tooltip frame if needed, and show it.
4443 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
4444
4445 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
4446 Controls.h. Use ThemeCursor instead of CursHandle.
4447
4448 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
4449 Remove functions and declarations.
4450 (mac_set_colors): Take argument for saving background color.
4451 All callers changed.
4452 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
4453 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
4454 background color.
4455 (x_update_end, mac_do_track_drag): Don't reset background color.
4456 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
4457 Use SetThemeCursor.
4458 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
4459 indicator control to the upper-right corner of the window.
4460 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
4461 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
4462 (do_window_update): Update controls after updating content area.
4463 (mac_handle_window_event): Remove unused extern.
4464 (XTread_socket): Check both control handle and control part code
4465 to determine whether a scroll bar is clicked. Activate/deactivate
4466 root control instead of contained scroll bar controls.
4467 (make_mac_terminal_frame): Use ThemeCursor constants.
4468
4469 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
4470 New member hourglass_control.
4471 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
4472 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
4473
4474 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4475
4476 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
4477 coincides with that in Apple X11 except `clear', `enter' on
4478 laptops, and fn + `enter' on laptops.
4479
4480 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
4481
4482 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
4483 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
4484 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
4485
4486 * xfns.c (xic_defaut_fontset): New constant.
4487 (xic_create_fontsetname): New function.
4488 Extracted from create_frame_xic. Try to generate a slightly
4489 better fontset.
4490 (xic_create_xfontset): Use it.
4491 (create_frame_xic): Simplify.
4492
4493 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
4494
4495 * fileio.c (Fmake_symbolic_link): Fix last change.
4496
4497 2005-03-11 Richard M. Stallman <rms@gnu.org>
4498
4499 * fileio.c (Frename_file, Fadd_name_to_file)
4500 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
4501 expand the basename of FILE relative to it.
4502
4503 2005-03-11 Kenichi Handa <handa@m17n.org>
4504
4505 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
4506 before calling setup_coding_system so that autoloading of a coding
4507 system work.
4508
4509 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4510
4511 * xfns.c (hourglass_started): New function.
4512
4513 * dispextern.h: Declare hourglass_started.
4514
4515 * keyboard.c (Fexecute_extended_command): Restart hourglass
4516 after call to Fcompleting_read if already started.
4517
4518 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
4519 GTK main loop is entered in xterm.c, thus doing the redraw.
4520
4521 2005-03-10 Kim F. Storm <storm@cua.dk>
4522
4523 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
4524
4525 2005-03-08 Kenichi Handa <handa@m17n.org>
4526
4527 * frame.c (x_set_font): Call set_default_ascii_font if an
4528 available font is found.
4529
4530 * fontset.c (set_default_ascii_font): New function.
4531 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
4532
4533 * fontset.h (set_default_ascii_font): Extern it.
4534
4535 2005-03-07 Kim F. Storm <storm@cua.dk>
4536
4537 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
4538 (clear_image_cache_count): New var.
4539 (redisplay_internal): Don't clear face and image caches in the
4540 middle of redisplay; do it afterwards.
4541
4542 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
4543
4544 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
4545 is valid. If not, clear phys_cursor_on_p and return.
4546
4547 2005-03-07 Andreas Schwab <schwab@suse.de>
4548
4549 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
4550
4551 2005-03-06 Richard M. Stallman <rms@gnu.org>
4552
4553 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
4554
4555 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
4556 (Feval, Ffuncall): Use CHECK_CONS_LIST.
4557
4558 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
4559
4560 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
4561 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
4562
4563 2005-03-05 Juri Linkov <juri@jurta.org>
4564
4565 * emacs.c (USAGE1): Replace Info node name "command arguments"
4566 with "emacs invocation".
4567 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
4568 allow arguments `--color' and `MODE' to be separated by space.
4569 Add --no-blinking-cursor, -nbc.
4570 (standard_args): Add -nbc, --no-blinking-cursor.
4571
4572 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4573
4574 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
4575 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
4576 * fileio.c (Fexpand_file_name) [VMS]:
4577 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
4578 * doc.c (munge_doc_file_name) [VMS]: Likewise.
4579 (Fsnarf_documentation): Call munge_doc_file_name.
4580
4581 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4582
4583 * s/vms.h (FILE_SYSTEM_CASE): New macro.
4584 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
4585 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
4586
4587 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4588
4589 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
4590 defined (MAC_OSX) && defined (HAVE_CARBON)'.
4591
4592 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
4593
4594 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4595 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
4596 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
4597 (mac_clear_font_name_table): Move extern to macterm.h.
4598
4599 * macfns.c (install_window_handler): Move extern to macterm.h.
4600 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
4601 valid. Don't check !NILP (dir) because it is already checked with
4602 CHECK_STRING.
4603 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
4604 specifying the default location and obtaining the selected filename.
4605
4606 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4607
4608 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
4609 are included via Carbon.h.
4610
4611 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
4612 Define USE_CARBON_EVENTS to 1.
4613 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
4614 (x_free_frame_resources): Call remove_window_handler for
4615 non-tooltip windows.
4616 [TARGET_API_MAC_CARBON]: Don't include headers that are included
4617 via Carbon.h.
4618 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
4619 (mac_do_receive_dragUPP): New variables.
4620 (mac_handle_service_event, init_service_handler): Put declarations
4621 and definitions in #ifdef MAC_OSX.
4622 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
4623 drag-and-drop handler functions and register them.
4624 (remove_window_handler): New function.
4625 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
4626 Use fsspec_to_posix_pathname.
4627 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
4628 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
4629 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
4630 Set default cursors.
4631 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
4632 init_service_handler or init_quit_char_handler.
4633 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
4634
4635 * macterm.h (install_window_handler, remove_window_handler)
4636 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
4637 (mac_clear_font_name_table): New externs.
4638
4639 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4640
4641 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
4642 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
4643 (Fexpand_file_name): Likewise.
4644
4645 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4646
4647 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
4648 no longer special-case VMS. Add bogus return value.
4649
4650 2005-03-02 Kim F. Storm <storm@cua.dk>
4651
4652 * dispextern.h (XASSERTS): Define to 0 if not already defined.
4653 (xassert) [!XASSERTS]: Define dummy version.
4654
4655 2005-03-02 Kim F. Storm <storm@cua.dk>
4656
4657 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
4658 Reported by David Kastrup.
4659
4660 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
4661
4662 * xdisp.c (get_next_display_element): Fix control and escape
4663 glyph from display vector.
4664
4665 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
4666
4667 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
4668
4669 2005-02-27 Richard M. Stallman <rms@gnu.org>
4670
4671 * xdisp.c (fast_find_position): Rename END to BEG.
4672 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
4673
4674 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4675
4676 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
4677 gtk_window_resize and x_wm_set_size_hint.
4678
4679 2005-02-25 Kim F. Storm <storm@cua.dk>
4680
4681 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
4682
4683 * xdisp.c (init_from_display_pos): Don't read past end of
4684 it->overlay_strings array.
4685
4686 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
4687
4688 * buffer.c (syms_of_buffer): Fix typo.
4689
4690 2005-02-23 Lute Kamstra <lute@gnu.org>
4691
4692 * buffer.c (Foverlay_buffer): Doc fix.
4693
4694 2005-02-22 Kim F. Storm <storm@cua.dk>
4695
4696 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
4697 and symbol keys in alists and hash tables.
4698
4699 * xdisp.c (fast_find_position): Fix search for start of overlay.
4700
4701 2005-02-21 Kim F. Storm <storm@cua.dk>
4702
4703 * window.c (window_scroll_pixel_based): When scrolling backwards,
4704 handle partial visible line at end of window even when we hit PT.
4705
4706 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
4707
4708 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
4709
4710 2005-02-21 Kim F. Storm <storm@cua.dk>
4711
4712 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
4713 I think those asserts are bogus if buffer contains invisible text
4714 or images.
4715
4716 2005-02-21 David Kastrup <dak@gnu.org>
4717
4718 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
4719
4720 2005-02-20 Kim F. Storm <storm@cua.dk>
4721
4722 * xdisp.c (pos_visible_p): Be sure to move to the specified
4723 position. Always get the full ascent / descent of the
4724 corresponding row, to return reliable rtop and rbot values.
4725 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
4726 Must look one character back, as back_to_previous_line_start
4727 returns position after the newline.
4728 (move_it_vertically_backward): Fix heuristic for when to move further
4729 back in case line_height * 2/3 is larger than window height.
4730 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
4731 as it does not do anything anymore. Add arg current_matrix_p to
4732 use current matrix rather than desired matrix when set.
4733 (try_cursor_movement): Don't scroll to make cursor row fully
4734 visible if cursor didn't move. This avoids unexpected recentering
4735 in case of blinking cursor or accepting process output.
4736 Use current matrix to check cursor row visibility.
4737 (redisplay_window): Fix whether to recenter or move to top in case
4738 cursor line is taller than window height.
4739 (find_first_unchanged_at_end_row): Stop search if we reach a row
4740 which not enabled (instead of abort).
4741
4742 2005-02-18 Kim F. Storm <storm@cua.dk>
4743
4744 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
4745 to be nil in a :box attribute value list; customize prints that
4746 as lisp value when no box color is specified.
4747
4748 * .gdbinit (pitx, pit): Pretty print display iterator.
4749 (prowx, prow): Pretty print glyph row.
4750 (pcursorx, pcursor): Pretty print a window cursor.
4751 (pwinx, pwin): Pretty print struct window.
4752
4753 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
4754
4755 * alloc.c (BLOCK_BYTES): Harmless typo.
4756
4757 2005-02-17 Andreas Schwab <schwab@suse.de>
4758
4759 * xfns.c (hack_wm_protocols): Use correct type for last parameter
4760 of XGetWindowProperty to avoid aliasing issues.
4761 (Fx_window_property): Likewise.
4762
4763 * xselect.c (Fx_disown_selection_internal): Use union of struct
4764 input_event and struct selection_input_event to avoid aliasing issues.
4765
4766 * xterm.c (handle_one_xevent): Use union of struct input_event and
4767 struct selection_input_event to avoid aliasing issues.
4768 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
4769
4770 2005-02-17 Kim F. Storm <storm@cua.dk>
4771
4772 * dispextern.h (enum it_method): New enum.
4773 (GET_FROM_*): Its members.
4774 (struct it): Change member method from function pointer to enum.
4775
4776 * xdisp.c (check_it, init_from_display_pos, handle_stop)
4777 (setup_for_ellipsis, handle_single_display_spec)
4778 (handle_composition_prop, next_overlay_string)
4779 (get_overlay_strings, reseat_1, reseat_to_string)
4780 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
4781 (in_display_vector_p, display_line, get_next_display_element):
4782 Change it->method from function pointer to enum.
4783 (get_next_element): New array to map it->method to function.
4784 (get_next_display_element): Use it.
4785 (set_iterator_to_next): Use switch instead of if/else chain.
4786
4787 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4788
4789 * w32select.c: Summary: Thorough rework to implement Unicode
4790 clipboard operations and delayed rendering.
4791
4792 Drop last_clipboard_text and related code, keep track of
4793 ownership via clipboard_owner instead. Drop old #if0 sections.
4794
4795 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
4796 (clipboard_owner, modifying_clipboard, cfg_coding_system)
4797 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
4798 (current_coding_system, current_requires_encoding)
4799 (current_num_nls, current_clipboard_type, current_lcid):
4800 New static variables.
4801
4802 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
4803 (render, render_all, run_protected, lisp_error_handler)
4804 (owner_callback, create_owner, setup_config)
4805 (enum_locale_callback, cp_from_locale, coding_from_cp):
4806 New local functions.
4807
4808 (term_w32select, globals_of_w32select): New global functions.
4809
4810 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
4811 clipboard_owner instead. Use delayed rendering and provide
4812 all text formats. Provide CF_LOCALE if necessary.
4813
4814 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
4815 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
4816 available. Force DOS line-ends for decoding.
4817
4818 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
4819
4820 (syms_of_w32select): Init and register new variables.
4821
4822 * w32.h: Add prototypes for globals_of_w32select and
4823 term_w32select. Make the neighboring K&R declarations into
4824 prototypes, too.
4825
4826 * emacs.c: Include w32.h to get function prototypes.
4827 (main): Call globals_of_w32select.
4828
4829 * w32.c (term_ntproc): Call term_w32select.
4830
4831 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
4832
4833 2005-02-16 Kim F. Storm <storm@cua.dk>
4834
4835 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
4836 at end of display vector.
4837
4838 2005-02-15 Richard M. Stallman <rms@gnu.org>
4839
4840 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
4841 for mode and header lines.
4842
4843 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
4844
4845 * keymap.h (describe_map_tree): Change decl.
4846
4847 * keyboard.c (command_loop_1): Always use safe_run_hooks
4848 to run Qdeferred_action_function.
4849
4850 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
4851 (describe_map, describe_vector): Likewise. When it's 1,
4852 don't omit shadowed bindings, instead mark them as shadowed.
4853
4854 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
4855 for describe_map_tree. Pass 1 for MENTION_SHADOW.
4856
4857 * data.c (Fsetq_default): Allow no arg case.
4858
4859 2005-02-14 Kenichi Handa <handa@m17n.org>
4860
4861 * coding.c (encode_coding_string): Always return a unibyte string.
4862 If NOCOPY is nonzero and there's no need of encoding, make STR
4863 unibyte directly.
4864
4865 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
4866 multibyte string, signal an error instead of aborting.
4867
4868 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
4869
4870 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
4871
4872 2005-02-12 Kim F. Storm <storm@cua.dk>
4873
4874 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
4875
4876 2005-02-10 Kim F. Storm <storm@cua.dk>
4877
4878 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
4879 if it moves outside window or it doesn't display text.
4880
4881 2005-02-09 Kim F. Storm <storm@cua.dk>
4882
4883 * undo.c (Fprimitive_undo): Check that undo function does not
4884 switch buffer.
4885
4886 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4887
4888 * xselect.c (selection_data_to_lisp_data): For the special case
4889 type == XA_ATOM, data contains array of int, not array of Atom.
4890 (x_property_data_to_lisp, selection_data_to_lisp_data):
4891 Comment update: data must be array of int for format == 32.
4892
4893 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
4894
4895 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
4896
4897 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4898
4899 * xfns.c (Fx_change_window_property): Use long array when format is 32.
4900 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
4901 convert long array returned from XGetWindowProperty to an int array.
4902 (x_set_tool_bar_lines): Check that width and height is greater than
4903 zero before clearing area.
4904
4905 * xselect.c (x_reply_selection_request): Pass long array to
4906 XChangeProperty so that 64 bit longs are handeled correctly.
4907 (x_get_window_property): If format is 32 and long is bigger than 32
4908 bits convert data from XGetWindowProperty from long array to int array.
4909 (lisp_data_to_selection_data): When the input is a vector and the
4910 format is 32, allocate a long array even if long is bigger than 32 bits.
4911 (x_fill_property_data): Use char, short and long as the man page
4912 for XChangeProperty specifies. This way the data returned is OK for
4913 both 32 and 64 bit machines.
4914 (x_handle_dnd_message): Calculate size correctly even for 64 bit
4915 machines.
4916 (Fx_send_client_event): Undo change from 2005-02-05,
4917 x_fill_property_data now handles that case.
4918
4919 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
4920 reason for the approach in the code.
4921
4922 2005-02-07 Kim F. Storm <storm@cua.dk>
4923
4924 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
4925
4926 2005-02-06 Richard M. Stallman <rms@gnu.org>
4927
4928 * eval.c (Frun_hook_with_args)
4929 (Frun_hook_with_args_until_success)
4930 (Frun_hook_with_args_until_failure): Doc fixes.
4931
4932 2005-02-05 Andreas Schwab <schwab@suse.de>
4933
4934 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
4935
4936 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4937
4938 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
4939 the longs in a XClientMessageEvent correctly when long is 64 bits.
4940
4941 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4942
4943 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4944 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4945
4946 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4947
4948 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4949 events so the menu event comes after them. This is to prevent sit-for
4950 from exiting on buffered events directly after a menu selection,
4951 lisp code for Help => About Emacs uses sit-for.
4952
4953 * gtkutil.c (create_menus): Connect selection-done event instead of
4954 the deactivate event to deactivate_cb. This will make the last
4955 leave event come before the call to deactivate_cb, so the leave
4956 event does not make sit-for exit after a menu selection.
4957
4958 2005-02-03 Kim F. Storm <storm@cua.dk>
4959
4960 * dispnew.c (build_frame_matrix_from_leaf_window)
4961 [!GLYPH_DEBUG]: Fix xassert.
4962
4963 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4964
4965 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4966
4967 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4968
4969 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4970 the compiling OS version.
4971
4972 * macfns.c (x_create_tip_frame): Likewise.
4973
4974 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4975
4976 2005-02-03 Richard M. Stallman <rms@gnu.org>
4977
4978 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4979
4980 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4981
4982 * buffer.c (Fbury_buffer): Doc fix.
4983
4984 2005-02-02 Steven Tamm <steventamm@mac.com>
4985
4986 * macfns.c (unwind_create_frame): Fix compile error due to
4987 xassert being uncondition, but predicate is.
4988 * dispnew.c (update_window): Fix compile error due to
4989 xassert being uncondition, but predicate is.
4990
4991 2005-02-02 Miles Bader <miles@gnu.org>
4992
4993 * dispextern.h (xassert): Enable unconditionally.
4994
4995 2005-02-02 Kim F. Storm <storm@cua.dk>
4996
4997 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4998
4999 2005-02-02 Kenichi Handa <handa@m17n.org>
5000
5001 * casefiddle.c (casify_object): Enable changing characters of
5002 different byte length.
5003 (casify_region): Fix loop condition, args to replace_range_2, and
5004 update opoint_byte.
5005
5006 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
5007
5008 2005-02-01 Kim F. Storm <storm@cua.dk>
5009
5010 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
5011 stack before calling handle_display_prop.
5012
5013 2005-01-31 Kim F. Storm <storm@cua.dk>
5014
5015 * undo.c (Qapply): New lisp var.
5016 (syms_of_undo): Intern and staticpro it.
5017 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
5018 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
5019
5020 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
5021
5022 2005-01-30 Jesper Harder <harder@phys.au.dk>
5023
5024 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
5025 <mac-emulate-three-button-mouse>: Fix docstring indentation.
5026
5027 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
5028
5029 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
5030 Increase value to 3 Meg.
5031
5032 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5033
5034 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
5035 button events are not received otherwise.
5036
5037 2005-01-29 Richard M. Stallman <rms@gnu.org>
5038
5039 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
5040
5041 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
5042
5043 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
5044
5045 * keymap.c (access_keymap): YAILOM.
5046
5047 2005-01-27 Kim F. Storm <storm@cua.dk>
5048
5049 * xdisp.c (get_phys_cursor_geometry): New function to calculate
5050 phys cursor position and size for hollow cursor. Position is
5051 aligned with get_glyph_string_clip_rect and ensures that a hollow
5052 cursor is shown, even when the actual glyph is not visible.
5053
5054 * dispextern.h (get_phys_cursor_geometry): Add prototype.
5055
5056 * xterm.c (x_clip_to_row): Ensure y >= 0.
5057 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
5058
5059 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
5060
5061 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
5062
5063 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
5064
5065 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
5066
5067 2005-01-27 Kim F. Storm <storm@cua.dk>
5068
5069 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
5070 glyph, even when row is only partially visible and actual cursor
5071 position is not visible.
5072
5073 2005-01-24 Richard M. Stallman <rms@gnu.org>
5074
5075 * xterm.c (x_error_quitter): No longer static, and moved after
5076 x_error_handler.
5077
5078 2005-01-24 Kim F. Storm <storm@cua.dk>
5079
5080 * xdisp.c (move_it_by_lines): If we move forward after going too
5081 far back, cancel move if end position is same as start position.
5082
5083 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5084
5085 * dispextern.h (struct glyph_string): New members clip_head and
5086 clip_tail.
5087
5088 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
5089 region to the area between clip_head and clip_tail.
5090 (draw_glyphs): Record the area that need to be actually redrawn to
5091 the new variables clip_head and clip_tail when there are
5092 overhangs. Set values of these variables to the corresponding
5093 members in struct glyph_string. Refine x coordinates for
5094 notice_overwritten_cursor using clip_head and clip_tail.
5095
5096 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
5097
5098 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
5099 QDTextBounds.
5100 (x_draw_glyph_string): Don't fill the background of the successor
5101 of a glyph with a right overhang if the successor will draw a cursor.
5102 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
5103 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
5104
5105 2005-01-24 Kim F. Storm <storm@cua.dk>
5106
5107 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
5108 direction if window height was smaller than next-screen-context-lines.
5109 Now always scroll at least one line in the requested direction.
5110 Ensure that we actually do scroll backwards when requested to do so.
5111
5112 * xdisp.c (redisplay_window): Only try to make cursor line fully
5113 visible once (to avoid redisplay loop).
5114
5115 2005-01-23 Kim F. Storm <storm@cua.dk>
5116
5117 * window.c (Fpos_visible_in_window_p): Simplify return value for
5118 partially visible rows.
5119 (window_scroll_pixel_based): Adapt to that change.
5120
5121 * window.c (window_scroll_pixel_based): Force moving to next line
5122 if scrolling doesn't move start point, e.g. if looking at tall image.
5123
5124 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
5125 Clear last_height before calling line_bottom_y to get real height.
5126 Fix calculation of y.
5127
5128 2005-01-22 Steven Tamm <steventamm@mac.com>
5129
5130 * s/darwin.h: Removed PTY_ITERATION from here.
5131 (DARWIN): Define.
5132
5133 * process.c (init_process): Default process-connection-type to
5134 nil on darwin 6 or less, t if it is 7 or higher. This way the
5135 broken pty behavior is still allowed on darwin 6 for interactive
5136 processes for people that know what they are doing.
5137
5138 2005-01-22 Kim F. Storm <storm@cua.dk>
5139
5140 * window.c (auto_window_vscroll_p): New boolean.
5141 (syms_of_window): DEFVAR_BOOL it.
5142 (Fpos_visible_in_window_p): Extend return value to include RTOP
5143 and RBOT values if FULLY is nil.
5144 (window_scroll_pixel_based): Adjust vscroll for partially visible
5145 rows if auto_window_vscroll_p is set.
5146 (Fset_window_vscroll): Do nothing if vscroll is not modified.
5147
5148 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
5149 to return number of partially invisible pixels at top and bottom
5150 of the dislay row at POS.
5151
5152 * lisp.h (pos_visible_p): Fix prototype.
5153
5154 2005-01-21 Richard M. Stallman <rms@gnu.org>
5155
5156 * fileio.c (Fcopy_file): Doc fix.
5157
5158 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5159
5160 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
5161 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
5162 start of function for older compilers.
5163
5164 2005-01-20 Richard M. Stallman <rms@gnu.org>
5165
5166 * editfns.c (Fmessage): If arg is "", return "" (as before).
5167
5168 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
5169
5170 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
5171 variable.
5172
5173 2005-01-20 Steven Tamm <steventamm@mac.com>
5174
5175 * editfns.c (Voperating_system_release): Add.
5176 (init_editfns): Assign new variable operating-system-release
5177 based on call to uname if available.
5178 (get_operating_system_release): Add function to
5179 allow c-level access to operating system release.
5180
5181 * config.h: Regenerated.
5182
5183 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
5184 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
5185 using ptys as '7'.
5186
5187 2005-01-20 Kim F. Storm <storm@cua.dk>
5188
5189 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
5190
5191 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
5192 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
5193
5194 * macterm.c (x_draw_glyph_string_box): Likewise.
5195
5196 * w32term.c (x_draw_glyph_string_box): Likewise.
5197
5198 * indent.c (Fvertical_motion): Temporarily disable selective display.
5199
5200 2005-01-19 Kim F. Storm <storm@cua.dk>
5201
5202 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
5203 image property.
5204
5205 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
5206
5207 2005-01-18 Kim F. Storm <storm@cua.dk>
5208
5209 * xdisp.c (fast_find_position): Backtrack to find first row if
5210 charpos is inside a display overlay that spans multiple lines.
5211
5212 2005-01-18 Kenichi Handa <handa@m17n.org>
5213
5214 * coding.c (decode_coding_iso2022): Translate invalid codes if
5215 translation-table is specified.
5216
5217 2005-01-18 Kim F. Storm <storm@cua.dk>
5218
5219 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
5220 change. If handle_display_prop indicates newline is replaced by
5221 image or text, move back to start of relevant overlay or interval
5222 and continue scan from there. Simplify.
5223
5224 2005-01-17 Kim F. Storm <storm@cua.dk>
5225
5226 * dispnew.c (mode_line_string, marginal_area_string):
5227 Fix off-by-one error in search for glyph.
5228
5229 2005-01-16 Kim F. Storm <storm@cua.dk>
5230
5231 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
5232
5233 2005-01-16 Steven Tamm <steventamm@mac.com>
5234
5235 * macterm.c (mac_to_x_fontname): Remove spurious argument.
5236
5237 2005-01-16 Andreas Schwab <schwab@suse.de>
5238
5239 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
5240
5241 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5242
5243 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
5244 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
5245
5246 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5247
5248 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
5249 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
5250 New flags for readable_events.
5251 (get_filtered_input_pending, readable_filtered_events): Remove.
5252 (tracking_off): Call readable_events and get_input_pending with
5253 flag READABLE_EVENTS_DO_TIMERS_NOW.
5254 (readable_events): Move code from old readable_filtered_events here,
5255 but check new READABLE_EVENTS_* in argument flags instead of previous
5256 two boolean arguments do_timers_now and filter_events.
5257 If we are doing mouse tracking and the mouse moved, return only if
5258 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
5259 (swallow_events): Call get_input_pending with flag
5260 READABLE_EVENTS_DO_TIMERS_NOW.
5261 (get_input_pending): Move code from old get_filtered_input_pending
5262 here. Replace boolean arguments do_timers_now, filter_events with
5263 flags, and pass flags to readable_events. Document new
5264 READABLE_EVENTS_* flags.
5265 (detect_input_pending_ignore_squeezables): New function.
5266 (detect_input_pending_run_timers): Call get_input_pending with flag
5267 READABLE_EVENTS_DO_TIMERS_NOW.
5268 (Finput_pending_p): Call get_input_pending with flags
5269 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
5270
5271 * dispnew.c (update_window, update_frame_1): Replace calls to
5272 detect_input_pending with detect_input_pending_ignore_squeezables
5273 so that redisplay is not paused if the event queue contains only
5274 mouse movements.
5275
5276 * lisp.h: Declare detect_input_pending_ignore_squeezables.
5277
5278 2005-01-15 Steven Tamm <steventamm@mac.com>
5279
5280 * macterm.c (Vmac_use_core_graphics): Declare variable for
5281 mac-allow-anti-aliasing.
5282 (syms_of_macterm): DEFVAR_LISP and initialize it.
5283 (mac_draw_string_common): Use core graphics text rendering if
5284 mac-allow-anti-aliasing is enabled.
5285
5286 * macfns.c (Fx_file_dialog): Save As dialog includes only the
5287 file name in the text box.
5288
5289 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5290
5291 * macfns.c (x_set_foreground_color, x_set_background_color):
5292 Sync with xfns.c.
5293 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
5294 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
5295 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
5296
5297 2005-01-14 Kim F. Storm <storm@cua.dk>
5298
5299 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
5300
5301 2005-01-13 Richard M. Stallman <rms@gnu.org>
5302
5303 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
5304 if Voverriding_terminal_local_map is non-nil.
5305
5306 * keyboard.c (syms_of_keyboard): Doc fix.
5307
5308 2005-01-13 Kim F. Storm <storm@cua.dk>
5309
5310 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
5311 (specify 0 for FACE instead). Reorder arg list. Doc fix.
5312
5313 2005-01-12 Richard M. Stallman <rms@gnu.org>
5314
5315 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
5316 face property for characters that don't specify one.
5317
5318 * fns.c (Frequire): Record in load-history unconditionally.
5319
5320 2005-01-10 Kim F. Storm <storm@cua.dk>
5321
5322 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
5323
5324 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
5325 Callers changed.
5326 Add support to merge with lisp face id too (if face_name is t).
5327
5328 * xdisp.c (get_next_display_element, next_element_from_display_vector):
5329 Don't lookup lface_id from display table glyphs here; instead use
5330 merge_faces to merge the lisp face id into current face.
5331
5332 2005-01-09 Kim F. Storm <storm@cua.dk>
5333
5334 * dispextern.h (struct it): New member dpvec_face_id.
5335 (merge_into_realized_face): Add prototype.
5336
5337 * xfaces.c (merge_into_realized_face): New function. Used to
5338 merge escape-glyph face or face from display table into current face.
5339
5340 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
5341 (syms_of_xdisp): DEFVAR_LISP it.
5342 (escape_glyph_face): Remove var.
5343 (redisplay_window): Don't initialize it.
5344 (setup_for_ellipsis, get_next_display_element):
5345 Set it->dpvec_face_id to -1.
5346 (get_next_display_element): Test Vshow_nonbreak_escape.
5347 Do not setup escape_glyph_face.
5348 Properly merge escape-glyph face or face from display table with
5349 current face for escape and control characters.
5350 Set it->dpvec_face_id to relevant face id instead of adding it to each
5351 element of display vector.
5352 (next_element_from_display_vector): If it->dpvec_face_id is set,
5353 use that instead of lface_id from glyph itself.
5354
5355 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5356
5357 * xterm.h (struct x_output): New member, toolbar_detached.
5358
5359 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
5360 38.
5361 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
5362 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
5363 (xg_create_tool_bar): Initialize toolbar_detached.
5364 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
5365 toolbar_detached is zero.
5366
5367 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5368
5369 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
5370 gtk_menu_popup if not for_click, so callbacks for the menu are called.
5371
5372 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
5373 (xg_tool_bar_callback, xg_tool_bar_help_callback)
5374 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
5375
5376 * xselect.c (x_get_foreign_selection, x_fill_property_data)
5377 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
5378 XFLOAT_DATA to get extract number from Lisp object.
5379
5380 2005-01-07 Kim F. Storm <storm@cua.dk>
5381
5382 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
5383 Set stop_charpos to current charpos instead of 0.
5384
5385 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
5386
5387 * xdisp.c (Fformat_mode_line): First arg now required.
5388
5389 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5390
5391 * macterm.c (XLoadQueryFont): Correctly handle 0 size
5392 font widths that are returned from some Japanese fonts.
5393
5394 2005-01-06 Kim F. Storm <storm@cua.dk>
5395
5396 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
5397 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
5398 (destroy_fringe_bitmap): Set fringe_faces element to nil.
5399 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
5400 fringe_faces array and init elements to nil.
5401 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
5402 non-persistent face id.
5403 (mark_fringe_data): New function for GC.
5404
5405 * alloc.c (mark_fringe_data): Declare extern.
5406 (Fgarbage_collect): Call mark_fringe_data.
5407
5408 * alloc.c (overrun_check_free): Invalidate freed memory if
5409 XMALLOC_CLEAR_FREE_MEMORY is defined.
5410
5411 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5412
5413 * macfns.c: Include sys/param.h.
5414 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
5415 and function.
5416 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
5417 of filename string. Set event callback function when creating
5418 dialog boxes. Add code conversions for filenames. Don't dispose
5419 of apple event descriptor record if failed to create it.
5420
5421 * macterm.c: Include sys/param.h.
5422 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
5423 kEventWindowUpdate.
5424 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
5425 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
5426 of FSSpec from apple event descriptor record.
5427 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
5428 size of filename string.
5429 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
5430 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
5431 file dialog is in action.
5432 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
5433 Reject only when there are no filename items. Set background color
5434 before (un)highlighting the window below the dragged items.
5435 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
5436
5437 2005-01-05 Romain Francoise <romain@orebokech.com>
5438
5439 * term.c (encode_terminal_code): Fix buffer size computation.
5440
5441 2005-01-04 Richard M. Stallman <rms@gnu.org>
5442
5443 * xdisp.c (Fformat_mode_line): Doc fix.
5444
5445 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
5446
5447 * alloc.c (refill_memory_reserve): Move.
5448 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
5449 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
5450
5451 2005-01-03 Richard M. Stallman <rms@gnu.org>
5452
5453 * window.c (window_scroll_pixel_based): Don't correct preserve_y
5454 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
5455
5456 2005-01-03 Jason Rumney <jasonr@gnu.org>
5457
5458 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
5459 fontp->space_width to FONT_WIDTH so they are valid.
5460
5461 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
5462 average width. Set fontp->average_width and fontp->space_width to
5463 their appropriate values.
5464
5465 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
5466 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
5467 fontp->space_width.
5468
5469 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5470
5471 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
5472 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
5473 metrics for max and min bounds.
5474 (x_load_font): Correctly calculate average font width metrics.
5475
5476 2005-01-02 Richard M. Stallman <rms@gnu.org>
5477
5478 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
5479
5480 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5481
5482 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
5483
5484 2004-12-31 Richard M. Stallman <rms@gnu.org>
5485
5486 * xdisp.c (setup_for_ellipsis, get_next_display_element):
5487 Set it->ellipsis_p to 1 or 0.
5488 (display_line): Record whether row ends in mid-ellipsis.
5489 (set_cursor_from_row): If ends in ellipsis, find start of it.
5490 (cursor_row_p): If PT's at the end of the ellipsis the row
5491 ends within, don't display cursor on this row.
5492
5493 * dispextern.h (struct it): New element ellipsis_p.
5494 (struct glyph_row): New element ends_in_ellipsis_p.
5495
5496 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
5497 position if we're reading from something other than the buffer.
5498
5499 * window.c (window_scroll_pixel_based): Only look at
5500 Vscroll_preserve_screen_position if the old PT can't be kept.
5501 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
5502
5503 2004-12-30 Kim F. Storm <storm@cua.dk>
5504
5505 * xdisp.c (get_line_height_property): New function extracted from
5506 original calc_line_height_property.
5507 (calc_line_height_property): Rework. Handle t and (nil . ratio).
5508 (x_produce_glyphs): Use them to handle line-height and
5509 line-spacing according to new height spec.
5510 (Qtotal): Remove.
5511 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
5512
5513 2004-12-30 Kenichi Handa <handa@m17n.org>
5514
5515 * fileio.c (Finsert_file_contents): Don't use
5516 current_buffer->buffer_file_coding_system even if REPLACE is
5517 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
5518
5519 * fontset.h (struct font_info): New members space_width and
5520 average_width.
5521
5522 * frame.h (struct frame): New member space_width.
5523 (FRAME_SPACE_WIDTH): New macro.
5524
5525 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
5526
5527 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
5528 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
5529 fontp->space_width.
5530 (x_load_font): Calculate fontp->space_width and fontp->average_width.
5531 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
5532
5533 * xdisp.c (x_produce_glyphs): Calculate tab width by
5534 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
5535
5536 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
5537
5538 * macterm.c (SelectionRange): Add Xcode position apple event struct.
5539 (do_ae_open_documents): Handle Xcode-style file position open events.
5540
5541 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
5542
5543 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
5544
5545 2004-12-29 Richard M. Stallman <rms@gnu.org>
5546
5547 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
5548
5549 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5550
5551 * macfns.c (install_window_handler): Modify extern to return OSErr
5552 value.
5553 (mac_window): Handle return value of install_window_handler.
5554
5555 * macterm.c (reflect_byte): Remove function.
5556 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
5557 Lookup table instead.
5558 (mac_do_font_lists): Simplify calculation of the longest
5559 nonspecial string.
5560 (init_mac_drag_n_drop): Remove function and declaration.
5561 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
5562 init_mac_drag_n_drop.
5563 (mac_do_track_drag): New function and declaration.
5564 (install_window_handler): Return OSErr value.
5565 (install_window_handler) [TARGET_API_MAC_CARBON]:
5566 Register handlers for tracking/receiving drag-and-drop items.
5567 (do_ae_open_documents): Generate unibyte strings for filenames.
5568 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
5569 Reject only non-filename items. Set event modifiers, and return value.
5570
5571 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5572
5573 * coding.c (decode_coding): Fix previous change.
5574
5575 2004-12-28 Richard M. Stallman <rms@gnu.org>
5576
5577 * xdisp.c (back_to_previous_visible_line_start):
5578 Don't call handle_display_prop.
5579
5580 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5581
5582 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
5583 (decode_coding_emacs_mule, encode_coding_emacs_mule)
5584 (decode_coding_iso2022, encode_designation_at_bol)
5585 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
5586 (decode_coding): Constify arguments and local vars.
5587
5588 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5589
5590 * xmenu.c (popup_get_selection): Only pop down dialogs
5591 on C-g and Escape.
5592 (popup_get_selection): Remove parameter down_on_keypress.
5593 (create_and_show_popup_menu, create_and_show_dialog):
5594 Remove parameter down_on_keypress to popup_get_selection.
5595
5596 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5597
5598 * dispextern.h: Change HAVE_CARBON to MAC_OS.
5599 (struct glyph_string): Likewise.
5600
5601 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
5602 mac_initialize.
5603
5604 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
5605 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
5606
5607 * fns.c (vector): Change MAC_OSX to MAC_OS.
5608
5609 * frame.c (x_set_frame_parameters, x_report_frame_params)
5610 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
5611 (x_set_border_width, Vdefault_frame_scroll_bars):
5612 Change HAVE_CARBON to MAC_OS.
5613
5614 * image.c [MAC_OS]: Include sys/stat.h.
5615 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
5616 QuickTimeComponents.h.
5617
5618 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
5619 [!MAC_OSX] (select): Use mac_wait_next_event.
5620 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
5621 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
5622 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5623 (mac_clear_font_name_table): Add extern.
5624 (Fmac_clear_font_name_table): New defun.
5625 (syms_of_mac): Defsubr it.
5626 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
5627 [MAC_OSX] (select_and_poll_event): New function.
5628 [MAC_OSX] (sys_select): Use it.
5629 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
5630 [MAC_OSX && SELECT_USE_CFSOCKET]
5631 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
5632 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
5633 RunLoop for simultaneously monitoring two kinds of inputs, window
5634 events and process outputs, without periodically polling.
5635
5636 * macfns.c (mac_initialized): Remove extern.
5637 (stricmp): Put in #if 0. All callers changed to use xstricmp in
5638 xfaces.c.
5639 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
5640 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
5641 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
5642 (mac_get_rdb_resource): New function (from w32reg.c).
5643 (x_get_string_resource): Use it.
5644 (install_window_handler): Add extern.
5645 (mac_window): New function.
5646 (Fx_create_frame): Use it instead of make_mac_frame.
5647 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
5648 (Fx_open_connection, Fx_close_connection): New defuns.
5649 (syms_of_macfns): Defsubr them.
5650 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
5651 Add kWindowNoUpdatesAttribute to the window attribute.
5652 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
5653 (x_create_tip_frame): Don't call ShowWindow.
5654 (Fx_show_tip): Call ShowWindow.
5655 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
5656 TARGET_API_MAC_CARBON'.
5657 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
5658 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
5659
5660 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
5661 (Window): Typedef to WindowPtr and move outside `#if
5662 TARGET_API_MAC_CARBON'.
5663 (XSizeHints): New struct.
5664
5665 * macterm.c (x_update_begin, x_update_end)
5666 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
5667 frame.
5668 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5669 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
5670 (construct_mouse_click): Put in #if 0.
5671 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
5672 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
5673 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5674 (activate_scroll_bars, deactivate_scroll_bars)
5675 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
5676 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
5677 if the position is neither user-specified nor program-specified.
5678 (x_free_frame_resources): Free size_hints.
5679 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
5680 (mac_clear_font_name_table): New function.
5681 (mac_do_list_fonts): Initialize font_name_table if needed.
5682 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
5683 around mac_do_list_fonts.
5684 (mac_unload_font): New function.
5685 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
5686 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
5687 and definitions with #if TARGET_API_MAC_CARBON.
5688 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
5689 (install_window_handler): Add decl.
5690 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
5691 window. Use UpdateControls. Get the rectangle that should be
5692 updated and restrict the target of expose_frame to it.
5693 (do_grow_window): Set minimum height/width according to size_hints.
5694 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
5695 (do_zoom_window): Don't use x_set_window_size.
5696 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
5697 (install_window_handler): New function.
5698 [!USE_CARBON_EVENTS] (mouse_region): New variable.
5699 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
5700 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
5701 GetEventDispatcherTarget inside BLOCK_INPUT.
5702 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
5703 Update mouse_region when mouse is moved.
5704 (make_mac_frame): Remove.
5705 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
5706 Initialize mouse pointer shapes. Change values of f->left_pos and
5707 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
5708 Don't call ShowWindow.
5709 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
5710 Vinvocation_name and Vsystem_name.
5711 (mac_make_rdb): New function (from w32term.c).
5712 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
5713 already been opened. Don't pass argument to
5714 mac_initialize_display_info. Don't set dpyinfo->height/width.
5715 Add entries to x_display_list and x_display_name_list.
5716 (x_delete_display): New function.
5717 (mac_initialize): Don't call mac_initialize_display_info.
5718 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
5719
5720 * macterm.h (check_mac): Add extern.
5721 (struct mac_output): New member size_hints.
5722 (FRAME_SIZE_HINTS): New macro.
5723 (mac_unload_font): Add extern.
5724
5725 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
5726
5727 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
5728
5729 2004-12-27 Richard M. Stallman <rms@gnu.org>
5730
5731 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
5732 (syms_of_buffer): Don't defsubr it.
5733
5734 * process.c (list_processes_1): Set undo_list instead
5735 of calling Fbuffer_disable_undo.
5736
5737 * xdisp.c (single_display_spec_string_p): Rename from
5738 single_display_prop_string_p.
5739 (single_display_spec_intangible_p): Rename from
5740 single_display_prop_intangible_p.
5741 (handle_single_display_spec): Rename from handle_single_display_prop.
5742 Rewritten to be easier to understand.
5743
5744 Change in load-history format. Functions now get (defun . NAME),
5745 and variables get just NAME.
5746
5747 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5748
5749 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5750 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
5751 (Qdefvar): Var deleted.
5752 (syms_of_eval): Don't initialze it.
5753
5754 * lread.c (syms_of_lread) <load-history>: Doc fix.
5755
5756 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5757
5758 * xmenu.c (popup_get_selection): Pop down on C-g.
5759 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
5760 pops down menu on C-g.
5761 (xdialog_show): If dialog popped down and no button in the dialog was
5762 pushed, call Fsignal to quit.
5763 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
5764 Fsignal to quit.
5765
5766 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
5767
5768 * gtkutil.c (xg_initialize): Install bindings for C-g so that
5769 dialogs and menus pop down.
5770
5771 2004-12-27 Kenichi Handa <handa@m17n.org>
5772
5773 * coding.c (code_convert_region): Fix calculation of `ratio'.
5774
5775 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5776
5777 * gtkutil.c (update_frame_tool_bar): Make the value of
5778 tool-bar-button-margin control margins of images in tool bar.
5779
5780 * alloc.c (check_depth): New variable.
5781 (overrun_check_malloc, overrun_check_realloc): Only add
5782 overhead and write check pattern if check_depth is 1 (to handle
5783 recursive calls). Increase/decrease check_depth in entry/exit.
5784 (overrun_check_free): Only check for overhead if check_depth is 1.
5785 Increase/decrease check_depth in entry/exit.
5786
5787 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5788
5789 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
5790 before touching input_available_clear_time, to avoid accessing it
5791 from multiple threads.
5792
5793 2004-12-23 Jason Rumney <jasonr@gnu.org>
5794
5795 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
5796 of JPEG library.
5797
5798 2004-12-22 Richard M. Stallman <rms@gnu.org>
5799
5800 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
5801
5802 * lisp.h (Vundo_outer_limit): Fix decl.
5803
5804 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
5805 Uses changed.
5806 (syms_of_undo): Initialize appropriately.
5807 (truncate_undo_list): If it's nil, there's no limit.
5808
5809 2004-12-22 Kenichi Handa <handa@m17n.org>
5810
5811 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
5812
5813 2004-12-21 Richard M. Stallman <rms@gnu.org>
5814
5815 * eval.c (unwind_to_catch): Clear immediate_quit.
5816
5817 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
5818 specially as `\ ' and `\-'.
5819
5820 * keyboard.c (kbd_buffer_store_event_hold):
5821 In the code for while-no-input, handle immediate_quit.
5822
5823 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
5824 Call that at the very start.
5825 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
5826 (syms_of_alloc): Don't define undo-limit,
5827 undo-strong-limit and undo-outer-limit here.
5828
5829 * undo.c (truncate_undo_list): Return void.
5830 Take just one argument, the buffer.
5831 Make it current, and inhibit recursive GC.
5832 Access and update the undo list directly; return void.
5833 Refer to the undo...limit variables directly.
5834 Test undo_outer_limit only after counting the whole current command.
5835 When it's exceeded, call the function in undo-outer-limit-function.
5836 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
5837 (Vundo_outer_limit_function): New variable.
5838 (syms_of_undo): Define undo-limit, undo-strong-limit
5839 and undo-outer-limit here, and undo-outer-limit-function.
5840 Doc fixes.
5841
5842 * lisp.h (truncate_undo_list): Update decl.
5843
5844 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
5845
5846 * fileio.c (Fread_file_name): Delete duplicates in
5847 file-name-history when history_delete_duplicates is true.
5848
5849 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5850
5851 * macterm.c (mac_do_list_fonts): Fix memory leak
5852
5853 2004-12-20 Richard M. Stallman <rms@gnu.org>
5854
5855 * regex.c (re_match_2_internal) <symend, wordend>:
5856 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
5857
5858 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5859
5860 * macterm.c (endif, x_font_name_to_mac_font_name):
5861 Use maccentraleurroman instead of maccentraleuropean
5862 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
5863 quickly finding a specific font without needing regexps.
5864
5865 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5866
5867 * syssignal.h: Declare main_thread.
5868 (SIGNAL_THREAD_CHECK): New macro.
5869
5870 * keyboard.c (input_available_signal): Move thread checking code
5871 to macro SIGNAL_THREAD_CHECK and call that macro.
5872 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
5873
5874 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
5875
5876 * emacs.c: Define main_thread.
5877 (main): Initialize main_thread.
5878 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
5879 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
5880
5881 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
5882
5883 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
5884
5885 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
5886
5887 * process.c (send_process_trap, sigchld_handler):
5888 Call SIGNAL_THREAD_CHECK.
5889
5890 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
5891
5892 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
5893
5894 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
5895 returning when xg_ignore_gtk_scrollbar is true.
5896
5897 2004-12-14 Kim F. Storm <storm@cua.dk>
5898
5899 * keyboard.c (read_char): Save and restore echo_string when
5900 handling input method.
5901
5902 2004-12-13 Richard M. Stallman <rms@gnu.org>
5903
5904 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
5905
5906 * keyboard.c (Vthrow_on_input): New variable.
5907 (syms_of_keyboard): Defvar and initialize it.
5908 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
5909
5910 * lisp.h (QUIT): Check for Vthrow_on_input.
5911 (Vthrow_on_input): Declare it.
5912
5913 2004-12-13 Kim F. Storm <storm@cua.dk>
5914
5915 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
5916 vector.
5917
5918 2004-12-12 Richard M. Stallman <rms@gnu.org>
5919
5920 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
5921
5922 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
5923 (Ftry_completion): Really use outer `zero'; eliminate inner one.
5924
5925 2004-12-12 Kenichi Handa <handa@m17n.org>
5926
5927 * term.c (encode_terminal_code): Fix previous change.
5928
5929 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
5930
5931 * keyboard.c (handle_async_input): Remove pthread mutex handling.
5932 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
5933
5934 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
5935 in macro arguments.
5936
5937 * minibuf.c (Ftry_completion, Fall_completions): Don't use
5938 XFASTINT blindly.
5939
5940 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5941
5942 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5943
5944 * w32term.c (x_calc_absolute_position): Remove calculation of
5945 difference between inner and outer window. Don't subtract difference
5946 for left and top calculations.
5947
5948 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5949 for left and top calculations. Remove call to x_real_positions.
5950 [Bug report by Drew Adams in November]
5951 (x_check_expected_move): Do not set change_gravity to 1 when calling
5952 x_set_offset.
5953
5954 2004-12-08 Richard M. Stallman <rms@gnu.org>
5955
5956 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5957 control chars and escaped octal codes.
5958 (Qescape_glyph): New variable.
5959 (syms_of_xdisp): Initialize it.
5960 (escape_glyph_face): New variable.
5961 (redisplay_window): Initialize it.
5962
5963 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5964
5965 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5966 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5967
5968 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5969
5970 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5971 reset_malloc_hooks.
5972
5973 * keyboard.c (handle_async_input, input_available_signal):
5974 Add ! defined (SYSTEM_MALLOC) around thread code.
5975
5976 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5977
5978 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5979
5980 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5981
5982 * config.in: Regenerate.
5983
5984 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5985
5986 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5987 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5988 if not given by a mouse click to correspond with x-popup-menu
5989 documentation.
5990
5991 * config.in: Regenerate.
5992
5993 * gtkutil.c: Include signal.h and syssignal.h.
5994 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5995
5996 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5997 new variables main_thread and alloc_mutex,
5998 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5999 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
6000 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
6001 (UN)BLOCK_INPUT.
6002 (emacs_blocked_free, emacs_blocked_malloc)
6003 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
6004 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
6005 (reset_malloc_hooks): New function.
6006
6007 * lisp.h: Declare reset_malloc_hooks.
6008
6009 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
6010
6011 * keyboard.c: Conditionally include pthread.h
6012 (handle_async_input, input_available_signalt): If not in the main
6013 thread, block signal, send signal to main thread and return.
6014
6015 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
6016 Set current folder in file chooser if default_filename is a directory.
6017
6018 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
6019
6020 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
6021 Remove redundant correctness checks.
6022 (regex_compile): Fix up error codes for \{..\} expressions.
6023
6024 2004-12-05 Richard M. Stallman <rms@gnu.org>
6025
6026 * regex.c (regex_compile): Fix end-of-pattern case for space.
6027
6028 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6029
6030 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
6031 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
6032 crashes with invalid characters.
6033 * macmenu.c (add_menu_item): Use it.
6034 * image.c (image_load_quartz2d): Likewise.
6035 * macfns.c (x_set_name, x_set_title): Likewise.
6036 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
6037 creating them each time for labels.
6038
6039 2004-12-02 Richard M. Stallman <rms@gnu.org>
6040
6041 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
6042 don't use it here.
6043
6044 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
6045 (interactive_p): Skip Scalled_interactively_p frames
6046 like Sinteractive_p frames.
6047 (unwind_to_catch): Clear handling_signal.
6048
6049 * data.c (Fmake_variable_buffer_local): Doc fix.
6050 (Fmake_local_variable): Doc fix.
6051
6052 * insdel.c (insert_from_string_before_markers)
6053 (insert_from_string): Don't modify buffer on empty insertion.
6054
6055 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
6056
6057 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6058
6059 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
6060 menu text as UTF8 fails.
6061
6062 2004-12-01 Kim F. Storm <storm@cua.dk>
6063
6064 * alloc.c: Add commentary for last change.
6065 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
6066 sizeof(size_t) != 4.
6067 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
6068 Use them. Also clear header and trailer of freed memory.
6069 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
6070 (string_overrun_cookie): Rename from string_overrun_pattern.
6071 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
6072
6073 2004-12-01 Andreas Schwab <schwab@suse.de>
6074
6075 * lisp.h: Declare string_to_multibyte.
6076
6077 2004-12-01 Kenichi Handa <handa@m17n.org>
6078
6079 * w32console.c (w32con_write_glyphs): Decide coding here.
6080 Adjusted for the change of encode_terminal_code.
6081
6082 * term.c (encode_terminal_code): Don't make it "static".
6083
6084 2004-11-30 Kenichi Handa <handa@m17n.org>
6085
6086 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
6087 (encode_terminal_code): Argument changed. Encode all
6088 characters at once, and return a pointer to the result of encoding.
6089 (write_glyphs): Decide coding here. Adjusted for the above change.
6090 (insert_glyphs): Likewise.
6091 (term_init): Initialize encode_terminal_bufsize to 0.
6092
6093 * coding.c (Vcode_conversion_workbuf_name): New variable.
6094 (syms_of_coding): Initialize and staticpro it.
6095 (set_conversion_work_buffer): New function.
6096 (run_pre_post_conversion_on_str): Use it.
6097 (run_pre_write_conversin_on_c_str): New function.
6098
6099 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
6100
6101 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6102
6103 * keyboard.c: Don't undef SIGIO
6104 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
6105 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
6106 (macfns.o): Don't depend on ccl.h.
6107 * macfns.c (mac_frame_parm_handlers): Set handlers for
6108 Qleft_fringe and Qright_fringe.
6109 * macterm.c (mac_fill_rectangle_to_pixmap)
6110 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
6111 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
6112 Put in #if 0.
6113 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
6114 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
6115 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
6116 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
6117 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
6118 XDrawImageString. Always draw background and foreground separately.
6119 (x_draw_image_foreground): Use clipping instead of computing the
6120 intersection rectangle.
6121 (x_draw_image_glyph_string): Don't draw an image with mask to a
6122 pixmap.
6123 (x_redisplay_interface): Set flush_display_optional member to 0.
6124 (XTread_socket): Correctly reset the TEConverter
6125 object.
6126
6127 2004-11-30 Kim F. Storm <storm@cua.dk>
6128
6129 * lisp.h: New defines to enable buffer overrun checking.
6130 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
6131 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
6132
6133 * alloc.c: Add more checks for buffer overruns.
6134 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
6135 xmalloc_overrun_check_trailer, overrun_check_malloc)
6136 overrun_check_realloc, overrun_check_free): Add.
6137 (GC_STRING_EXTRA, string_overrun_pattern): Add.
6138 (check_sblock, allocate_string_data, compact_small_strings):
6139 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
6140 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
6141 (check_string_free_list): Add.
6142 (allocate_string, sweep_strings): Call check_string_free_list.
6143
6144 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
6145 XMALLOC_OVERRUN_CHECK to avoid crash during load.
6146
6147 2004-11-29 Kim F. Storm <storm@cua.dk>
6148
6149 * fns.c (concat): Use SAFE_ALLOCA.
6150
6151 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
6152
6153 * sysdep.c (emacs_write): Don't use QUIT.
6154
6155 2004-11-29 Kenichi Handa <handa@m17n.org>
6156
6157 * buffer.c (init_buffer): Set current_buffer->directory to a
6158 multibyte string made by string_to_multibyte.
6159
6160 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
6161
6162 2004-11-27 Andreas Schwab <schwab@suse.de>
6163
6164 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
6165
6166 * s/gnu-linux.h: Enable no-op gcpros on ia64.
6167 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
6168
6169 * filelock.c (lock_file_1): Call get_boot_time early.
6170 Increase buffer size.
6171
6172 2004-11-27 Eli Zaretskii <eliz@gnu.org>
6173
6174 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
6175 is not defined.
6176
6177 2004-11-27 Kim F. Storm <storm@cua.dk>
6178
6179 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
6180 marker out of doc string.
6181
6182 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
6183
6184 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
6185 which was not mentioned in the log.
6186
6187 2004-11-26 Kim F. Storm <storm@cua.dk>
6188
6189 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
6190 angle bitmaps at top/bottom line.
6191
6192 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
6193 set it when it->method is set to next_element_from_display_vector.
6194 (setup_for_ellipsis): Add LEN argument. Callers changed.
6195 Set it->saved_face_id.
6196 (get_next_display_element): Use loop instead of recursion.
6197 Set it->saved_face_id. Combine duplicate code for ctr chars.
6198 (next_element_from_display_vector): Do not set it->saved_face_id.
6199 (next_element_from_ellipsis): Use setup_for_ellipsis.
6200
6201 2004-11-26 Eli Zaretskii <eliz@gnu.org>
6202
6203 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
6204 prevent compiler warnings.
6205
6206 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
6207
6208 * keyboard.c (command_loop_1): Print a message describing the key
6209 the user just pressed when this key has no binding.
6210
6211 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
6212 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
6213
6214 * lread.c (readchar): Check QUIT when `getc' is interrupted.
6215
6216 2004-11-24 Richard M. Stallman <rms@gnu.org>
6217
6218 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
6219
6220 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
6221
6222 2004-11-24 Kim F. Storm <storm@cua.dk>
6223
6224 * xdisp.c (move_it_in_display_line_to, display_line):
6225 Restore saved_face_id also when truncate-lines or hscrolled.
6226
6227 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6228
6229 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
6230 x-use-old-gtk-file-dialog.
6231
6232 * xfns.c: Define x_use_old_gtk_file_dialog.
6233 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
6234 outside ifdef USE_GTK.
6235
6236 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
6237
6238 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
6239 Don't use XFASTINT blindly.
6240
6241 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
6242
6243 * indent.c (skip_invisible): Avoid non-idempotent side-effects
6244 in macro arguments.
6245
6246 * keymap.c (Flookup_key): Check INTEGERP before XINT.
6247
6248 * lread.c (oblookup): Don't use XFASTINT blindly.
6249
6250 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
6251 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
6252
6253 2004-11-23 Kim F. Storm <storm@cua.dk>
6254
6255 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
6256 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
6257
6258 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
6259 signal_p is zero and face name is unknown.
6260 (Fx_list_fonts): Don't signal error in lookup_named_face.
6261 (Fface_font): Signal error in lookup_named_face.
6262 (ascii_face_of_lisp_face): Likewise.
6263
6264 * dispextern.h (lookup_named_face): Fix prototype.
6265
6266 * xdisp.c (handle_single_display_prop): Don't signal error in
6267 lookup_named_face for unknown fringe face name.
6268 (highlight_trailing_whitespace): Don't signal error in
6269 lookup_named_face if trailing-whitespace face unknown.
6270 (calc_line_height_property): Don't signal error in
6271 lookup_named_face if specified face name is unknown.
6272
6273 * fringe.c (update_window_fringes): Show top row indicator if
6274 window has header-line. Don't show arrow at bob and eob
6275 if the boundary indicators are not used.
6276 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
6277
6278 * window.c (set_window_buffer): Clear display_error_modiff.
6279
6280 2004-11-22 Kim F. Storm <storm@cua.dk>
6281
6282 * fringe.c (update_window_fringes): Provide sensible fall-back
6283 value for non-nil indicate-buffer-boundaries setting.
6284
6285 2004-11-22 Markus Rost <rost@ias.edu>
6286
6287 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
6288
6289 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
6290
6291 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
6292
6293 2004-11-21 Kim F. Storm <storm@cua.dk>
6294
6295 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
6296
6297 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
6298 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
6299
6300 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
6301 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
6302
6303 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
6304 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
6305
6306 * xdisp.c (move_it_in_display_line_to, display_line):
6307 Restore saved_face_id if overflow-newline-into-fringe is enabled and
6308 line is continued before or in middle of element from display vector.
6309
6310 * indent.c (Fvertical_motion): Fix last change. Use another
6311 method to detect if iterator moved too far ahead after reseat.
6312
6313 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
6314 expand matrix width for overflow in zero-width area.
6315 (append_glyph, append_composite_glyph, produce_image_glyph)
6316 (append_stretch_glyph): Use it to avoid loop in redisplay.
6317 (note_mode_line_or_margin_highlight): Don't let help-echo from
6318 string override help-echo from image map.
6319
6320 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
6321
6322 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
6323 * callint.c (Fcall_interactively): Ditto.
6324
6325 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
6326
6327 * minibuf.c (Fminibuffer_complete_and_exit):
6328 Fixup the case of the completed value, for case-indep completion.
6329
6330 2004-11-20 Richard M. Stallman <rms@gnu.org>
6331
6332 * lisp.h (Fread_from_minibuffer): Add arg in decl.
6333
6334 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
6335 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
6336
6337 * search.c (Vsearch_spaces_regexp):
6338 Rename from Vsearch_whitespace_regexp. All uses changed.
6339
6340 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
6341
6342 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
6343
6344 2004-11-19 Richard M. Stallman <rms@gnu.org>
6345
6346 * search.c (Vsearch_whitespace_regexp): New variable.
6347 (syms_of_search): Defvar it.
6348 (compile_pattern_1): Call re_set_whitespace_regexp with it.
6349 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
6350 is non-nil.
6351 (struct regexp_cache): New element whitespace_regexp.
6352 (syms_of_search): Initialize whitespace_regexp elements.
6353 (compile_pattern): Compare whitespace_regexp elements.
6354 (compile_pattern_1): Set whitespace_regexp elements.
6355
6356 * regex.c (regex_compile): Substitute whitespace_regexp
6357 for spaces, if it is nonzero.
6358 (whitespace_regexp): New variable.
6359 (re_set_whitespace_regexp): New function.
6360
6361 2004-11-19 Kim F. Storm <storm@cua.dk>
6362
6363 * indent.c (Fvertical_motion): Fix last change.
6364
6365 2004-11-18 Kim F. Storm <storm@cua.dk>
6366
6367 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
6368 Instead, move back again if reseating moves too far ahead.
6369
6370 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
6371
6372 * xdisp.c (message3): Call clear_message.
6373
6374 2004-11-17 Kim F. Storm <storm@cua.dk>
6375
6376 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
6377
6378 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6379
6380 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
6381
6382 * xmenu.c (x_menu_in_use): Remove.
6383 (x_menu_set_in_use): Also set popup_activated_flag.
6384
6385 * xfns.c (Fx_file_dialog): Call popup_activated instead of
6386 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
6387
6388 * xterm.h (x_menu_in_use): Remove.
6389
6390 2004-11-16 Richard M. Stallman <rms@gnu.org>
6391
6392 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
6393 Use map-keymap-internal to implement that.
6394
6395 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
6396
6397 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
6398
6399 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
6400 a window before using XWINDOW.
6401
6402 * window.c (make_window, Fselect_window, make_dummy_parent)
6403 (save_window_save):
6404 * frame.c (make_frame):
6405 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
6406
6407 * lisp.h (NILP): Use EQ rather than XFASTINT.
6408
6409 2004-11-16 Kim F. Storm <storm@cua.dk>
6410
6411 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
6412
6413 * indent.c (Fvertical_motion): Fix last change. Only reseat when
6414 moving backwards.
6415
6416 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
6417
6418 * dispextern.h: Extern reseat_at_previous_visible_line_start.
6419
6420 2004-11-16 Kenichi Handa <handa@m17n.org>
6421
6422 * xdisp.c (display_mode_element): Fix previous change (calculate
6423 end position of substring to display correctly).
6424
6425 2004-11-16 Kim F. Storm <storm@cua.dk>
6426
6427 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
6428 Reported by Andrew M. Scott.
6429
6430 2004-11-15 Kim F. Storm <storm@cua.dk>
6431
6432 * fns.c (Fsafe_plist_get): New defun.
6433 (syms_of_fns): Defsubr it.
6434
6435 * lisp.h (Fsafe_plist_get): Add EXFUN.
6436
6437 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
6438 Use Fsafe_plist_get.
6439 (note_mode_line_or_margin_highlight, note_mouse_highlight):
6440 Fix image map element parsing. Use Fsafe_plist_get.
6441
6442 2004-11-15 Richard M. Stallman <rms@gnu.org>
6443
6444 * xdisp.c (get_next_display_element): Fix previous change.
6445
6446 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6447
6448 * window.c (shrink_windows): Handle special case of one window left
6449 when trying to shrink the final reminder. Grow windows if
6450 total_removed is less than total_shrink.
6451
6452 * xmenu.c (pop_down_menu): Remove global variable current_menu,
6453 extract pointer from arg with XSAVE_VALUE.
6454 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
6455 Construct arg to record_unwind_protect with make_save_value.
6456
6457 2004-11-13 Richard M. Stallman <rms@gnu.org>
6458
6459 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
6460 (get_next_display_element): Fix previous change to apply only to \n.
6461
6462 * indent.c (Fvertical_motion): Scan to PT from start of line to
6463 make iterator consistent.
6464
6465 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6466
6467 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6468
6469 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
6470
6471 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
6472 Record unwind with clean_up_file_dialog.
6473
6474 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
6475 Declare.
6476
6477 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
6478
6479 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6480
6481 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6482 (xg_file_sel_destroy): Remove.
6483 (xg_file_response_cb, pop_down_file_dialog)
6484 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
6485 New functions.
6486 (xg_get_file_with_chooser, xg_get_file_with_selection):
6487 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
6488 Move common code to xg_get_file_name. Return widget created.
6489 (xg_get_file_name): Set name, transient for, modal and destroy
6490 with parent here. Connect response signal to xg_file_response_cb,
6491 connect delete-event to gtk_true. Record pop_down_file_dialog
6492 for unwind. Do event loop and call x_menu_wait_for_event in loop.
6493 (xg_create_widget): Make dialogs modal.
6494
6495 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
6496 Lisp_Object.
6497 (popup_get_selection): Move unwind protect ...
6498 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
6499 Move destroy of widget to pop_down_menu.
6500 (popup_widget_loop): Move unwind protect ...
6501 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
6502 Move destroy of widget to pop_down_menu.
6503 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6504 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
6505 x_mouse_leave and grabbed = 0 to pop_down_menu.
6506
6507 2004-11-13 Kim F. Storm <storm@cua.dk>
6508
6509 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
6510 (syms_of_xdisp): DEFVAR_BOOL it.
6511 (make_cursor_line_fully_visible, try_cursor_movement)
6512 (try_window_id): Use it.
6513
6514 2004-11-12 Kim F. Storm <storm@cua.dk>
6515
6516 * dispextern.h (struct glyph_row): New member extra_line_spacing.
6517 (struct it): New member max_extra_line_spacing.
6518 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
6519 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
6520 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
6521 part of last line is only extra line spacing (so the text on the
6522 line is fully visible). Use helper macros.
6523 Add W arg (to use them). All callers changed.
6524 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
6525 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
6526
6527 * window.c (window_scroll_pixel_based, Frecenter):
6528 Use move_it_vertically_backward directly.
6529 (Frecenter): Fix calculation of new start pos for negative arg.
6530 Before, the new start pos was sometimes chosen too far back, so
6531 the last line became only partially visible, and thus would be
6532 either only semi-visible or automatically scrolled to the middle
6533 of the window by redisplay.
6534
6535 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
6536 (move_it_vertically_backward): Don't recure to move further back.
6537 (move_it_vertically): Remove superfluous condition.
6538 (move_it_by_lines): Clear last_height when moved 0 lines.
6539 (resize_mini_window): Use it.max_extra_line_spacing.
6540 (display_tool_bar_line): Clear row->extra_line_spacing.
6541 (try_scrolling): Use move_it_vertically_backward directly.
6542 (redisplay_window): Likewise.
6543 (compute_line_metrics): Set row->extra_line_spacing.
6544 (display_line, display_string): Likewise.
6545 (x_produce_glyphs): Update it->max_extra_line_spacing.
6546
6547 * xmenu.c (pop_down_menu): Return nil.
6548
6549 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6550
6551 * xmenu.c (x_menu_wait_for_event): New function.
6552 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
6553 to handle timers.
6554 (popup_widget_loop): Add argument do_timers.
6555 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
6556 do_timers to popup_widget_loop.
6557 (xmenu_show): Call XMenuActivateSetWaitFunction so that
6558 x_menu_wait_for_event is called by XMenuActivate.
6559 (create_and_show_popup_menu): Pass 1 for do_timers to
6560 popup_get_selection.
6561 (pop_down_menu): New function.
6562 (popup_get_selection, popup_widget_loop): Unwind protect to
6563 pop_down_menu.
6564 (popup_widget_loop): Add argument widget.
6565 (create_and_show_popup_menu, create_and_show_dialog): Pass new
6566 argument widget to popup_widget_loop.
6567
6568 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
6569
6570 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
6571
6572 2004-11-09 Kim F. Storm <storm@cua.dk>
6573
6574 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
6575 Fix various comments referring to XEvents instead of input events.
6576 (x_queue_event): Fix format strings.
6577 (x_stop_queuing_selection_requests): Likewise.
6578
6579 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
6580 (pint2hrstr): Add extra braces to silence compiler.
6581
6582 * print.c (print_object): Fix format string.
6583
6584 * lread.c (read1): Fix next_char matching.
6585
6586 * lisp.h (Fdelete): Add EXFUN.
6587 (replace_range_2): Add prototype.
6588
6589 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
6590
6591 * intervals.h (NULL_INTERVAL_P): Add separate version when
6592 ENABLE_CHECKING is not defined to silence compiler.
6593 (compare_string_intervals): Add prototype.
6594
6595 * fringe.c (destroy_fringe_bitmap): Fix return type.
6596 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
6597
6598 * emacs.c (Fdump_emacs): Fix format string.
6599
6600 * doc.c: Include <ctype.h>.
6601 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
6602
6603 * data.c (store_symval_forwarding): Remove unused variables.
6604
6605 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
6606
6607 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6608
6609 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
6610 to ${OLDXMENU}.
6611
6612 2004-11-09 Kim F. Storm <storm@cua.dk>
6613
6614 * process.c (Fmake_network_process): Remove kludge for interrupted
6615 connects on BSD. If connect is interrupted, just close socket and
6616 start over rather than sleeping and retry with same socket.
6617
6618 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6619
6620 * .cvsignore: Add buildobj.lst.
6621
6622 * doc.c: New variable Vbuild_files.
6623 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
6624 file names from buildobj.lst. Only attach docstrings from files
6625 that are in Vbuild_files.
6626 (syms_of_doc): Defvar Vbuild_files.
6627
6628 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
6629 and w32*.o.
6630 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6631 (mostlyclean): Rm buildobj.lst
6632
6633 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
6634 is linked.
6635
6636 2004-11-09 Kim F. Storm <storm@cua.dk>
6637
6638 * fringe.c (update_window_fringes): Update fringe bitmaps if
6639 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
6640 also update previous row to get rid of misc. artifacts.
6641
6642 2004-11-08 Kim F. Storm <storm@cua.dk>
6643
6644 * xdisp.c (fast_find_position): Fix start pos if header line present.
6645 (note_mouse_highlight): Clear mouse face if we move out of text area.
6646
6647 2004-11-08 Eli Zaretskii <eliz@gnu.org>
6648
6649 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
6650 Don't include <sys/time.h> explicitly.
6651 Include <stdio.h> unconditionally, not just on MacOS.
6652
6653 2004-11-08 Kenichi Handa <handa@m17n.org>
6654
6655 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
6656 don't pay attention to '\' before '*'.
6657 (fontset_pattern_regexp): Change the meaning of the second arg.
6658 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
6659 (check_fontset_name): Try NAME as literal at first, and if it
6660 failes, try NAME as pattern.
6661
6662 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6663
6664 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
6665
6666 2004-11-07 Andreas Schwab <schwab@suse.de>
6667
6668 * lisp.h (Fmsdos_downcase_filename): Declare.
6669 * dired.c (Fmsdos_downcase_filename): Don't declare here.
6670 * fileio.c: Likewise.
6671
6672 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6673
6674 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
6675 comparisons with integers instead of Lisp_Object address.
6676 (Fmsdos_set_keyboard): Declare argument allkeys.
6677
6678 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
6679
6680 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
6681 int/Lisp_Object mixup.
6682
6683 * fileio.c: Ditto.
6684
6685 2004-11-06 Steven Tamm <steventamm@mac.com>
6686
6687 * editfns.c: Need to include sys/time.h before resource.h on darwin.
6688
6689 2004-11-06 Richard M. Stallman <rms@gnu.org>
6690
6691 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
6692
6693 * xfaces.c (merge_named_face): GCPRO the face_name in the
6694 named_merge_point struct that we make.
6695 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
6696
6697 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
6698 before deciding whether to inactivate mark.
6699
6700 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
6701
6702 * config.in: Regenerate (add HAVE_GETRUSAGE).
6703 * editfns.c (Fget_internal_run_time): New function.
6704 (syms_of_data): Defsubr it.
6705 * fns.c (sxhash): As far as possible, merge calculation of
6706 hash code for symbols and strings.
6707
6708 2004-11-06 Eli Zaretskii <eliz@gnu.org>
6709
6710 * frame.c (syms_of_frame): Fix the example in the doc string.
6711
6712 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6713
6714 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
6715
6716 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
6717 (create_and_show_dialog): Revert change from 2004-10-31.
6718
6719 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
6720
6721 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
6722
6723 2004-11-05 Kim F. Storm <storm@cua.dk>
6724
6725 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
6726
6727 * fileio.c (Ffile_modes): Doc fix.
6728 (auto_save_1): Check for Ffile_modes nil value.
6729
6730 2004-11-05 Kim F. Storm <storm@cua.dk>
6731
6732 * xselect.c (struct selection_event_queue, selection_queue)
6733 (x_queue_selection_requests, x_queue_event)
6734 (x_start_queuing_selection_requests)
6735 (x_stop_queuing_selection_requests): Add new queue for selection
6736 input events to replace previous XEvent queue in xterm.c.
6737 (queue_selection_requests_unwind): Adapt to new queue.
6738 (x_reply_selection_request): Adapt to new queue.
6739 Unexpect wait_object in case of x errors (memory leak).
6740 (x_handle_selection_request, x_handle_selection_clear): Make static.
6741 (x_handle_selection_event): New function. May queue selection events.
6742 (wait_for_property_change_unwind): Use save_value instead of cons.
6743 Clear property_change_reply_object.
6744 (wait_for_property_change): Abort if already waiting.
6745 Use save_value instead of cons for unwind data.
6746 (x_handle_property_notify): Skip events already arrived, but don't
6747 free them, as "arrived" field is checked by wait_for_property_change,
6748 and it will be freed by unwind or explicit unexpect_property_change.
6749 (x_get_foreign_selection): Add to new queue.
6750 (receive_incremental_selection): Don't unexpect wait_object when done
6751 as it has already been freed by previous wait_for_property_change.
6752
6753 * xterm.h (x_start_queuing_selection_requests)
6754 (x_stop_queuing_selection_requests, x_handle_selection_request)
6755 (x_handle_selection_clear): Remove prototypes.
6756 (x_handle_selection_event): Add prototype.
6757
6758 * xterm.c (handle_one_xevent): Don't queue X selection events
6759 here, it may be too late if we start queuing after we have already
6760 stored some selection events into the kbd buffer.
6761 (struct selection_event_queue, queue, x_queue_selection_requests)
6762 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
6763 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
6764 (x_catch_errors_unwind): Block input around final XSync.
6765
6766 * keyboard.h (kbd_buffer_unget_event): Add prototype.
6767
6768 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
6769 (kbd_buffer_unget_event): New function.
6770 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
6771 and use x_handle_selection_event.
6772 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
6773
6774 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6775
6776 * xselect.c (TRACE3): New debug macro.
6777 (x_reply_selection_request): Use it.
6778 (receive_incremental_selection): In call to TRACE0, the name of
6779 a symbol is in xname.
6780
6781 2004-11-05 Kim F. Storm <storm@cua.dk>
6782
6783 * fontset.c (fontset_pattern_regexp): Use unsigned char.
6784
6785 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6786
6787 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
6788
6789 * gtkutil.h (use_old_gtk_file_dialog): Declare.
6790
6791 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
6792 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
6793 * xfns.c (syms_of_xfns): ... to here.
6794
6795 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
6796 it doesn't start with /.
6797
6798 2004-11-04 Kenichi Handa <handa@m17n.org>
6799
6800 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
6801 treat it as a literal character.
6802
6803 2004-11-03 Kim F. Storm <storm@cua.dk>
6804
6805 * .gdbinit (ppt): New function.
6806
6807 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6808
6809 * xterm.c (x_window_to_scroll_bar): Only call
6810 xg_get_scroll_id_for_window if toolkit scroll bars are used.
6811
6812 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
6813 of save.
6814
6815 2004-11-02 Andreas Schwab <schwab@suse.de>
6816
6817 * window.c (Fscroll_right): Fix last change.
6818
6819 2004-11-02 Kim F. Storm <storm@cua.dk>
6820
6821 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
6822
6823 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6824
6825 * callproc.c (Fcall_process): Block input around vfork.
6826
6827 2004-11-02 Kim F. Storm <storm@cua.dk>
6828
6829 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
6830 (syms_of_eval): Defsubr it.
6831
6832 2004-11-02 Richard M. Stallman <rms@gnu.org>
6833
6834 * insdel.c (replace_range_2): New function.
6835
6836 * casefiddle.c (casify_region): Handle changes in byte-length
6837 using replace_range_2.
6838
6839 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
6840
6841 * xdisp.c (back_to_previous_visible_line_start):
6842 Subtract 1 from pos when checking previous newline for invisibility.
6843
6844 * window.c (window_scroll_pixel_based): Update preserve_y
6845 for header line if any.
6846 (Fscroll_left, Fscroll_right): Don't call interactive_p;
6847 use a new second argument instead.
6848
6849 * eval.c (Fcall_interactive_p): New function.
6850 (interactive_p): Don't test INTERACTIVE here.
6851 (Finteractive_p): Doc fix.
6852
6853 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
6854
6855 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6856
6857 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
6858 comparing font names.
6859
6860 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6861
6862 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
6863 Fx_file_dialog if only directories should be read.
6864
6865 * lisp.h: Fx_file_dialog takes 5 parameters.
6866
6867 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
6868 Add parameter only_dir_p.
6869 In Motif version, don't put DEFAULT_FILENAME in filter part of the
6870 dialog, just text field part. Do not add DEFAULT_FILENAME
6871 to list of files if it isn't there.
6872 In GTK version, pass only_dir_p parameter to xg_get_file_name.
6873
6874 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
6875 Check only_dir_p instead of comparing prompt to "Dired". When using
6876 a save dialog, add option kNavDontConfirmReplacement, change title
6877 to "Enter name", change text for save button to "Ok".
6878
6879 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
6880 Check only_dir_p instead of comparing prompt to "Dired".
6881
6882 * gtkutil.c (xg_get_file_with_chooser)
6883 (xg_get_file_with_selection): New functions, only defined ifdef
6884 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
6885 respectively.
6886 (xg_get_file_name): Add parameter only_dir_p.
6887 Call xg_get_file_with_chooser or xg_get_file_with_selection
6888 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
6889 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
6890
6891 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
6892
6893 * config.in: Rebuild (added HAVE_GTK_FILE_*).
6894
6895 2004-11-01 Kim F. Storm <storm@cua.dk>
6896
6897 * process.c (connect_wait_mask, num_pending_connects):
6898 Only declare and use them if NON_BLOCKING_CONNECT is defined.
6899 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
6900 (IF_NON_BLOCKING_CONNECT): New helper macro.
6901 (wait_reading_process_output): Only declare and use local vars
6902 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
6903
6904 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
6905
6906 * w32term.c (x_scroll_run): Delete region objects after use.
6907
6908 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6909
6910 * xmenu.c: Add prototypes for forward function declarations.
6911 (popup_get_selection): Remove parameter do_timers, remove call to
6912 timer_check.
6913 (create_and_show_popup_menu, create_and_show_dialog):
6914 Remove parameter do_timers from call to popup_get_selection.
6915
6916 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
6917 tool_bar_items and assign the result to f->tool_bar_items if
6918 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
6919 tool_bar_items to assignment of result.
6920
6921 * atimer.c (alarm_signal_handler): Do not call set_alarm if
6922 pending_atmers is non-zero.
6923
6924 2004-10-31 Kim F. Storm <storm@cua.dk>
6925
6926 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
6927
6928 2004-10-28 Will <will@glozer.net>
6929
6930 * macterm.c: Allow user to assign key modifiers to the Mac Option
6931 key via a 'mac-option-modifier' variable.
6932
6933 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6934
6935 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
6936 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
6937 (x_handle_selection_request, x_handle_selection_clear)
6938 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
6939
6940 2004-10-28 Richard M. Stallman <rms@gnu.org>
6941
6942 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6943
6944 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6945
6946 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6947
6948 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6949 comment-starter over a 1-char one.
6950
6951 2004-10-27 Richard M. Stallman <rms@gnu.org>
6952
6953 * xdisp.c (get_next_display_element): In mode lines,
6954 treat newline and tab like other control characters.
6955
6956 * editfns.c (Fmessage): Doc fix.
6957
6958 * indent.c (vmotion): When moving up, check the newline before.
6959 Make prevline an int, not a Lisp_Object.
6960
6961 2004-10-27 Kim F. Storm <storm@cua.dk>
6962
6963 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6964 Only allocate info and discarded tables once.
6965
6966 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6967 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6968 (SAFE_FREE): Test it to determine if we need to unwind to free.
6969 Remove size arg. All users changed.
6970 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6971
6972 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6973
6974 * gtkutil.c: Put empty line between comment and function body.
6975 (xg_destroy_widgets): Rename from remove_from_container.
6976 Just destroy all widgets in list. Argument wcont removed.
6977 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6978 instead of remove_from_container.
6979 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6980 (free_frame_tool_bar): Add comment.
6981
6982 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6983 is not NULL before strcmp.
6984
6985 2004-10-26 Kim F. Storm <storm@cua.dk>
6986
6987 * callint.c (Fcall_interactively): Add 'U' code to get the
6988 up-event discarded by a previous 'k' or 'K' argument.
6989
6990 2004-10-26 David Kastrup <dak@gnu.org>
6991
6992 * buffer.c (syms_of_buffer): Fix a few typos.
6993
6994 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6995
6996 * xsmfns.c: Put empty line between comment and function body.
6997 Use two spaces before comment end.
6998
6999 2004-10-25 Kenichi Handa <handa@m17n.org>
7000
7001 * fontset.c (fontset_pattern_regexp): Optimize for the case that
7002 PATTERN is full XLFD.
7003
7004 2004-10-24 Kenichi Handa <handa@m17n.org>
7005
7006 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
7007
7008 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
7009 (regex_compile): Return REG_ERANGEX if appropriate.
7010
7011 2004-10-22 Kenichi Handa <handa@m17n.org>
7012
7013 * editfns.c (Ftranslate_region_internal): New function.
7014 (syms_of_editfns): Defsubr it.
7015
7016 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7017
7018 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
7019
7020 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7021
7022 * xterm.h (x_output): New member `xic_base_fontname'.
7023 (FRAME_XIC_BASE_FONTNAME): New macro.
7024 (xic_free_xfontset): Declare.
7025
7026 * xfns.c (xic_create_xfontset): Share fontsets between frames
7027 based on base_fontname.
7028 (xic_free_xfontset): New function.
7029 (free_frame_xic): Use it.
7030 (xic_set_xfontset): Ditto.
7031
7032 * xterm.c (xim_destroy_callback): Ditto.
7033
7034
7035 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
7036
7037 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
7038
7039 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7040
7041 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
7042 XSync.
7043
7044 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
7045 New variables and constant.
7046 (main): Calculate heap_bss_diff. If we are dumping and the
7047 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
7048 and exec ourself again.
7049 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
7050 print a warning.
7051
7052 * lastfile.c: Make my_endbss and my_endbss_static available on all
7053 platforms.
7054
7055 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
7056 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
7057
7058 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
7059
7060 * data.c (Flocal_variable_if_set_p): Doc fix.
7061
7062 2004-10-19 Jason Rumney <jasonr@gnu.org>
7063
7064 * w32.c (init_environment): Set emacs_dir correctly when running
7065 emacs from the build directory.
7066
7067 2004-10-19 Richard M. Stallman <rms@gnu.org>
7068
7069 * editfns.c (Fdelete_and_extract_region):
7070 If region is empty, return null string.
7071
7072 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7073
7074 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
7075 and canon_width.
7076 (xg_frame_cleared): Remove.
7077
7078 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
7079 (xg_find_top_left_in_fixed): Remove.
7080 (xg_create_scroll_bar): Put an event box widget between
7081 the scroll bar widget and the edit widget.
7082 (xg_show_scroll_bar): Show the parent widget (the event box).
7083 (xg_remove_scroll_bar): Destroy parent (the event box) also.
7084 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
7085 Move the parent (the event box) widget inside the fixed widget.
7086 Move window clear to xterm.c.
7087
7088 * gtkutil.h (xg_frame_cleared): Remove.
7089
7090 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
7091 (x_scroll_bar_create, XTset_vertical_scroll_bar):
7092 Remove arguments left and width to xg_update_scrollbar_pos.
7093 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
7094
7095 2004-10-19 Kenichi Handa <handa@m17n.org>
7096
7097 * xdisp.c (display_mode_element): Fix display of wide chars.
7098
7099 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7100
7101 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
7102 gdk_window_clear and move gdk_window_process_all_updates after
7103 clear so events are sent to the X server in correct order.
7104
7105 2004-10-18 Kenichi Handa <handa@m17n.org>
7106
7107 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
7108 comparing font names.
7109 (fs_query_fontset): Use fast_string_match for comparing fontset names.
7110 (list_fontsets): Likewise.
7111
7112 * search.c (fast_string_match_ignore_case): New function.
7113
7114 * lisp.h (fast_string_match_ignore_case): Extern it.
7115
7116 2004-10-17 Kim F. Storm <storm@cua.dk>
7117
7118 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
7119 than bitmap if there is not left fringe.
7120 (get_overlay_arrow_glyph_row): Also used on windows system.
7121 (display_line): Display overlay string if no left fringe.
7122
7123 2004-10-16 Jason Rumney <jasonr@gnu.org>
7124
7125 * w32fns.c (w32_font_match): Encode font name being matched.
7126
7127 2004-10-16 Richard M. Stallman <rms@gnu.org>
7128
7129 * window.c (Fspecial_display_p): Doc fix.
7130
7131 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
7132
7133 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
7134 Don't ignore menus, because where-is-internal already does it for us.
7135
7136 2004-10-15 Kim F. Storm <storm@cua.dk>
7137
7138 * xdisp.c (redisplay_window): Only update fringes and vertical
7139 border on window frames.
7140
7141 2004-10-14 Andreas Schwab <schwab@suse.de>
7142
7143 * m/ia64.h (DATA_SEG_BITS): Don't define.
7144
7145 2004-10-14 Kim F. Storm <storm@cua.dk>
7146
7147 * xterm.h: Include Xutil.h after keysym.h to work around bug
7148 in some X versions.
7149
7150 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
7151
7152 * fns.c (map_char_table): Add missing gcpros.
7153
7154 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
7155
7156 * keymap.c (get_keymap): An autoload form is not a keymap.
7157
7158 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
7159
7160 2004-10-13 Kim F. Storm <storm@cua.dk>
7161
7162 * callproc.c (Fcall_process): Simplify handling of display arg.
7163 Resume `display_on_the_fly' once a coding system is determined.
7164
7165 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
7166
7167 2004-10-12 Kim F. Storm <storm@cua.dk>
7168
7169 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
7170 caller, such as call-process, is not going to poll for input.
7171 (calc_line_height_property): Handle case where it->object is nil.
7172
7173 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
7174
7175 2004-10-12 Kenichi Handa <handa@m17n.org>
7176
7177 * xdisp.c (get_next_display_element):
7178 If unibyte_display_via_language_environment is zero, display 8-bit
7179 chars in octal in unibyte buffer.
7180
7181 2004-10-12 Kim F. Storm <storm@cua.dk>
7182
7183 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
7184 are no ordinary bindings.
7185
7186 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7187
7188 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
7189
7190 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7191
7192 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
7193 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
7194 (make_mac_frame): Add BLOCK_INPUT around the making of a
7195 terminal frame.
7196 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
7197 * macgui.h (mktime): Use emacs_mktime.
7198 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
7199 Make a cancel file-open dialog be like C-g.
7200 * mac.c (mktime): Use emacs_mktime.
7201 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
7202 (Fmac_paste_function): Add better error handling for carbon cut/paste.
7203
7204 2004-10-10 Kim F. Storm <storm@cua.dk>
7205
7206 * keyboard.c (timer_resume_idle): New function to resume idle
7207 timer without resetting timers on the idle list.
7208 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
7209 (timer_start_idle, timer_stop_idle): Declare static.
7210 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
7211
7212 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
7213
7214 2004-10-08 Steven Tamm <steventamm@mac.com>
7215
7216 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
7217 * macterm.c (mac_check_for_quit_char): Remove warning for using
7218 NULL where 0 should be used.
7219 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
7220 objc/malloc.h
7221 * mac.c: Include time.h for Tiger compatibility.
7222
7223 2004-10-07 Kim F. Storm <storm@cua.dk>
7224
7225 * xdisp.c (redisplay_window): Fix flicker on vertical line between
7226 windows. Update vertical line after drawing window fringes, but
7227 only if actually drawing any bitmaps--or there is no fringe.
7228
7229 * xterm.c (x_update_window_end): Likewise.
7230 * macterm.c (x_update_window_end): Likewise.
7231 * w32term.c (x_update_window_end): Likewise.
7232
7233 * fringe.c (draw_window_fringes): Return value now indicates if
7234 any fringe bitmaps were redrawn (or there are no fringes).
7235
7236 * dispextern.h (draw_window_fringes): Update prototype.
7237
7238 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7239
7240 * macfns.c (mac_get_window_bounds): Add extern.
7241 (x_real_positions): Use mac_get_window_bounds.
7242
7243 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
7244 xmenu.c (YAILOM).
7245
7246 * macterm.c [!MAC_OSX]: Include Windows.h.
7247 (front_emacs_window): Rename from mac_front_window. All uses
7248 changed. Return the frontmost non-tooltip emacs window.
7249 (mac_get_window_bounds): New function.
7250 (x_calc_absolute_position): Use the difference of width and height
7251 between the inner and outer window.
7252 (x_set_offset): Specify window position by the coordinae of the
7253 outer window. Adjust the position if the title bar is completely
7254 outside the screen.
7255 (app_is_suspended, app_sleep_time): Remove unused variables.
7256 (do_app_resume, do_app_suspend): Remove their contents because
7257 window-activate/deactivate events will do the job.
7258 (do_zoom_window): Remove unused variables. Make compliant to the
7259 standard way of zooming. Set f->left_pos and f->top_pos.
7260 (XTread_socket): Don't use argument `expected'. Don't use
7261 FrontWindow to determine the clicked window. Exclude unprocessed
7262 mouseUp cases in the early stage. Add parentheses to fix operator
7263 precedence.
7264 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
7265
7266 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
7267
7268 * config.in: Regenerate.
7269
7270 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
7271 HAVE_EXECSHIELD.
7272
7273 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7274
7275 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
7276 a row if Alt or Meta has been found for that row. Also stop scanning
7277 for Keysyms for that row.
7278
7279 2004-10-04 Kim F. Storm <storm@cua.dk>
7280
7281 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
7282 to list. Include overlay arrow bitmap in return value.
7283
7284 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
7285 bars with fractional column width. If scroll bar separates two
7286 windows, move it towards the window it belongs to. Only update
7287 the padding area below the scroll bar widget when necessary,
7288 i.e. when scroll bar widget is created, moved, or resized.
7289
7290 * xdisp.c (define_frame_cursor1): Do not change frame cursor
7291 while tracking/dragging mouse.
7292 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
7293
7294 * window.c (coordinates_in_window): Relax check for cursor
7295 on vertial border between mode lines.
7296 (Fset_window_fringes): Do not allow negative widths.
7297 (Fset_window_scroll_bars): Likewise.
7298
7299 * .gdbinit (pp): Shorthand for p ARG + pr.
7300 (ff): New command: flush frame updates (X only).
7301
7302 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
7303
7304 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
7305
7306 2004-09-30 Kenichi Handa <handa@m17n.org>
7307
7308 * process.c (send_process): Free composition data.
7309
7310 * fileio.c (Finsert_file_contents): Free composition data.
7311
7312 * coding.c (code_convert_region): Don't skip ASCIIs if there are
7313 compositions to encode.
7314 (encode_coding_string): Likewise. Free composition data.
7315
7316 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
7317
7318 * coding.c (code_convert_region): Free composition data.
7319
7320 2004-09-29 Kim F. Storm <storm@cua.dk>
7321
7322 * fringe.c: Remove limit on number of bitmaps.
7323 (fringe_bitmaps, fringe_faces): Change to pointers.
7324 (max_fringe_bitmaps): New var.
7325 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
7326 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
7327
7328 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
7329 (struct glyph_row): Reorder fringe_bitmap related fields.
7330 (struct it): Likewise.
7331
7332 * w32term.c (fringe_bmp): Change to pointer.
7333 (max_fringe_bmp): New var.
7334 (w32_define_fringe_bitmap): Expand fringe_bmp.
7335 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
7336 (w32_destroy_fringe_bitmap): Likewise.
7337
7338 2004-09-29 Kim F. Storm <storm@cua.dk>
7339
7340 * fringe.c: Simplify last change.
7341 (lookup_fringe_bitmap): New function.
7342 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
7343 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
7344 Keep standard bitmaps in Vfringe_bitmaps.
7345 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
7346 (Fset_fringe_bitmap_face): Likewise.
7347
7348 * dispextern.h (lookup_fringe_bitmap): Add prototype.
7349 (valid_fringe_bitmap_p): Remove prototype.
7350
7351 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
7352
7353 2004-09-29 Kim F. Storm <storm@cua.dk>
7354
7355 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
7356 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
7357
7358 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
7359
7360 * fringe.c (Vfringe_bitmaps): New variable.
7361 (syms_of_fringe): DEFVAR_LISP it.
7362 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
7363 Change arg to Lisp_Object and fail if not an integer.
7364 (get_fringe_bitmap_name, resolve_fringe_bitmap)
7365 (destroy_fringe_bitmap): New functions.
7366 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
7367 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
7368 clear its fringe property.
7369 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
7370 Fdestroy_fringe_bitmap.
7371 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
7372 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
7373 and set fringe property. Signal error if no free slots.
7374 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
7375 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
7376
7377 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
7378 symbols with a fringe property.
7379
7380 2004-09-27 Kim F. Storm <storm@cua.dk>
7381
7382 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
7383 Doc fix. Format may now be a symbol or alist, not a cons.
7384
7385 * fringe.c (update_window_fringes): Handle new formats of
7386 indicate-buffer-boundaries (symbol or alist). No longer
7387 allow a simple cons.
7388 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
7389
7390 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7391
7392 * config.in: Rebuild.
7393
7394 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7395
7396 * config.in: Rebuild.
7397
7398 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
7399
7400 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
7401
7402 * xterm.c (x_term_init): Work around a bug in some X servers.
7403
7404 2004-09-18 Richard M. Stallman <rms@gnu.org>
7405
7406 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
7407
7408 * xdisp.c (try_window_reusing_current_matrix):
7409 Handle the case where we reach the old displayed text,
7410 out of sync with the old line boundary.
7411
7412 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
7413
7414 * fileio.c (Finsert_file_contents): Fix case of replacement in a
7415 narrowed buffer.
7416
7417 2004-09-14 Kim F. Storm <storm@cua.dk>
7418
7419 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
7420
7421 * xfaces.c (Qface_no_inherit): New var.
7422 (syms_of_xfaces): Intern and staticpro it.
7423 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
7424 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
7425 Don't increment face_change_count when face has non-nil
7426 face-no-inherit property.
7427
7428 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
7429
7430 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
7431 (Fbyte_code): Remove dead code after `wrong_type_argument'.
7432
7433 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
7434 before doing the mark_stack_check_gcpros since they're not on the stack.
7435
7436 2004-09-12 Kim F. Storm <storm@cua.dk>
7437
7438 * editfns.c (Fformat): Handle format strings with multiple text
7439 properties. Reverse text property list from the format string,
7440 so the positions are in increasing order.
7441
7442 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7443
7444 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
7445 x_uncatch_errors so that possible protocol errors are delivered.
7446
7447 2004-09-10 Eli Zaretskii <eliz@gnu.org>
7448
7449 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
7450 blockinput.h.
7451 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
7452 charset.h, and coding.h
7453 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
7454 (term.o): Depend on window.h and keymap.h.
7455 (abbrev.o): Depend on syntax.h.
7456 (callint.o): Depend on keymap.h.
7457 (casefiddle.o): Depend on charset.h and keymap.h.
7458 (category.o): Depend on keymap.h.
7459 (coding.o): Depend on dispextern.h.
7460 (cmds.o): Depend on keyboard.h and keymap.h.
7461 (dispnew.o): Depend on indent.h and intervals.h.
7462 (doc.o): Depend on keymap.h.
7463 (editfns.o): Depend on frame.h.
7464 (emacs.o): Depend on dispextern.h.
7465 (fileio.o): Don't depend on ccl.h.
7466 (filelock.o): Depend on charset.h and coding.h.
7467 (frame.o): Depend on w32term.h and macterm.h.
7468 (insdel.o): Depend on region-cache.h.
7469 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
7470 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
7471 (search.o): Depend on $(INTERVALS_SRC).
7472 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
7473 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
7474 xterm.h, w32term.h, and macterm.h.
7475 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
7476 w32term.h, and macterm.h.
7477 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
7478 region-cache.h, xterm.h, w32term.h, and macterm.h.
7479 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
7480 (data.o): Depend on frame.h.
7481 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
7482 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
7483 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
7484 (intervals.o): Depend on keymap.h.
7485
7486 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
7487 Add debugging print-out to termscript.
7488
7489 2004-09-09 Richard M. Stallman <rms@gnu.org>
7490
7491 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
7492
7493 2004-09-08 Richard M. Stallman <rms@gnu.org>
7494
7495 * window.c (Fset_window_buffer): Doc fix.
7496
7497 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
7498
7499 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
7500
7501 * minibuf.c (history_delete_duplicates): New variable.
7502 (read_minibuf): Use it.
7503 (syms_of_minibuf): Create the corresponding lisp variable.
7504
7505 2004-09-08 Kim F. Storm <storm@cua.dk>
7506
7507 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
7508 overlay just before point.
7509
7510 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
7511
7512 * buffer.h (struct buffer): Add auto_save_file_format field.
7513 * buffer.c (reset_buffer, init_buffer_once):
7514 Handle auto_save_file_format field.
7515 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
7516 `buffer-auto-save-file-format'.
7517 * fileio.c: Delete declaration for removed Vauto_save_file_format.
7518 (build_annotations): Adapt to replacement of
7519 `auto-save-file-format' with the new buffer-local variable
7520 `buffer-auto-save-file-format'.
7521 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
7522
7523 2004-09-07 Jason Rumney <jasonr@gnu.org>
7524
7525 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
7526
7527 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
7528 Handle Unicode menu titles.
7529
7530 2004-09-07 Kim F. Storm <storm@cua.dk>
7531
7532 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
7533 property from text property or overlay strings at point.
7534
7535 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7536
7537 * xmenu.c (update_submenu_strings): YAILOM.
7538 (set_frame_menubar): Make sure last_i is initialized.
7539
7540 2004-09-03 Jason Rumney <jasonr@gnu.org>
7541
7542 * w32menu.c (_widget_value): Add lname and lkey.
7543 (digest_single_submenu): Set lname and lkey in widget_value
7544 instead of name and key.
7545 (update_submenu_strings): New function.
7546 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7547 call update_submenu_strings.
7548
7549 * w32menu.c (globals_of_w32menu): Check for Unicode API.
7550 (digest_single_submenu, w32_menu_show): Encode menu strings as
7551 UTF-8 if Unicode API is available.
7552 (utf8to16): New function.
7553 (add_menu_item): Use it when calling Unicode API.
7554
7555 2004-09-03 Kim F. Storm <storm@cua.dk>
7556
7557 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
7558 in overlay or text-property strings; set cursor on corresponding
7559 glyph rather than at end of the string.
7560
7561 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7562
7563 * macfns.c (x_real_positions): Save the current window port and
7564 set a new one before obtaining the global coordinate.
7565 Use FRAME_MAC_WINDOW.
7566 (x_set_name, x_set_title): Encode title to UTF8.
7567 Use SetWindowTitleWithCFString.
7568 (Fx_server_version): Get correct OS version.
7569
7570 * macmenu.c (add_menu_item): Remove unused variable `i'.
7571 Don't let separator items destroy refence constants of other menu items.
7572
7573 * macterm.c (x_update_end): Move SetPortWindowPort to inside
7574 BLOCK_INPUT.
7575 (x_set_offset): Use FRAME_MAC_WINDOW.
7576
7577 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
7578 nontext_cursor if it is on a scroll bar.
7579
7580 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
7581 Carbon support.
7582 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
7583 Use LIBS_CARBON.
7584
7585 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7586
7587 * xfns.c (x_set_name_internal): New function. Check if we shall call
7588 xfree before ENCODE_UTF_8.
7589 (x_set_name, x_set_title): Call x_set_name_internal.
7590
7591 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
7592
7593 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
7594 reload it.
7595
7596 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7597
7598 * macmenu.c (_widget_value): Add lname and lkey.
7599 (single_submenu): Set lname and lkey in widget_value
7600 instead of name and key.
7601 (update_submenu_strings): New function.
7602 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7603 call update_submenu_strings.
7604
7605 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
7606 instead of name and key.
7607 (update_submenu_strings): New function.
7608 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7609 call update_submenu_strings.
7610
7611 * gtkutil.h (_widget_value): Added lname and lkey.
7612
7613 2004-08-30 Steven Tamm <steventamm@mac.com>
7614
7615 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
7616 by using different names for inner loop variables.
7617
7618 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7619
7620 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
7621 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
7622
7623 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
7624 tool bar items is 0.
7625
7626 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7627
7628 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
7629 strings in menu items.
7630 (single_submenu): Use ENCODE_MENU_STRING
7631 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
7632 button release isn't passed to event loop
7633 (add_menu_item): Use SetMenuItemWithCFString
7634
7635 2004-08-26 Steven Tamm <steventamm@mac.com>
7636
7637 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
7638 tool-bar/menu click.
7639 * macfns.c (Fx_file_dialog): Implement using NavServices.
7640
7641 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7642
7643 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
7644
7645 * xfns.c (x_window_to_frame, x_any_window_to_frame)
7646 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7647 (x_top_window_to_frame): Return 0 if wdesc is None.
7648
7649 2004-08-22 Richard M. Stallman <rms@gnu.org>
7650
7651 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
7652 HAVE_TERMIOS]: If there's no char for this signal, drop through
7653 and use system calls.
7654
7655 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
7656
7657 2004-08-20 Kim F. Storm <storm@cua.dk>
7658
7659 * process.c (wait_reading_process_output): Rename from
7660 wait_reading_process_input. All uses changed.
7661 (wait_reading_process_output_1): Rename from
7662 wait_reading_process_input_1. All uses changed.
7663
7664 * dispnew.c (Fsleep_for): Remove obsolete code.
7665
7666 2004-08-20 Kenichi Handa <handa@m17n.org>
7667
7668 * syntax.c (skip_chars): Fix for unibyte case.
7669
7670 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
7671
7672 * syntax.c (char_quoted): Mixup byte/char pos.
7673 (back_comment): Fixup globals in all cases.
7674
7675 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7676
7677 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
7678 passing it to gtk_window_set_title.
7679
7680 2004-08-19 Kim F. Storm <storm@cua.dk>
7681
7682 * process.c (wait_reading_process_input): Clean up.
7683 Add wait_for_cell, wait_proc, and just_wait_proc args
7684 to avoid overloading `read_kbd' and `do_display' args.
7685 Change read_kbd arg to int. All callers changed.
7686
7687 * process.c (process_send_signal): Use CDISABLE.
7688
7689 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
7690
7691 2004-08-18 Kim F. Storm <storm@cua.dk>
7692
7693 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
7694 forward to wait_reading_process_input via DO_DISPLAY arg.
7695 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
7696 object, only process output from that process; also inhibit
7697 running timers if DO_DISPLAY==-2.
7698
7699 2004-08-17 Kim F. Storm <storm@cua.dk>
7700
7701 * process.c (process_send_signal): Fix last change--use
7702 _POSIX_VDISABLE instead of CVDISABLE when available.
7703
7704 2004-08-16 Richard M. Stallman <rms@gnu.org>
7705
7706 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
7707 Set VQUIT and VINTR chars to the standard ones if they are unset.
7708 [AIX]: Don't do that here. And don't force VINTR to standard
7709 when SIGNALS_VIA_CHARACTERS.
7710
7711 * process.c (process_send_signal)
7712 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
7713 Do nothing if the character is CVDISABLE.
7714
7715 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
7716
7717 * intervals.c (move_if_not_intangible):
7718 Force POSITION to be between BEGV and ZV.
7719
7720 2004-08-14 John Paul Wallington <jpw@gnu.org>
7721
7722 * buffer.c (Frestore_buffer_modified_p): Doc fix.
7723
7724 * fileio.c (Fread_file_name): Doc fix.
7725
7726 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
7727
7728 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
7729
7730 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
7731
7732 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
7733
7734 * keyboard.c: Declare Qdisabled_command_function instead of
7735 Qdisabled_command_hook.
7736 (Fcommand_execute): Use Qdisabled_command_function instead of
7737 Qdisabled_command_hook.
7738 (syms_of_keyboard): Ditto.
7739
7740 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
7741
7742 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
7743 (syms_of_keymap) <key-translation-map>: Doc fixes.
7744
7745 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
7746
7747 * window.c (window_list_1): YAILOM.
7748
7749 * fileio.c (make_temp_name): Handle multibyte prefixes.
7750
7751 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
7752
7753 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
7754 Doc fix.
7755
7756 2004-08-03 Kenichi Handa <handa@m17n.org>
7757
7758 * coding.c (decode_coding_string): Adjust coding->consumed, and
7759 etc. with shrinked_bytes.
7760
7761 2004-08-03 Kim F. Storm <storm@cua.dk>
7762
7763 * indent.c (compute_motion): Fix check for full width window
7764 in non-window case. Do not count left truncation glyph on
7765 window systems.
7766
7767 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
7768
7769 * data.c (Finteractive_form): Doc fix.
7770
7771 2004-08-02 Kim F. Storm <storm@cua.dk>
7772
7773 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
7774 properly accounting for continuation glyph on non-window systems.
7775 (Fcompute_motion): Use actual window width if WIDTH is nil, and
7776 actual window width/height if TOPOS is nil, properly accounting for
7777 continuation glyphs on non-window systems, and optional header lines.
7778 (vmotion): Let compute_motion calculate actual window width.
7779
7780 * window.c (window_scroll_line_based): Let compute_motion
7781 calculate actual window width.
7782
7783 2004-08-02 Kim F. Storm <storm@cua.dk>
7784
7785 * process.c (read_process_output): Use whole read buffer.
7786 Don't trigger adaptive read buffering on errors.
7787
7788 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
7789
7790 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
7791
7792 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
7793
7794 * callint.c (Fcall_interactively): Doc fix.
7795
7796 2004-07-30 Richard M. Stallman <rms@gnu.org>
7797
7798 * abbrev.c (Fexpand_abbrev): Undo previous change.
7799
7800 2004-07-30 Kim F. Storm <storm@cua.dk>
7801
7802 * editfns.c (Fformat): Allocate extra (dummy) element in info.
7803
7804 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
7805
7806 * eval.c (Fdefvar, Fdefconst): Doc fixes.
7807
7808 2004-07-27 Kim F. Storm <storm@cua.dk>
7809
7810 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
7811 we have ensured that the glyph fits on the current line (or returned
7812 MOVE_LINE_CONTINUED otherwise).
7813
7814 2004-07-26 Kim F. Storm <storm@cua.dk>
7815
7816 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
7817 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
7818 if target position is at end of display line but char is not a newline.
7819
7820 2004-07-25 Richard M. Stallman <rms@gnu.org>
7821
7822 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
7823 instead of ON_VERTICAL_BORDER, when on scroll bar.
7824 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
7825
7826 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
7827
7828 * window.c (Fcoordinates_in_window_p):
7829 Take account of FRAME_INTERNAL_BORDER_WIDTH.
7830
7831 * alloc.c (check_cons_list): New function (contents commented out).
7832
7833 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
7834
7835 * xfaces.c (Fcolor_supported_p): Doc fix.
7836
7837 * frame.c (Fselect_frame, Fset_frame_selected_window)
7838 (Fframe_visible_p, Fraise_frame): Doc fixes.
7839
7840 2004-07-24 Richard M. Stallman <rms@gnu.org>
7841
7842 * keyboard.h (not_single_kboard_state): Declare.
7843
7844 * fileio.c (Fwrite_region): Doc fix.
7845
7846 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
7847
7848 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
7849 only when a real abbrev is present.
7850
7851 * xfns.c (x_icon_verify): New function.
7852 (Fx_create_frame): Use it.
7853
7854 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
7855
7856 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
7857
7858 2004-07-21 Kim F. Storm <storm@cua.dk>
7859
7860 * window.h (struct glyph_matrix): New members nrows_scale_factor
7861 and ncols_scale_factor.
7862
7863 * window.c (make_window): Initialize nrows_scale_factor and
7864 ncols_scale_factor members.
7865
7866 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
7867 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
7868 (required_matrix_height): Apply nrows_scale_factor.
7869 (required_matrix_width): Apply ncols_scale_factor.
7870
7871 * xdisp.c (display_line): Increment nrows_scale_factor and set
7872 fonts_changed_p if past last allocated row.
7873 (append_glyph, append_composite_glyph, produce_image_glyph)
7874 (append_stretch_glyph): Increment ncols_scale_factor and set
7875 fonts_changed_p if current area is full.
7876
7877 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7878
7879 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
7880
7881 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
7882
7883 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
7884 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
7885 (Fset_window_start, Fscroll_up, Fscroll_down)
7886 (Fother_window_for_scrolling, Fscroll_other_window)
7887 (Fsave_window_excursion, Fset_window_vscroll)
7888 (syms_of_window) <window-size-fixed>: Doc fixes.
7889
7890 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7891
7892 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
7893 ENCODE_SYSTEM for filenames.
7894
7895 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7896
7897 * mac.c (sys_select): Block input around call to
7898 ReceiveNextEvent to prevent breakage. Correctly handle
7899 blocking on event queue only by calling ReceiveNextEvent
7900 instead of select (since GUI events aren't on an fd).
7901 (sys_read): Remove function
7902 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
7903
7904 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7905
7906 * mac.c (sys_select): Redo sys_select to use alarm-based
7907 polling instead of 1 sec timeouts (like solaris).
7908
7909 * macterm.c (x_make_frame_visible): Comment in polling on
7910 frame creation.
7911
7912 * keyboard.c: Undef SIGIO on Carbon
7913
7914 * atimer.c (alarm_signal_handler): Call alarm handlers after
7915 scheduling.
7916
7917 * eval.c (Feval): Remove quit_char test
7918
7919 * process.c (wait_reading_process_input): Remove clearing
7920 stdin for select call on process input.
7921
7922 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
7923
7924 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
7925 capitalization error in docstring.
7926
7927 2004-07-17 Juanma Barranquero <lektu@terra.es>
7928
7929 * keyboard.c (not_single_kboard_state): Do nothing unless
7930 MULTI_KBOARD is defined.
7931
7932 2004-07-17 Richard M. Stallman <rms@gnu.org>
7933
7934 * window.c (coordinates_in_window): Inside the window but outside
7935 its box to the L or R, return ON_VERTICAL_BORDER.
7936 (window_list_1): Rotate the list to start with WINDOW.
7937
7938 * print.c (print_preprocess): Test for print_depth at limit
7939 before entering in being_printed.
7940
7941 * keyboard.c (not_single_kboard_state): New function.
7942 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7943
7944 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7945 this kboard, and we delete its last frame, go to any_kboard_state.
7946
7947 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7948
7949 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7950
7951 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7952 system before passing them to OS functions for display.
7953
7954 2004-07-15 David Kastrup <dak@gnu.org>
7955
7956 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7957 Apparently fixes an abort condition.
7958
7959 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7960
7961 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7962 instead of a cons.
7963
7964 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7965
7966 * keyboard.c (echo_dash): Do nothing if there already is a dash
7967 at the end of the echo string.
7968
7969 2004-07-12 Kim F. Storm <storm@cua.dk>
7970
7971 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7972 if GC_MARK_STACK.
7973
7974 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7975
7976 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7977
7978 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7979 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7980 (Freplace_buffer_in_windows, Fset_window_buffer)
7981 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7982 (syms_of_window): Expand docstring of `display-buffer-function'.
7983
7984 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7985
7986 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7987 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7988 that time values of the type (HIGH . LOW) are considered obsolete.
7989
7990 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7991
7992 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7993 docstring.
7994
7995 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7996
7997 2004-07-06 John Paul Wallington <jpw@gnu.org>
7998
7999 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
8000
8001 * fns.c (Fclear_string): Signal an error if STRING is not a string.
8002
8003 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8004
8005 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
8006 instead of CGMainDisplayID (only in OSX 10.2 and later).
8007
8008 2004-07-04 John Paul Wallington <jpw@gnu.org>
8009
8010 * fileio.c (read_file_name_completion_ignore_case): New variable.
8011 (syms_of_fileio): Declare and initialise it.
8012 (Fread_file_name): Bind `completion-ignore-case' to respect it.
8013
8014 2004-07-03 Eli Zaretskii <eliz@gnu.org>
8015
8016 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
8017 for event.x and event.y.
8018
8019 2004-07-01 Kenichi Handa <handa@m17n.org>
8020
8021 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
8022 after getting a new string by pre-write-conversion.
8023
8024 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
8025
8026 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
8027 (x_calc_absolute_position): Remove unused var `child'.
8028
8029 * xfaces.c (x_supports_face_attributes_p)
8030 (Fdisplay_supports_face_attributes_p): YAILOM.
8031 (tty_supports_face_attributes_p): Remove unused var `i'.
8032
8033 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
8034 back_unibyte_ok.
8035
8036 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
8037
8038 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
8039
8040 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
8041
8042 2004-06-30 Andreas Schwab <schwab@suse.de>
8043
8044 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
8045 (Finit_image_library): Pass LIBRARIES through to
8046 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
8047 (lookup_image_type): Pass Qnil as second argument to
8048 Finit_image_library.
8049
8050 * lisp.h (Finit_image_library): Declare.
8051
8052 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8053
8054 * macterm.c (do_window_activate, do_window_deactivate): Remove.
8055 (XTread_socket): Send mouse button events to the toolbox
8056 dispatcher even when the mouse is grabbed. Don't process window
8057 activate events for non-Emacs windows. Replace function calls to
8058 do_window_activate and do_window_deactivate with their contents.
8059 Reset mouse grabbing status when a window is deactivated.
8060
8061 2004-06-29 Steven Tamm <steventamm@mac.com>
8062
8063 * macterm.c (mac_get_emulated_btn)
8064 (mac_event_to_emacs_modifiers): Fix emulated mouse button
8065 support to correctly mask out modifiers.
8066
8067 2004-06-29 David Kastrup <dak@gnu.org>
8068
8069 * search.c (Fset_match_data): Allow buffer before end of list
8070 which can happen if set-match-data is using a pre-consed list.
8071
8072 2004-06-28 Steven Tamm <steventamm@mac.com>
8073
8074 * macterm.c (XTread_socket): Correctly set the frame position
8075 after the window is moved.
8076
8077 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8078
8079 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
8080 gpix and gmask just before return to avoid memory leak.
8081 (xg_get_image_for_pixmap): Add workaround for monochrome displays
8082 so insensitive and activated icons look ok.
8083
8084 2004-06-27 Jason Rumney <jasonr@gnu.org>
8085
8086 * w32fns.c (file_dialog_callback): Disable edit control if set
8087 to directories only on CDN_INITDONE message.
8088 (Fx_file_dialog): Default to directories only when prompt starts
8089 with "Dired".
8090
8091 2004-06-25 Kim F. Storm <storm@cua.dk>
8092
8093 * alloc.c (allocate_misc): Update total_free_markers.
8094 (free_misc): New function.
8095 (safe_alloca_unwind, free_marker): Use it.
8096
8097 * lisp.h (free_misc): Add prototype.
8098
8099 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
8100
8101 2004-06-24 Richard M. Stallman <rms@gnu.org>
8102
8103 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
8104 (syms_of_emacs): Lisp variables deleted.
8105
8106 2004-06-23 David Kastrup <dak@gnu.org>
8107
8108 * search.c (Freplace_match): Adjust the match-data more thoroughly
8109 when replacing strings in the buffer.
8110 (Fmatch_data): When INTEGERS is non-nil and the last match was in
8111 a buffer, add the buffer as last element to the match data.
8112 (Fset_match_data): If an additional element of the match-data is a
8113 buffer, restore it to last_thing_searched.
8114 (save_search_regs): Save last_thing_searched as part of the match data.
8115 (restore_match_data): Restore it again.
8116
8117 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
8118
8119 * keymap.c (Ftext_char_description): Doc fix.
8120 * doc.c (Fsnarf_documentation): Doc fix.
8121
8122 2004-06-22 Kim F. Storm <storm@cua.dk>
8123
8124 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
8125
8126 * lisp.h (struct Lisp_Save_Value): New member dogc.
8127 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
8128 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
8129 (SAFE_FREE_LISP): New macro.
8130
8131 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
8132 (make_save_value): Init new dogc member.
8133 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
8134
8135 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
8136 SAFE_FREE_LISP macros.
8137
8138 2004-06-22 Kim F. Storm <storm@cua.dk>
8139
8140 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
8141 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
8142 in that memory area are unknown to GC. Add comments.
8143
8144 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
8145
8146 2004-06-21 Kim F. Storm <storm@cua.dk>
8147
8148 * lisp.h (MAX_ALLOCA): Define here.
8149 (safe_alloca_unwind): Add prototype.
8150 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
8151
8152 * alloc.c (safe_alloca_unwind): New function.
8153
8154 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
8155
8156 * charset.c (Fstring): Use SAFE_ALLOCA.
8157
8158 * coding.c (MAX_ALLOCA): Remove define.
8159
8160 * data.c (MAX_ALLOCA): Remove define.
8161 (Faset): Use SAFE_ALLOCA.
8162
8163 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
8164
8165 * fns.c (string_make_multibyte, string_to_multibyte)
8166 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
8167 (MAX_ALLOCA): Remove define.
8168 (Fbase64_encode_region, Fbase64_encode_string)
8169 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
8170 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
8171 memory leak if encoding fails.
8172
8173 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
8174
8175 2004-06-21 Eli Zaretskii <eliz@gnu.org>
8176
8177 * print.c (Fwith_output_to_temp_buffer): Doc fix.
8178
8179 2004-06-20 Richard M. Stallman <rms@gnu.org>
8180
8181 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
8182
8183 * search.c (match_limit): Cleaner err msg when no match data available.
8184
8185 * window.c (syms_of_window): Doc fix.
8186
8187 * keyboard.c (command_loop_1): Handle values `only' and `identity'
8188 for Vtransient_mark_mode.
8189
8190 * buffer.c (syms_of_buffer): Doc fix.
8191
8192 2004-06-21 David Kastrup <dak@gnu.org>
8193
8194 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
8195 and unbinding of `case-fold-search' according to
8196 `completion-ignore-case' around calls of string-match and
8197 predicates, respectively. Should give satisfactory performance
8198 in all relevant cases.
8199
8200 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8201
8202 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
8203 clip_x/y_origin.
8204
8205 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
8206
8207 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
8208
8209 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
8210 on Mac OSX.
8211
8212 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
8213
8214 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
8215
8216 2004-06-16 Kim F. Storm <storm@cua.dk>
8217
8218 * dispextern.h (Vimage_types): Remove extern.
8219
8220 2004-06-16 Miles Bader <miles@gnu.org>
8221
8222 * image.c (lookup_image_type): Initialize image type if necessary.
8223
8224 2004-06-15 Kim F. Storm <storm@cua.dk>
8225
8226 * xdisp.c (try_cursor_movement): Exclude header line from scroll
8227 margin at top of window.
8228 (try_window_reusing_current_matrix): Calculate proper cursor position
8229 after scrolling up with non-zero scroll margin, as the old cursor
8230 position corresponds to value of PT before executing this command.
8231 (try_window_id): Consider scroll margin at bottom of window too;
8232 otherwise we fail to scroll when hl-line-mode is enabled.
8233
8234 * syntax.c (skip_chars): Only recognize [:class:] when it has the
8235 proper format and class is a lower-case word.
8236
8237 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8238
8239 * gtkutil.c (xg_get_image_for_pixmap): New function.
8240 (xg_get_gdk_pixmap_and_mask): Remove.
8241 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
8242 xg_get_gdk_pixmap_and_mask.
8243
8244 * xterm.h (struct x_display_info): Typo in comment fixed.
8245
8246 2004-06-14 Juanma Barranquero <lektu@terra.es>
8247
8248 * dispextern.h (Vimage_types): Make it conditional on
8249 HAVE_WINDOW_SYSTEM.
8250
8251 * image.c (Vimage_types): Move from xdisp.c.
8252 (Vimage_type_cache): New variable.
8253 (define_image_type): New argument indicating whether an image
8254 library was loaded; cache loaded status and return t on success,
8255 nil otherwise.
8256 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
8257 (w32_delayed_load): New function to load an image library from a
8258 list of possible filenames.
8259 (init_xpm_functions, init_png_functions, init_jpeg_functions)
8260 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
8261 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
8262 (Finit_image_library): New function, extracted from `init_image'.
8263 Try to initialize an image library on demand and cache whether we
8264 were successful or not.
8265 (syms_of_image): Initialize `Vimage_types' and
8266 `Vimage_type_cache'. Add recognized image types to Vimage_types.
8267 Export `init-image-library'.
8268 (init_image): Remove initialization of all image types, except xbm
8269 and pbm.
8270
8271 * xdisp.c (Vimage_types): Delete (moved to image.c).
8272
8273 2004-06-14 Andreas Schwab <schwab@suse.de>
8274
8275 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
8276 Avoid calling specbind when completion-regexp-list is empty.
8277
8278 2004-06-13 Richard M. Stallman <rms@gnu.org>
8279
8280 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
8281 (re_wctype, re_iswctype, re_wctype_to_bit):
8282 Non-function definitions moved here from regex.c.
8283
8284 * regex.c (re_wctype, re_iswctype): Function defs longer static.
8285 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
8286 (re_wctype, re_iswctype, re_wctype_to_bit):
8287 Non-function definitions moved to regex.h.
8288
8289 * window.c (Fselect_window): Doc fix.
8290
8291 * syntax.c: Include regex.h.
8292 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
8293 If requested, make a list of classes, then check the scanned
8294 chars for membership in them.
8295 (in_classes): New function.
8296 Doc fix.
8297
8298 * keyboard.c (cmd_error): Don't call any_kboard_state
8299 if inside a recursive edit level.
8300
8301 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8302
8303 * keyboard.c (command_loop): Call any_kboard_state before
8304 command_loop_2 when at top level.
8305
8306 2004-06-13 Andreas Schwab <schwab@suse.de>
8307
8308 * print.c (print_object): Always use %ld for printing EMACS_INT.
8309
8310 * keyboard.c (cancel_hourglass_unwind): Return a value.
8311 (modify_event_symbol): Always use %ld for printing EMACS_INT.
8312 (Fexecute_extended_command): Likewise.
8313
8314 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
8315 avoid clashes.
8316 (SYNTAX): Likewise.
8317 (SYNTAX_WITH_FLAGS): Likewise.
8318 (SYNTAX_MATCH): Likewise.
8319
8320 * syntax.c (char_quoted): Avoid warning about undefined operation.
8321 (find_defun_start): Likewise.
8322 (scan_lists): Likewise.
8323 (INC_FROM): Likewise.
8324 (scan_sexps_forward): Likewise.
8325
8326 * image.c: Include <ctype.h>.
8327
8328 * xfaces.c (face_attr_equal_p): Declare parameters.
8329
8330 2004-06-13 Kenichi Handa <handa@m17n.org>
8331
8332 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
8333
8334 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
8335
8336 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
8337
8338 2004-06-12 Kenichi Handa <handa@m17n.org>
8339
8340 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
8341 ccl_prog_stack_struct and update it.
8342 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
8343 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
8344 ccl->eof_ic on EOF.
8345 (ccl_debug_hook): New function.
8346 (struct ccl_prog_stack): New member eof_ic.
8347 (ccl_driver): Handle EOF in subrountine call correctly.
8348
8349 2004-06-11 Kenichi Handa <handa@m17n.org>
8350
8351 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
8352
8353 2004-06-11 Kim F. Storm <storm@cua.dk>
8354
8355 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
8356
8357 2004-06-11 Juanma Barranquero <lektu@terra.es>
8358
8359 * keyboard.c (Fposn_at_point): Doc fix.
8360
8361 2004-06-11 David Kastrup <dak@gnu.org>
8362
8363 * search.c (match_limit): Don't flag an error if match-data
8364 exceeding the allocated search_regs.num_regs gets requested, just
8365 return Qnil.
8366
8367 2004-06-08 Miles Bader <miles@gnu.org>
8368
8369 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
8370
8371 2004-06-07 Juanma Barranquero <lektu@terra.es>
8372
8373 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
8374 (Fcurrent_time_string, Fcurrent_time_zone)
8375 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
8376
8377 2004-06-07 Miles Bader <miles@gnu.org>
8378
8379 * xfaces.c (struct named_merge_point): New type.
8380 (push_named_merge_point): New function.
8381 (merge_named_face): New function.
8382 (merge_face_ref, face_at_buffer_position, face_at_string_position):
8383 Use `merge_named_face'.
8384 (merge_face_inheritance): Function removed.
8385 (merge_face_ref): Rename from `merge_face_vector_with_property'.
8386 Add new `err_msgs' and `named_merge_points' args. Return error
8387 status. Only print error messages if ERR_MSGS is true. Don't try to
8388 do :inherit attribute validation.
8389 (merge_face_heights): Handle `unspecified' in both directions.
8390 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
8391 Call `merge_face_ref' instead of `merge_face_inheritance'.
8392 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
8393 (compute_char_face, face_at_buffer_position)
8394 (face_at_string_position): Call `merge_face_ref' instead of
8395 `merge_face_vector_with_property'.
8396
8397 2004-06-07 Kenichi Handa <handa@m17n.org>
8398
8399 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
8400 the necessary places.
8401
8402 2004-06-07 Kim F. Storm <storm@cua.dk>
8403
8404 * process.c (Fdelete_process): Undo 2004-05-28 change.
8405 Instead, call status_notify also for network process.
8406 (status_message): Use process instead of status as arg.
8407 Give messages "deleted" or "connection broken by remote peer" for
8408 an exited network process.
8409 (status_notify): Change call to status_message.
8410 (read_process_output): Increase readmax to 4096. Do not increase
8411 buffer size for datagram channels (default is now large enough).
8412
8413 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8414
8415 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
8416 problem due to newly defined variable.
8417
8418 2004-06-06 Miles Bader <miles@gnu.org>
8419
8420 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
8421 immediately if non-interactive or not initialized.
8422
8423 2004-06-05 Richard M. Stallman <rms@gnu.org>
8424
8425 * minibuf.c (Fcompleting_read): Doc fix.
8426
8427 2004-06-05 Andreas Schwab <schwab@suse.de>
8428
8429 * macfns.c (x_create_tip_frame): Fix declaration after statement.
8430
8431 2004-06-05 Juanma Barranquero <lektu@terra.es>
8432
8433 * keymap.c (Fdescribe_vector): Fix docstring.
8434 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
8435
8436 2004-06-05 Miles Bader <miles@gnu.org>
8437
8438 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
8439 attributes have different values than the default face.
8440
8441 2004-06-04 Eli Zaretskii <eliz@gnu.org>
8442
8443 * xfaces.c (x_supports_face_attributes_p): Make this function
8444 conditional on HAVE_WINDOW_SYSTEM.
8445 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
8446 Don't call x_supports_face_attributes_p if it was not compiled in.
8447
8448 2004-06-04 Miles Bader <miles@gnu.org>
8449
8450 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
8451 from Ftty_supports_face_attributes_p.
8452 (x_supports_face_attributes_p): New function.
8453 (Ftty_supports_face_attributes_p): Function deleted.
8454 (Fdisplay_supports_face_attributes_p): New function.
8455 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
8456 (face_attr_equal_p): New function.
8457 (lface_equal_p): Use it.
8458
8459 2004-06-03 Juanma Barranquero <lektu@terra.es>
8460
8461 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
8462 (Vw32_color_map): Fix typo in docstring.
8463 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
8464 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
8465 Make argument names match their use in docstring.
8466
8467 2004-06-02 Juanma Barranquero <lektu@terra.es>
8468
8469 Work around bugs/problems with MinGW builds of graphics libraries
8470 called from MSVC builds of Emacs.
8471
8472 * image.c (lookup_image): Make pointer to img static.
8473 (png_read_from_memory): Disable "global" optimization.
8474
8475 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
8476
8477 * eval.c (Fcondition_case): Fix usage. Simplify.
8478
8479 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
8480
8481 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8482
8483 * macfns.c: Don't include ccl.h.
8484 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
8485 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
8486 TextUtils.h.
8487 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
8488 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
8489 display height/width.
8490 (compute_tip_xy, Vx_max_tooltip_size): Declare.
8491 (unwind_create_tip_frame, compute_tip_xy): New functions.
8492 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
8493 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
8494 and last_show_tip_args.
8495
8496 * macgui.h [!MAC_OSX]: Include Gestalt.h.
8497 (Cursor, No_Cursor): New defines.
8498 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
8499 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
8500
8501 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
8502
8503 * macterm.c: Don't include Gestalt.h.
8504 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
8505 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
8506 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
8507 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
8508 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
8509 (construct_mouse_click, XTmouse_position)
8510 (x_scroll_bar_report_motion, x_calc_absolute_position)
8511 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
8512 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
8513 (note_mouse_movement): Clear the mouse face and reset the pointer
8514 shape when the pointer goes outside the frame without grabbing.
8515 (mac_front_window): New function.
8516 (mac_window_to_frame): New macro.
8517 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
8518 (do_window_activate, do_window_deactivate, do_app_resume)
8519 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
8520 (do_zoom_window, mac_do_receive_drag, XTread_socket)
8521 (mac_check_for_quit_char): Use mac_front_window and/or
8522 mac_window_to_frame.
8523 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
8524 scroll-bar click event.
8525 (mac_define_frame_cursor): Change the pointer shape.
8526 (x_free_frame_resources): Reset tip_window to NULL when it is
8527 disposed of.
8528 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
8529 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
8530 (do_window_update): Don't do anything if the updated window is the
8531 tooltip window.
8532 (do_mouse_moved): Handle mouse movement events here (previously in
8533 XTread_socket). Clear the mouse face if
8534 dpyinfo->mouse_face_hidden is set.
8535 (do_os_event, do_events): Remove (now in XTread_socket).
8536 (XTread_socket): Immediately return if interrupt_input_blocked.
8537 Loop until all the events in the queue are processed.
8538 Rearrange codes for mouse grabbing. Add tooltip support. Include the
8539 contents of do_os_event and do_events. Remove mouse movement
8540 handling (now in do_mouse_moved). Add the case where
8541 Vmouse_highlight has an integer value.
8542 (NewMacWindow): Remove.
8543 (make_mac_frame): Do what NewMacWindow previously did. Don't do
8544 excess initializations.
8545 (make_mac_terminal_frame): Previous initializations in
8546 make_mac_frame are moved here.
8547 (mac_initialize_display_info):
8548 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
8549
8550 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
8551 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
8552
8553 2004-05-29 Richard M. Stallman <rms@gnu.org>
8554
8555 * lisp.h (truncate_undo_list): Update decl.
8556
8557 * alloc.c (undo_outer_limit): New variable.
8558 (syms_of_alloc): Defvar it.
8559 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
8560
8561 * undo.c (truncate_undo_list): New arg LIMITSIZE.
8562
8563 * alloc.c (lisp_align_malloc): Check for base == 0
8564 regardless of HAVE_POSIX_MEMALIGN.
8565 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
8566
8567 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8568
8569 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
8570 (marker_blocks_pending_free): Remove.
8571 (Fgarbage_collect): Sweep after cleaning up undo-lists.
8572 Mark the undo lists after claning them up.
8573 Don't free block in marker_blocks_pending_free.
8574 (mark_buffer): Don't mark undo_list.
8575 (gc_sweep): Sweep hash-tables and strings first.
8576 Do free marker blocks that are empty.
8577
8578 2004-05-28 Jim Blandy <jimb@redhat.com>
8579
8580 * regex.c (print_partial_compiled_pattern): Add missing 'break'
8581 after 'case wordend'. For symbeg and symend, print to stderr,
8582 like the other cases.
8583
8584 2004-05-28 Noah Friedman <friedman@splode.com>
8585
8586 * process.c (Fdelete_process): Do not call remove_process.
8587
8588 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8589
8590 * alloc.c (struct backtrace): Remove.
8591 (Fgarbage_collect): Use the new mark_backtrace.
8592
8593 * eval.c (mark_backtrace): New function.
8594
8595 * minibuf.c (run_exit_minibuf_hook): New function.
8596 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
8597 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
8598
8599 2004-05-27 Kim F. Storm <storm@cua.dk>
8600
8601 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
8602 over display properties, e.g. images, that replace buffer text.
8603
8604 2004-05-25 Kim F. Storm <storm@cua.dk>
8605
8606 * alloc.c (marker_blocks_pending_free): New var.
8607 (gc_sweep): Store free marker blocks on that list.
8608 (Fgarbage_collect): Free them after undo-list cleanup.
8609
8610 * process.c (wait_reading_process_input): Check connect_wait_mask
8611 before actually accepting connection in case it has already been
8612 accepted due to recursion.
8613
8614 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8615
8616 * coding.c (Fset_safe_terminal_coding_system_internal):
8617 Set suppress_error in safe_terminal_coding, not terminal_coding.
8618
8619 2004-05-22 Richard M. Stallman <rms@gnu.org>
8620
8621 * alloc.c (Fmake_string): Doc fix.
8622
8623 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
8624 and the alist pairs too.
8625
8626 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
8627
8628 * emacs.c (main): Update copyright year.
8629
8630 * fileio.c (Fread_file_name): Expand DIR if not absolute.
8631
8632 * insdel.c (del_range_2, replace_range): Don't write an anchor
8633 if the gap is empty.
8634
8635 * xdisp.c (try_scrolling): If scroll-up-aggressively or
8636 scroll-down-aggressively is small but positive, put point
8637 near the screen edge.
8638
8639 2004-05-22 Juanma Barranquero <lektu@terra.es>
8640
8641 * keymap.c (Fdefine_key): Doc fix.
8642
8643 2004-05-22 Kim F. Storm <storm@cua.dk>
8644
8645 * alloc.c (struct backtrace): Add debug_on_exit member.
8646 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
8647 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
8648 the removed cons cells.
8649 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
8650 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
8651 any cons cells pointing to unallocated stings.
8652 Do not lisp_free any marker blocks, as there may still be pointers
8653 to them from buffer undo lists at this stage of GC.
8654
8655 * keyboard.c (struct backtrace): Add debug_on_exit member.
8656 (Fcommand_execute): Clear it.
8657
8658 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
8659
8660 * intervals.c (lookup_char_property): Do not prematurely return nil.
8661
8662 2004-05-19 Jim Blandy <jimb@redhat.com>
8663
8664 Add support for new '\_<' and '\_>' regexp operators, matching the
8665 beginning and end of symbols.
8666
8667 * regex.c (enum syntaxcode): Add Ssymbol.
8668 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
8669 (re_opcode_t): New opcodes `symbeg' and `symend'.
8670 (print_partial_compiled_pattern): Print the new opcodes properly.
8671 (regex_compile): Parse the new operators.
8672 (analyse_first): Skip sym(beg|end) (they match only the empty string).
8673 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
8674 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
8675 (re_match_2_internal): Match symbeg and symend.
8676
8677 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
8678
8679 2004-05-19 Kim F. Storm <storm@cua.dk>
8680
8681 * .gdbinit (xsymbol): Fix last change.
8682
8683 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
8684
8685 * .gdbinit (xprintstr): New fun.
8686 (xstring, xprintsym): Use it.
8687
8688 * w32proc.c (create_child): Use INTMASK.
8689
8690 * alloc.c (Fgarbage_collect): Do all the marking before flushing
8691 unmarked elements of the undo list.
8692
8693 2004-05-18 David Ponce <david@dponce.com>
8694
8695 * print.c (print): Reset print_depth before to call print_object.
8696
8697 2004-05-18 Jason Rumney <jasonr@gnu.org>
8698
8699 * w32console.c: Prefix RIF functions with w32con_ to avoid
8700 namespace clash with functions in term.c and w32term.c.
8701
8702 * w32menu.c (add_menu_item, w32_menu_display_help)
8703 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
8704
8705 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
8706
8707 2004-05-18 Eli Zaretskii <eliz@gnu.org>
8708
8709 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
8710
8711 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
8712 with make_number.
8713 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
8714 with XINT.
8715
8716 2004-05-18 Kim F. Storm <storm@cua.dk>
8717
8718 * blockinput.h (INPUT_BLOCKED_P): New macros.
8719
8720 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
8721 (Ftop_level): Unblock input if blocked.
8722
8723 * buffer.h (GET_OVERLAYS_AT): New macro.
8724 * msdos.c (IT_note_mouse_highlight): Use it.
8725 * textprop.c (get_char_property_and_overlay): Use it.
8726 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
8727 * xfaces.c (face_at_buffer_position): Use it.
8728
8729 * print.c (print_object): Increase buf size.
8730
8731 2004-05-17 Jason Rumney <jasonr@gnu.org>
8732
8733 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
8734 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
8735 Lisp_Object using i member.
8736 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
8737 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
8738 consistently.
8739
8740 * w32proc.c (create_child): Use make_number instead of masking pid.
8741
8742 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
8743 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
8744 Use EQ to compare Lisp_Objects.
8745 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
8746
8747 * w32term.c (w32_num_mouse_buttons): Rename from
8748 Vw32_num_mouse_buttons and make it an int.
8749
8750 * w32.c (init_environment): Use it.
8751
8752 * w32fns.c (w32_wnd_proc): Likewise.
8753
8754 * w32proc.c (w32_pipe_read_delay): Rename from
8755 Vw32_pipe_read_delay and make it an int.
8756
8757 * w32.c (_sys_read_ahead): Use it.
8758
8759 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
8760
8761 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
8762
8763 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
8764 (key_event): Don't mix Lisp_Object and int.
8765
8766 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
8767
8768 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
8769 modifiers in language change event.
8770
8771 2004-05-17 Kim F. Storm <storm@cua.dk>
8772
8773 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
8774 Such objects may be freed markers which still exist on an undo list.
8775
8776 2004-05-16 Juanma Barranquero <lektu@terra.es>
8777
8778 * data.c (Fset_default): Make argument names match their use in
8779 docstring.
8780
8781 2004-05-15 Andreas Schwab <schwab@suse.de>
8782
8783 * emacs.c (gdb_array_mark_flag): Define.
8784 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
8785
8786 2004-05-15 Eli Zaretskii <eliz@gnu.org>
8787
8788 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
8789 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
8790 defined for the MS-DOS build.
8791
8792 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
8793
8794 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
8795
8796 2004-05-14 Kenichi Handa <handa@m17n.org>
8797
8798 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
8799
8800 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8801
8802 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
8803 section to frame.c section.
8804 (Fxw_display_color_p, Fx_file_dialog): Declare if
8805 HAVE_WINDOW_SYSTEM defined.
8806
8807 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
8808
8809 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
8810
8811 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
8812 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
8813 (XTread_socket): Fix int/Lisp_Object mixup.
8814 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
8815
8816 * macterm.h (struct frame, struct face, struct image)
8817 (display_x_get_resource, Fx_display_color_p)
8818 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
8819 Add prototypes.
8820
8821 2004-05-14 Kim F. Storm <storm@cua.dk>
8822
8823 * process.c (wait_reading_process_input): Make reentrant.
8824 Make Available and Connecting non-static. Save and restore value
8825 of waiting_for_user_input_p.
8826
8827 2004-05-13 Kim F. Storm <storm@cua.dk>
8828
8829 * keyboard.c (mark_kboards): Don't mark x and y members
8830 that are overloaded in selection request events.
8831
8832 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8833
8834 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
8835
8836 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
8837
8838 * window.c (Fdisplay_buffer, Fsplit_window)
8839 (split-height-threshold): Doc fix.
8840
8841 2004-05-13 Juanma Barranquero <lektu@terra.es>
8842
8843 * xfaces.c (Ftty_supports_face_attributes_p)
8844 (Finternal_copy_lisp_face): Fix typo in docstring.
8845 (Finternal_get_lisp_face_attribute): Fix docstring.
8846
8847 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8848
8849 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
8850
8851 2004-05-11 Steven Tamm <steventamm@mac.com>
8852
8853 * macfns.c (Fx_create_frame): Default to using tool-bar by
8854 setting tool-bar-lines to 1 in default-frame-alist.
8855
8856 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8857
8858 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
8859 (xpm_get_color_table_v, xpm_make_color_table_h)
8860 (xpm_put_color_table_h, xpm_get_color_table_h)
8861 (xpm_str_to_color_key, xpm_load_image, xpm_load)
8862 (syms_of_image): Support XPM on Carbon Emacs. Does not
8863 depend on libXpm, but only supports XPM version 3 without extensions.
8864
8865 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8866
8867 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
8868 instead of FRAME_X_P
8869
8870 2004-05-11 Kim F. Storm <storm@cua.dk>
8871
8872 * process.c (read_process_output): Grow decoding_buf when needed;
8873 this could cause a crash in allocate_string and compact_small_strings.
8874
8875 2004-04-29 Jim Blandy <jimb@redhat.com>
8876
8877 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
8878 against proper opcode.
8879
8880 2004-05-10 Juanma Barranquero <lektu@terra.es>
8881
8882 * process.c (Fstart_process): Fix docstring.
8883
8884 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
8885 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
8886 (Fsplit_char, Fchar_charset): Make argument names match their use
8887 in docstring.
8888
8889 2004-05-10 Richard M. Stallman <rms@gnu.org>
8890
8891 * print.c (print_preprocess): Use being_printed, loop_count and
8892 halftail to detect overdeep nesting and cyclic cdr chains.
8893
8894 2004-05-10 Andreas Schwab <schwab@suse.de>
8895
8896 * lisp.h (Fmake_symbolic_link): Declare.
8897
8898 * fileio.c (Frename_file): Remove extra argument in call to
8899 Fmake_symbolic_link.
8900
8901 2004-05-10 Kim F. Storm <storm@cua.dk>
8902
8903 * xdisp.c (calc_line_height_property): Use string position when
8904 object is a string.
8905
8906 2004-05-10 Kenichi Handa <handa@m17n.org>
8907
8908 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
8909 inhibit-modification-hooks to t temporarily before calling
8910 Ferase_buffer.
8911
8912 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
8913 inhibit-modification-hooks to t temporarily before calling
8914 Ferase_buffer.
8915
8916 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
8917 inhibit-modification-hooks to t temporarily before calling
8918 Ferase_buffer.
8919
8920 * fns.c (count_combining): Delete it.
8921 (concat): Don't check combining bytes.
8922
8923 2004-05-09 Jason Rumney <jasonr@gnu.org>
8924
8925 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
8926 (globals_of_w32fns): Set it.
8927
8928 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
8929
8930 * data.c (Fquo): Simplify.
8931
8932 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
8933
8934 * data.c (Fquo): If any argument is float, do the computation in
8935 floating point.
8936
8937 2004-05-08 Juanma Barranquero <lektu@terra.es>
8938
8939 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8940 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8941 Fix spelling of Emacs on docstring.
8942 (Fset_process_coding_system, Fprocess_coding_system)
8943 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8944 Make argument names match their use in docstring.
8945 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8946 Fix docstring.
8947
8948 * editfns.c (Finsert_buffer_substring): Make argument names match their
8949 use in docstring.
8950
8951 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8952
8953 2004-05-07 Steven Tamm <steventamm@mac.com>
8954
8955 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8956 around call to ReceiveEvent to avoid certain crashes.
8957
8958 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8959
8960 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8961 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8962 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8963 Save/restore the current graphics port and device handle when
8964 drawing into an offscreen graphics world.
8965
8966 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8967 (gif_load): Likewise.
8968
8969 2004-05-07 Juanma Barranquero <lektu@terra.es>
8970
8971 * window.c (Fset_window_buffer): Fix docstring.
8972
8973 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8974
8975 * emacs.c (main) [VMS]: Fix var ref.
8976
8977 2004-05-06 Romain Francoise <romain@orebokech.com>
8978
8979 * data.c (Fsetq_default): Fix docstring.
8980
8981 2004-05-06 Jason Rumney <jasonr@gnu.org>
8982
8983 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8984 to avoid name clash.
8985
8986 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8987
8988 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8989 (Frename_file): Handle renaming of symlinks across file systems.
8990 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8991
8992 2004-05-04 Kim F. Storm <storm@cua.dk>
8993
8994 * xdisp.c (Qtotal): New var.
8995 (syms_of_xdisp): Intern and staticpro it.
8996 (calc_line_height_property): New arg total. Set it if
8997 line-spacing property has format (total . VALUE).
8998 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8999 Handle total line-spacing property.
9000
9001 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9002
9003 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
9004 "under" scroll bar when size/position changes.
9005
9006 2004-05-03 Jason Rumney <jasonr@gnu.org>
9007
9008 * makefile.nt: Remove.
9009
9010 2004-05-02 Eli Zaretskii <eliz@gnu.org>
9011
9012 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
9013 Avoid compiler warnings.
9014
9015 * Makefile.in (region-cache.o): Depend on config.h.
9016
9017 2004-05-02 Romain Francoise <romain@orebokech.com>
9018
9019 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
9020 with continuation lines, too.
9021
9022 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
9023
9024 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
9025
9026 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
9027
9028 * xdisp.c (calc_line_height_property): YAILOM (yet another
9029 int/Lisp_Object mixup).
9030
9031 2004-05-01 Eli Zaretskii <eliz@gnu.org>
9032
9033 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
9034 undo bad effect of pack(4) in some versions of system headers.
9035
9036 2004-05-01 Jason Rumney <jasonr@gnu.org>
9037
9038 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
9039
9040 2004-04-30 Kim F. Storm <storm@cua.dk>
9041
9042 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
9043 (syms_of_buffer) <cursor-type>: Doc fix.
9044
9045 * dispextern.h (struct it): Remove member use_default_face.
9046 Add members override_ascent, override_descent, override_boff.
9047
9048 * xdisp.c (init_iterator): Handle line-spacing float value.
9049 Initialize override_ascent member.
9050 (append_space_for_newline): Reset override_ascent.
9051 Remove use_default_face.
9052 (calc_line_height_property): New function to calculate value of
9053 line-height and line-spacing properties. Look at overlays, too.
9054 Set override_ascent, override_descent, override_boff members when
9055 using another face than the current face. Float values are now
9056 relative to the frame default font, by default; accept a cons
9057 of ratio and face name to specify value relative to a specific face.
9058 (x_produce_glyphs): Use calc_line_height_property.
9059 Use override_ascent etc. when set to handle different face heights.
9060 A negative line-spacing property value is interpreted as a total
9061 line height, rather than inter-line spacing.
9062 (note_mouse_highlight): Allocate room for 40 overlays initially.
9063
9064 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
9065
9066 * data.c (Fsubr_name): New fun.
9067 (syms_of_data): Defsubr it.
9068
9069 2004-04-29 Kim F. Storm <storm@cua.dk>
9070
9071 * xdisp.c (null_glyph_slice): New var.
9072 (append_glyph, append_composite_glyph, append_stretch_glyph):
9073 Use it to initialize glyph slice.
9074
9075 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
9076
9077 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
9078 (on_hot_spot_p): Make sure we always return a value.
9079 (Flookup_image_map): Remove unused var ix and iy.
9080 (note_mode_line_or_margin_highlight): Remove unused var `image'.
9081
9082 2004-04-27 Eli Zaretskii <eliz@gnu.org>
9083
9084 * msdos.c (init_environment): If one of the TMP... environment
9085 variables is set to a drive letter without a trailing slash,
9086 append a slash.
9087
9088 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
9089
9090 * editfns.c (lisp_time_argument): Provide externally.
9091
9092 * fileio.c (Fset_file_times): New function.
9093 (syms_of_fileio): Intern and staticpro it.
9094
9095 2004-04-27 Kim F. Storm <storm@cua.dk>
9096
9097 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
9098 header line strings.
9099
9100 * dispextern.h (struct it): New member use_default_face.
9101
9102 * xdisp.c (Qline_height): New variable.
9103 (syms_of_xdisp): Intern and staticpro it.
9104 (append_space_for_newline): Partially undo 2004-04-25 change;
9105 add default_face_p arg, and restore callers.
9106 Clear it->use_default_face after use.
9107 (x_produce_glyphs): Set default font for ascii char if
9108 it->use_default_font is set. Change line-spacing property to set
9109 just extra line spacing. Handle new line-height property.
9110
9111 2004-04-26 Andreas Schwab <schwab@suse.de>
9112
9113 * print.c (print_object): Print non-ascii characters in bool
9114 vector representation as octal escapes.
9115
9116 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
9117 * print.c (print_object): Use it instead of BITS_PER_CHAR for
9118 bool vectors.
9119 * lread.c (read1): Likewise.
9120 * alloc.c (Fmake_bool_vector): Likewise.
9121 * data.c (Faref, Faset): Likewise.
9122 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
9123 (mapcar1): Likewise.
9124
9125 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
9126
9127 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
9128
9129 2004-04-26 Miles Bader <miles@gnu.org>
9130
9131 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
9132
9133 2004-04-26 Juanma Barranquero <lektu@terra.es>
9134
9135 * buffer.c (Fpop_to_buffer): Fix docstring.
9136
9137 2004-04-26 Steven Tamm <steventamm@mac.com>
9138
9139 * lread.c (init_lread): Don't display missing lisp directory
9140 warnings with Carbon Emacs because self-contained bundled Emacs
9141 may be built without correct installation path.
9142
9143 2004-04-25 Kim F. Storm <storm@cua.dk>
9144
9145 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
9146
9147 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
9148
9149 * xdisp.c (append_space_for_newline): Rename from append_space.
9150 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
9151 (x_produce_glyphs): Handle line-spacing property on newline char.
9152 If value is t, adjust ascent and descent to fit current row height.
9153 If value is an integer or float, set extra_line_spacing to integer
9154 value, or to float value x current line height.
9155
9156 2004-04-23 Kenichi Handa <handa@m17n.org>
9157
9158 * fontset.c (Finternal_char_font): If POSITION is nil, return
9159 font for displaying CH with the default face.
9160
9161 2004-04-23 Juanma Barranquero <lektu@terra.es>
9162
9163 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
9164
9165 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
9166
9167 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
9168 Don't make assumptions about the relative place of i and val.
9169 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
9170
9171 2004-04-21 Kim F. Storm <storm@cua.dk>
9172
9173 * dispextern.h (struct glyph_slice): New struct.
9174 (struct glyph): New member slice.
9175 (GLYPH_SLICE_EQUAL_P): New macro.
9176 (GLYPH_EQUAL_P): Use it.
9177 (struct glyph_string): New member slice.
9178 (struct it_slice): New struct.
9179 (struct it): New member slice, add member to stack too.
9180 New member constrain_row_ascent_descent_p.
9181 (image_ascent): Add prototype.
9182
9183 * dispnew.c (buffer_posn_from_coords): Return full image width
9184 and height even for image slices (posn is relative to full image).
9185 (marginal_area_string): Adjust x0,y0 for image slice.
9186
9187 * image.c (image_ascent): Add slice arg; calculate ascent for
9188 image slice (or full image).
9189
9190 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
9191 (syms_of_keyboard): Defsubr them.
9192
9193 * lisp.h (pos_visible_p): Fix prototype.
9194
9195 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
9196 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
9197 (x_draw_image_foreground, x_draw_image_relief)
9198 (x_draw_image_foreground_1, x_draw_image_glyph_string):
9199 Draw sliced images.
9200
9201 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
9202 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
9203 (x_draw_image_foreground, x_draw_image_relief)
9204 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
9205 Draw sliced images.
9206
9207 * w32term.h (image_ascent): Remove prototype.
9208
9209 * window.c (Fpos_visible_in_window_p): Return pixel position if
9210 PARTIALLY arg is non-nil. Simplify. Doc fix.
9211 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
9212 to return/set vscroll in pixels.
9213
9214 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
9215
9216 * xdisp.c (Qslice): New variable.
9217 (syms_of_xdisp): Intern and staticpro it.
9218 (pos_visible_p): Return pixel position in new x and y args.
9219 (init_iterator): Reset it->slice info.
9220 (handle_display_prop): Parse (slice ...) property.
9221 (push_it, pop_it): Save/restore slice info.
9222 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
9223 force repositioning of tall row if window is vscrolled, as that
9224 would reset vscroll.
9225 (append_space): Set it->constrain_row_ascent_descent_p to avoid
9226 increasing row height if row is non-empty.
9227 (fill_image_glyph_string): Copy slice info.
9228 (take_vertical_position_into_account): Simplify.
9229 (produce_image_glyph): Handle iterator slice info, setup glyph
9230 slice info. Do not force minimum line height.
9231 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
9232 do not increase height (ascent/descent) of non-empty row when
9233 adding normal character glyph; instead reduce glyph ascent/descent
9234 appropriately; if row is higher than current glyph, adjust glyph
9235 descent/ascent to reposition glyph within the existing row.
9236 Likewise, when char is newline, only set ascent/descent if row is
9237 currently empty.
9238 (note_mouse_highlight): Handle hotspots with sliced image.
9239
9240 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
9241 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
9242 (x_draw_image_foreground, x_draw_image_relief)
9243 (x_draw_image_foreground_1, x_draw_image_glyph_string):
9244 Draw sliced images.
9245
9246 * xterm.h (image_ascent): Remove prototype.
9247
9248 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
9249
9250 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
9251
9252 2004-04-20 John Paul Wallington <jpw@gnu.org>
9253
9254 * fns.c (Fassoc, Feql): Fix indentation.
9255
9256 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
9257
9258 2004-04-19 John Paul Wallington <jpw@gnu.org>
9259
9260 * fns.c (Feql): New function.
9261 (syms_of_fns): Defsubr it.
9262
9263 2004-04-18 Jason Rumney <jasonr@gnu.org>
9264
9265 * w32select.c (Fw32_set_clipboard_data): Get sequence number
9266 after closing the clipboard.
9267
9268 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
9269
9270 * buffer.c (Fbuffer_base_buffer): Doc fix.
9271
9272 2004-04-17 Kim F. Storm <storm@cua.dk>
9273
9274 * keymap.c (Fkey_description): Add optional PREFIX arg.
9275 Combine prefix with KEYS to make up the full key sequence to describe.
9276 Correlate meta_prefix_char and following (simple) key to describe
9277 as meta modifier. All callers changed.
9278 (describe_map): Rename arg `keys' to `prefix'. Remove local
9279 `elt_prefix' var. Use Fkey_description with prefix instead of
9280 elt_prefix combined with Fsingle_key_description.
9281 (describe_vector): Declare static. Replace arg `elt_prefix' with
9282 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
9283 if !KEYMAP_P. Use Fkey_description with prefix instead of
9284 Fsingle_key_description.
9285
9286 * keymap.h (Fkey_description): Fix prototype.
9287 (describe_vector): Remove prototype.
9288
9289 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
9290
9291 * image.c (PNG_BG_COLOR_SHIFT): Remove.
9292 (png_load): Fix calculation of transparent background color on X
9293 and W32 platforms.
9294
9295 2004-04-16 Juanma Barranquero <lektu@terra.es>
9296
9297 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
9298 not too large before computing how much to scroll.
9299
9300 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
9301
9302 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
9303
9304 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
9305
9306 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
9307 Add hyperlink to Elisp manual to the docstring.
9308
9309 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
9310
9311 * callint.c (fix_command): Use XDCR.
9312
9313 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
9314
9315 * window.c (Fget_lru_window): Doc fix.
9316
9317 2004-04-14 Kim F. Storm <storm@cua.dk>
9318
9319 * editfns.c (Fformat): Fix allocation size of precision array.
9320
9321 * dispnew.c (update_window): Only set changed_p if
9322 scrolling_window actually did scroll.
9323 (scrolling_window): Only return 1 if we actually did scroll.
9324
9325 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
9326 height to glyph height when cursor row is not fully visible.
9327 (make_cursor_line_fully_visible): Add FORCE_P arg to return
9328 failure in case row is higher than window. Callers changed.
9329 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
9330 Try to scroll partially visible, higher-than-window cursor row.
9331 (redisplay_window): Always try to scroll partially visible,
9332 higher-than-window cursor row - both initially and again with
9333 centering_position = 0.
9334 Clear desired matrix before retrying with centering_position = 0.
9335
9336 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
9337
9338 * syntax.c (scan_lists): Simplify backward string scan.
9339 Fix off-by-one boundary check for string and comment fences.
9340
9341 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
9342
9343 * sheap.c, unexcw.c: New files.
9344
9345 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
9346
9347 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
9348 base buffer has been killed. Correct the error message if the
9349 base buffer does not exist.
9350
9351 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
9352
9353 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
9354 Cygwin itself. Add support for Xaw3d scrollbars.
9355
9356 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
9357
9358 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
9359
9360 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
9361 before Cygwin unexec.
9362
9363 * Makefile.in: Link changes for Cygwin unexec() support.
9364
9365 2004-04-12 Andreas Schwab <schwab@suse.de>
9366
9367 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
9368
9369 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
9370
9371 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
9372 IGNORE argument equals NAME. Doc fix.
9373
9374 2004-04-11 Masatake YAMATO <jet@gyve.org>
9375
9376 * buffer.c (fix_start_end_in_overlays): Make overlays
9377 empty if they are backwards.
9378
9379 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
9380
9381 * xfaces.c (face_color_supported_p): Fix compilation without X11.
9382
9383 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
9384
9385 * doc.c (Fsnarf_documentation): Ignore new file name entries.
9386
9387 2004-04-06 Kim F. Storm <storm@cua.dk>
9388
9389 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
9390 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
9391
9392 * w32term.c (w32_read_socket): Set mouse_face_hidden after
9393 clearing highlight.
9394
9395 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
9396
9397 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
9398 clearing highlight.
9399
9400 * indent.c (vmotion): Do not reserve one column for continuation
9401 marks on window frames.
9402
9403 2004-04-04 Eli Zaretskii <eliz@gnu.org>
9404
9405 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
9406 from GCC.
9407
9408 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9409
9410 * .gdbinit-union: Remove.
9411
9412 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
9413 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
9414 ($nonvalbits): Remove.
9415 ($valmask): Set it by calling xreload to avoid redundancy.
9416
9417 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
9418 (gdb_emacs_intbits): Remove.
9419
9420 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9421
9422 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
9423
9424 2004-03-30 Kenichi Handa <handa@m17n.org>
9425
9426 * editfns.c (Fformat): Fix initialization of the array info.
9427
9428 2004-03-30 Kim F. Storm <storm@cua.dk>
9429
9430 * xterm.c (x_mouse_click_focus_ignore_position): New var.
9431 (syms_of_xterm): DEFVAR_BOOL it.
9432 (ignore_next_mouse_click_timeout): New var.
9433 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
9434 Use it to filter mouse clicks following focus event.
9435
9436 2004-03-29 David Ponce <david@dponce.com>
9437
9438 * callint.c (Fcall_interactively): Fix last change.
9439
9440 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
9441
9442 * eval.c (Fcommandp): Simplify.
9443
9444 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
9445 Extend to handle all kinds of functions.
9446
9447 * lisp.h (Finteractive_form): Declare.
9448
9449 * callint.c (Fcall_interactively): Use it.
9450
9451 2004-03-26 Kim F. Storm <storm@cua.dk>
9452
9453 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
9454 to catch errors in calc_pixel_width_or_height during redisplay.
9455
9456 2004-03-26 Masatake YAMATO <jet@gyve.org>
9457
9458 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
9459
9460 * lisp.h (fix_start_end_in_overlays): Likewise.
9461
9462 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
9463
9464 * editfns.c (Ftranspose_regions): Likewise.
9465
9466 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9467
9468 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
9469
9470 2004-03-19 Richard M. Stallman <rms@gnu.org>
9471
9472 * s/sol2-6.h: Delete previous change.
9473
9474 2004-03-19 Kim F. Storm <storm@cua.dk>
9475
9476 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
9477 to_charpos corresponds to newline in right fringe. Use local
9478 BUFFER_POS_REACHED_P macro.
9479
9480 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9481
9482 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
9483 to compile on non-window system.
9484
9485 2004-03-19 Kim F. Storm <storm@cua.dk>
9486
9487 * dispextern.h (calc_pixel_width_or_height): Add prototype.
9488
9489 * image.c (Qcenter): Move to xdisp.c.
9490
9491 * xdisp.c (Qcenter): Declare here.
9492 (syms_of_xdisp): Intern and staticpro it.
9493 (handle_single_display_prop): Allow space display property on all
9494 platforms.
9495 (display_mode_line): Set mode_line_p before displaying line.
9496 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
9497 handling. Remove complex cases for fringes and scroll-bars.
9498 Add left, right, and center alignment positions. Add text (area)
9499 width/height. Return width or height for image specs.
9500 (produce_stretch_glyph): Improve handling of :align-to. Is now
9501 relative to left of text area by default, but other base offsets
9502 can be specified -- also for text lines.
9503
9504 * term.c (produce_glyphs): Handle IT_STRETCH.
9505 (produce_stretch_glyph): New function to handle space width and
9506 align-to display properties on non-window systems.
9507
9508 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9509
9510 * fileio.c (Fread_file_name): Set completion-ignore-case for
9511 case-insensitive systems.
9512
9513 2004-03-14 Masatake YAMATO <jet@gyve.org>
9514
9515 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
9516 when keymap and cursor are setup.
9517
9518 2004-03-14 Steven Tamm <steventamm@mac.com>
9519
9520 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9521
9522 2004-03-14 Kim F. Storm <storm@cua.dk>
9523
9524 * dispextern.h (x_find_image_file): Add prototype.
9525
9526 * image.c (x_find_image_file): Make extern.
9527
9528 * xfns.c (x_find_image_file): Remove prototype.
9529
9530 2004-03-13 Eli Zaretskii <eliz@gnu.org>
9531
9532 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
9533
9534 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
9535
9536 2004-03-12 Richard M. Stallman <rms@gnu.org>
9537
9538 * fns.c (internal_equal): New arg PROPS controls comparing
9539 text properties. All callers changed.
9540 (Fequal_including_properties): New function.
9541 (syms_of_fns): defsubr it.
9542
9543 2004-03-12 Kim F. Storm <storm@cua.dk>
9544
9545 Fix image support on MAC. From YAMAMOTO Mitsuharu.
9546
9547 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
9548 (image_background, image_background_transparent): Fix prototypes.
9549
9550 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
9551
9552 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
9553 (x_query_font, x_find_ccl_program, x_set_window_size)
9554 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9555 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9556 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
9557
9558 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
9559 (x_query_font, x_find_ccl_program, x_set_window_size)
9560 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9561 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9562 (mac_draw_line_to_pixmap): Add prototypes.
9563
9564 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9565
9566 * macterm.c (XTread_socket): Fix mouse click on tool bar.
9567
9568 2004-03-11 Kim F. Storm <storm@cua.dk>
9569
9570 * dispextern.h: Move image related prototypes from xfns.c section
9571 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
9572 HAVE_X_WINDOWS.
9573
9574 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
9575 Move gtkutil.o to new GTK_OBJ list.
9576 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
9577 (GTK_OBJ) [USE_GTK]: New declaration.
9578 (obj): Add $(GTK_OBJ) to list.
9579
9580 2004-03-11 Steven Tamm <steventamm@mac.com>
9581
9582 * image.c [MAC_OSX]: Include sys/stat.h.
9583
9584 * macfns.c (syms_of_macfns): Remove definitions of things now
9585 defined in image.c.
9586
9587 2004-03-11 Kim F. Storm <storm@cua.dk>
9588
9589 The following changes consolidates the identical/similar image
9590 support code previously found in xfns.c, w32fns.c, and macfns.c
9591 into a new file image.c.
9592
9593 * makefile.w32-in (OBJ1): Add image.o.
9594 ($(BLD)/image.$(O)): Add dependencies.
9595
9596 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
9597 (image.o): Add dependencies.
9598
9599 * image.c: New file with consolidated image support code.
9600 (COLOR_TABLE_SUPPORT): New define to control whether
9601 color table support is available (X only).
9602 (Bitmap_Record): Common name for x_bitmap_record,
9603 w32_bitmap_record, and mac_bitmap_record.
9604 (XImagePtr): Common name for pointer to XImage or equivalent.
9605 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
9606 to XImagePtr on X+MAC, and to HDC on W32.
9607 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
9608 (NO_PIXMAP): Common name for "None" or equivalent.
9609 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
9610 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
9611 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
9612 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
9613 Define with suitable equivalents on W32 and MAC for code sharing.
9614 (XDrawLine): Define on MAC for code sharing.
9615 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
9616 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
9617 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9618 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9619 (x_reference_bitmap, x_create_bitmap_from_data)
9620 (x_create_bitmap_from_file, x_destroy_bitmap)
9621 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9622 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9623 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9624 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9625 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9626 (define_image_type, lookup_image_type, valid_image_p)
9627 (image_error, enum image_value_type, struct image_keyword)
9628 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9629 (make_image, free_image, prepare_image_for_display, image_ascent)
9630 (four_corners_best, image_background, image_background_transparent)
9631 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9632 (make_image_cache, free_image_cache, clear_image_cache)
9633 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9634 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9635 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9636 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9637 (init_image_func_pointer, image_load_quartz2d)
9638 (struct ct_color, init_color_table, free_color_table)
9639 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9640 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9641 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9642 (x_disable_image, x_build_heuristic_mask)
9643 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9644 (TIFF support, GIF support, Ghostscript support): Consolidate image
9645 code from xfns.c, w32fns.c, and macfns.c.
9646 (syms_of_image): Consolidate image related symbol setup here.
9647 (init_image): Consolidate image related initializations here.
9648
9649 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
9650 and init_image. Remove call to init_xfns.
9651
9652 * macterm.h (struct mac_bitmap_record): Add file member.
9653 Not currently used, but simplifies code sharing.
9654
9655 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9656 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9657 (x_reference_bitmap, x_create_bitmap_from_data)
9658 (x_create_bitmap_from_file, x_destroy_bitmap)
9659 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9660 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9661 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9662 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9663 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9664 (define_image_type, lookup_image_type, valid_image_p)
9665 (image_error, enum image_value_type, struct image_keyword)
9666 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9667 (make_image, free_image, prepare_image_for_display, image_ascent)
9668 (four_corners_best, image_background, image_background_transparent)
9669 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9670 (make_image_cache, free_image_cache, clear_image_cache)
9671 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9672 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9673 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9674 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9675 (init_image_func_pointer, image_load_quartz2d)
9676 (struct ct_color, init_color_table, free_color_table)
9677 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9678 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9679 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9680 (x_disable_image, x_build_heuristic_mask)
9681 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9682 (TIFF support, GIF support, Ghostscript support): Merge with image
9683 code from xfns.c and macfns.c into image.c.
9684 (syms_of_xfns): Move image related symbols to image.c.
9685 (init_external_image_libraries, init_xfns): Remove; initialization
9686 moved to init_image in image.c.
9687
9688 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9689 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9690 (x_reference_bitmap, x_create_bitmap_from_data)
9691 (x_create_bitmap_from_file, x_destroy_bitmap)
9692 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9693 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9694 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9695 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9696 (define_image_type, lookup_image_type, valid_image_p)
9697 (image_error, enum image_value_type, struct image_keyword)
9698 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9699 (make_image, free_image, prepare_image_for_display, image_ascent)
9700 (four_corners_best, image_background, image_background_transparent)
9701 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9702 (make_image_cache, free_image_cache, clear_image_cache)
9703 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9704 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9705 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9706 (struct ct_color, init_color_table, free_color_table)
9707 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9708 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9709 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9710 (x_disable_image, x_build_heuristic_mask)
9711 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9712 (TIFF support, GIF support, Ghostscript support): Merge with image
9713 code from xfns.c and macfns.c into image.c.
9714 (syms_of_xfns): Move image related symbols to image.c.
9715 (init_external_image_libraries, init_xfns): Remove; initialization
9716 moved to init_image in image.c.
9717
9718 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9719 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9720 (x_reference_bitmap, x_create_bitmap_from_data)
9721 (x_create_bitmap_from_file, x_destroy_bitmap)
9722 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9723 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9724 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9725 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9726 (define_image_type, lookup_image_type, valid_image_p)
9727 (image_error, enum image_value_type, struct image_keyword)
9728 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9729 (make_image, free_image, prepare_image_for_display, image_ascent)
9730 (four_corners_best, image_background, image_background_transparent)
9731 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9732 (make_image_cache, free_image_cache, clear_image_cache)
9733 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9734 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9735 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9736 (struct ct_color, init_color_table, free_color_table)
9737 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9738 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9739 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9740 (x_disable_image, x_build_heuristic_mask)
9741 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9742 (TIFF support, GIF support, Ghostscript support): Merge with
9743 w32fns.c and macfns.c image code into image.c.
9744 (syms_of_xfns): Move image related symbols to image.c.
9745 (init_xfns): Remove; initialization moved to init_image in image.c.
9746
9747 * lisp.h (syms_of_image, init_image): Add protoypes.
9748 (init_xfns): Remove prototype.
9749
9750 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9751 (x_reference_bitmap, x_create_bitmap_from_data)
9752 (x_create_bitmap_from_file, x_destroy_bitmap)
9753 (x_create_bitmap_mask): Move prototypes from dispextern.h.
9754 (gamma_correct) [MAC_OS]: Add prototype.
9755
9756 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9757 (x_reference_bitmap, x_create_bitmap_from_data)
9758 (x_create_bitmap_from_file, x_destroy_bitmap)
9759 (x_create_bitmap_mask): Move prototypes to dispextern.h.
9760
9761 2004-03-09 Kenichi Handa <handa@etlken2>
9762
9763 * coding.c (decode_coding_emacs_mule): Handle insufficent source
9764 correctly.
9765
9766 2004-03-04 Richard M. Stallman <rms@gnu.org>
9767
9768 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
9769
9770 * window.c (Fdisplay_buffer): Doc fix.
9771
9772 * buffer.c (Fpop_to_buffer): Doc fix.
9773
9774 2004-03-03 Kim F. Storm <storm@cua.dk>
9775
9776 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
9777
9778 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
9779
9780 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
9781
9782 2004-03-02 Richard M. Stallman <rms@gnu.org>
9783
9784 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
9785
9786 2004-03-02 Kenichi Handa <handa@m17n.org>
9787
9788 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
9789
9790 2004-03-02 Kim F. Storm <storm@cua.dk>
9791
9792 * window.h (struct window): New member overlay_arrow_bitmap.
9793
9794 * window.c (make_window): Initialize overlay_arrow_bitmap.
9795
9796 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
9797 implement and integrate multiple overlay arrows with redisplay.
9798 (syms_of_xdisp): DEFVAR_LISP and initialize it.
9799 (last_arrow_position, last_arrow_string): Replace by properties.
9800 (Qlast_arrow_position, Qlast_arrow_string)
9801 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
9802 (syms_of_xdisp): Intern and staticpro them.
9803 (overlay_arrow_string_or_property, update_overlay_arrows)
9804 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
9805 (overlay_arrow_at_row): New functions for multiple overlay arrows.
9806 (redisplay_internal): Use them instead of directly accessing
9807 Voverlay_arrow_position etc. for multiple overlay arrows.
9808 (mark_window_display_accurate): Use update_overlay_arrows.
9809 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
9810 (try_window_id): Use overlay_arrows_changed_p.
9811 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
9812 (display_line): Use overlay_arrow_at_row to check multiple
9813 overlay arrows, and get relevant overlay-arrow-string and
9814 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
9815 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
9816 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
9817
9818 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
9819 (update_window_fringes): Remove unused code.
9820
9821 2004-03-01 Jason Rumney <jasonr@gnu.org>
9822
9823 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
9824
9825 2004-03-01 Juanma Barranquero <lektu@terra.es>
9826
9827 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
9828
9829 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
9830
9831 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9832
9833 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
9834 how many colors can be displayed.
9835
9836 2004-03-01 Kenichi Handa <handa@m17n.org>
9837
9838 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
9839 correctly.
9840
9841 2004-02-28 Kim F. Storm <storm@cua.dk>
9842
9843 * dispnew.c (update_window): Update header line also if there are
9844 no other changes in window (move code after set_cursor label).
9845
9846 * lisp.h (mark_window_display_accurate): Remove prototype.
9847
9848 * window.c (window_loop, Fforce_window_update): Force mode line
9849 updates by setting prevent_redisplay_optimizations_p and
9850 update_mode_lines.
9851
9852 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9853
9854 * xfns.c (x_window): Fix indentation.
9855
9856 * xterm.c (x_calc_absolute_position): Call x_real_positions
9857 to get WM window sizes and use those to calculate position.
9858 (x_set_offset): Remove code commented out.
9859
9860 2004-02-28 Miles Bader <miles@gnu.org>
9861
9862 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
9863
9864 2004-02-28 Kim F. Storm <storm@cua.dk>
9865
9866 * keyboard.c (kbd_buffer_store_event_hold): New function to store
9867 an event into kbd fifo, but with special handling of quit event;
9868 a quit event is saved for later, and further events are discarded
9869 until the saved quit event has been processed.
9870 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
9871 (gen_help_event): Store help event in kbd fifo.
9872 (NREAD_INPUT_EVENTS): Remove.
9873 (read_avail_input): Adapt to new read_socket_hook interface.
9874 Remove allocation and initialization of local input_event buffer,
9875 as read_socket_hook stores events directly in fifo. Allocate and
9876 initialize local hold_quit event to handle postponed quit event
9877 (and store it if set by kbd_buffer_store_event_hold).
9878
9879 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
9880 (gen_help_event): Fix prototype.
9881
9882 * macterm.c (XTread_socket): Remove bufp_r and
9883 numcharsp args. Add hold_quit arg.
9884 Rework to use just one, local, inev input_event. Store inev
9885 directly in fifo using kbd_buffer_store_event_hold.
9886
9887 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
9888 (read_input_waiting): Adapt to new read_socket_hook interface.
9889 Remove allocation and initialization of local input_event buffer,
9890 as read_socket_hook stores events directly in fifo. Allocate and
9891 initialize local hold_quit event to handle postponed quit event
9892 (and store it if set by kbd_buffer_store_event_hold).
9893
9894 * term.c (read_socket_hook): Fix arg list.
9895
9896 * termhooks.h (read_socket_hook): Fix prototype.
9897
9898 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
9899 numcharsp args. Add hold_quit arg.
9900 Rework to use just one, local, inev input_event. Store inev
9901 directly in fifo using kbd_buffer_store_event_hold.
9902
9903 * w32inevt.h (w32_console_mouse_position): Fix prototype.
9904
9905 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
9906 Add hold_quit arg. Rework to use just one, local, inev
9907 input_event. Store inev directly in fifo using
9908 kbd_buffer_store_event_hold. Update count in one place.
9909 Postpone call to gen_help_event until inev is stored; use new
9910 local do_help for this.
9911 Remove local emacs_event in handing of ButtonPress event; just use
9912 inev instead (so no reason to copy it later).
9913
9914 * xsmfns.c (x_session_check_input): Remove numchars arg.
9915
9916 * xterm.c (x_focus_changed, x_detect_focus_change):
9917 Remove numchars arg. Always store event into bufp arg.
9918 Return nothing. Callers changed accordingly.
9919 (glyph_rect): Simplify.
9920 (STORE_KEYSYM_FOR_DEBUG): New macro.
9921 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
9922 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
9923 (current_hold_quit) [USE_GTK]: Add.
9924 (event_handler_gdk): Adapt to new handle_one_xevent.
9925 (handle_one_xevent): Remove bufp_r and numcharsp args.
9926 Add hold_quit arg. Rework to use just one, local, inev
9927 input_event. Store inev directly in fifo using
9928 kbd_buffer_store_event_hold. Update count in one place.
9929 Postpone call to gen_help_event until inev is stored; use new
9930 local do_help for this.
9931 Simplify handling of keysyms (consolidate common code). Fix bug
9932 where count was updated with nchars instead of nbytes.
9933 Remove local emacs_event in handing of ButtonPress event; just use
9934 inev instead (so no reason to copy it later).
9935 Remove `out' label. Rename label `ret' to `done'; add various
9936 `goto done' to clarify code flow in deeply nested blocks.
9937 (x_dispatch_event): Simplify as handle_one_xevent now calls
9938 kbd_buffer_store_event itself.
9939 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9940 arg. Call handle_one_xevent with new arglist. Store event from
9941 x_session_check_input in fifo.
9942 [USE_GTK]: Setup current_hold_quit.
9943 Decrement handling_signal before unblocking input.
9944 (x_initialize) [USE_GTK]: Initialize current_count.
9945
9946 * xterm.h (x_session_check_input): Fix prototype.
9947
9948 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9949
9950 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9951
9952 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9953 macgui.h).
9954
9955 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9956
9957 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9958 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9959 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9960 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9961 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9962 (Bitmap): Remove typedef.
9963 (Pixmap): Change int to GWorldPtr.
9964
9965 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9966
9967 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9968 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9969 New #define to extract 16-bit depth color components from unsigned
9970 long representation.
9971 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9972 colors used for masks.
9973 (struct mac_display_info): Add color_p. Remove n_cbits.
9974
9975 * macfns.c: Include sys/types.h and sys/stat.h.
9976 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9977 Include QuickTime/QuickTime.h.
9978 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9979 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9980 functions defined in macterm.c.
9981 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9982 (ZPixmap): New #define for compatibility with xfns.c.
9983 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9984 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9985 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9986 New functions.
9987 (four_corners_best, x_create_x_image_and_pixmap)
9988 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9989 (x_edge_detection, init_color_table, colors_in_color_table)
9990 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9991 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9992 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9993 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9994 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9995 long mixup.
9996 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9997 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9998 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9999 (x_set_cursor_type, Fxw_color_values, valid_image_p)
10000 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
10001 (x_alloc_image_color, clear_image_cache, lookup_image)
10002 (x_find_image_file, xbm_read_bitmap_file_data)
10003 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
10004 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
10005 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
10006 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
10007 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
10008 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
10009 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
10010 #if 0.
10011 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
10012 #if 0. Free white_relief.gc and black_relief.gc.
10013 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
10014 New functions (from xfns.c).
10015 (Fx_create_frame): Record unwind_create_frame.
10016 (Fxw_display_color_p): Use dpyinfo->color_p.
10017 (Fx_display_grayscale_p, Fx_display_planes): Don't use
10018 dpyinfo->n_cbits.
10019 (Fx_display_color_cells): Use dpyinfo->n_planes;
10020 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
10021 (Qheuristic, cross_disabled_images, emboss_matrix)
10022 (laplace_matrix): New variables (from xfns.c).
10023 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
10024 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
10025 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
10026 (image_background_transparent): New function (from xfns.c).
10027 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
10028 (image_load_quicktime): Add declaration.
10029 [MAC_OSX] (image_load_quartz2d): Likewise.
10030 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
10031 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
10032 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
10033 (xbm_load_image_from_file, x_laplace_read_row)
10034 (x_laplace_write_row, pbm_read_file): Remove functions.
10035 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
10036 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
10037 (colors_in_color_table): Sync with xfns.c (although not used).
10038 (lookup_rgb_color): Don't lookup color table. Just do gamma
10039 correction.
10040 (COLOR_INTENSITY): New #define (from xfns.c).
10041 (x_disable_image): New function (from xfns.c).
10042 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
10043 (x_build_heuristic_mask): Sync with xfns.c.
10044 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
10045 (HAVE_PBM): Remove #ifdef.
10046 (pbm_load): Sync with xfns.c. Set img->width and img->height
10047 before IMAGE_BACKGROUND.
10048 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
10049 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
10050 Don't enclose with #if HAVE_PNG.
10051 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
10052 symbol _CGImageCreateWithPNGDataProvider is defined.
10053 Otherwise use image_load_quicktime.
10054 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
10055 [HAVE_PNG] (png_load): Sync with xfns.c.
10056 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
10057 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
10058 HAVE_JPEG.
10059 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
10060 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
10061 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
10062 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
10063 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
10064 (tiff_image_p, tiff_load): Don't enclose declarations with #if
10065 HAVE_TIFF.
10066 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
10067 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
10068 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
10069 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
10070 New functions (from xfns.c).
10071 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
10072 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
10073 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
10074 Don't enclose with #if HAVE_GIF.
10075 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
10076 animated gif. Otherwise use image_load_quicktime.
10077 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
10078 gif_DrawText to avoid conflict with QuickdrawText.h.
10079 [HAVE_GIF] (gif_load): Sync with xfns.c.
10080 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
10081 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
10082 Ghostscript is not supported yet).
10083 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
10084 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
10085 cross_disabled_images (from xfns.c). Remove #if 0 for supported
10086 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
10087 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
10088 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
10089 HAVE_PNG. Call EnterMovies to support animated gifs.
10090 Call init_image_func_pointer to bind a symbol
10091 _CGImageCreateWithPNGDataProvider if it is defined.
10092
10093 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
10094 (x_draw_bar_cursor): Sync declaration with xterm.c.
10095 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
10096 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
10097 graphics).
10098 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
10099 (mac_draw_line_to_pixmap, XCreatePixmap)
10100 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
10101 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
10102 New functions.
10103 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
10104 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
10105 Cast bits to char *.
10106 (reflect_byte): New function (from w32fns.c).
10107 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
10108 due to byte alignment.
10109 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
10110 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
10111 (XSetForeground): Remove static (now used in macfns.c).
10112 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
10113 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
10114 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
10115 (x_draw_glyph_string_box, x_draw_image_foreground)
10116 (x_draw_image_foreground_1, x_draw_image_glyph_string)
10117 (x_draw_stretch_glyph_string, x_draw_glyph_string)
10118 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
10119 Sync with xterm.c.
10120 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
10121 than the xterm.c version when a strictly horizontal or vertical
10122 line is drawn.
10123 (XTset_terminal_window): Add static.
10124 (x_make_frame_visible): Add UNBLOCK_INPUT.
10125 (x_free_frame_resources): New funcion (from xterm.c).
10126 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
10127 occurs in tool bar area.
10128 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
10129 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
10130 Initialize image cache.
10131 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
10132 Enclose unused functions with #if 0.
10133 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
10134 (decode_mac_font_name): New function to apply code conversions
10135 from a mac font name to an XLFD font name according to its script code.
10136 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
10137 font name to a mac font name according to REGISTRY and ENCODING fields.
10138 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
10139 whose name starts with `.'.
10140 (init_font_name_table): Use decode_mac_font_name. Add both
10141 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
10142 of a font is smJapanese.
10143 (mac_do_list_fonts): New function to list fonts that match a given
10144 pattern.
10145 (x_list_fonts, XLoadQueryFont): Use it.
10146 (XLoadQueryFont): Set rbearing field for each variable width
10147 character to avoid needless redraw.
10148 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
10149
10150 2004-02-26 Kim F. Storm <storm@cua.dk>
10151
10152 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
10153 as read_socket_hook handler on X aborts if buffer is too small
10154 and W32 handler doesn't always check buffer limit.
10155
10156 * xdisp.c (handle_single_display_prop): Handle left-fringe and
10157 right-fringe similar to a display margin image. Specifically,
10158 the characters having the fringe prop are no longer shown, and
10159 we use IT_IMAGE/next_element_from_image with image_id = -1 to
10160 do this. Set fringe bitmap face_id in it->face_id.
10161 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
10162 still realize it->face (i.e. the fringe bitmap face).
10163
10164 2004-02-25 Miles Bader <miles@gnu.org>
10165
10166 * xdisp.c (check_it): Check string/string_pos consistency.
10167 (init_iterator): Initialize string-related fields properly.
10168
10169 2004-02-11 Miles Bader <miles@gnu.org>
10170
10171 * xdisp.c (produce_image_glyph): Force negative descents to zero.
10172
10173 2004-02-10 Miles Bader <miles@gnu.org>
10174
10175 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
10176 BLOCK_INPUT can be nested, so it doesn't make much sense.
10177
10178 2004-02-24 Michael Mauger <mmaug@yahoo.com>
10179
10180 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
10181 (xbm_read_bitmap_data): Use unsigned char for image data.
10182
10183 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
10184
10185 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
10186
10187 2004-02-22 Jason Rumney <jasonr@gnu.org>
10188
10189 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
10190 correctly over other bitmaps.
10191
10192 2004-02-21 Eli Zaretskii <eliz@gnu.org>
10193
10194 * emacs.c (USAGE1): Split into two halves.
10195 (USAGE2): Second half of the old USAGE1.
10196 (USAGE3): Rename from USAGE2.
10197 (USAGE4): Rename from USAGE3.
10198
10199 2004-02-21 Juri Linkov <juri@jurta.org>
10200
10201 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
10202 Fix --multibyte. Move --help, --version to USAGE2. Add alias
10203 --file. Fix -f, -l. Sort options. Untabify.
10204 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
10205
10206 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
10207
10208 * category.c (Fdefine_category, Fcategory_docstring)
10209 (Fget_unused_category, Fset_category_table)
10210 (Fcategory_set_mnemonics): Doc fixes.
10211
10212 2004-02-20 Kim F. Storm <storm@cua.dk>
10213
10214 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
10215 The following changes are relative to the 2004-01-21 revision.
10216 (NREAD_INPUT_EVENTS): Define as max number of input events to read
10217 in one call to read_socket_hook. Value is 8.
10218 (read_avail_input): Separate and rework handling of read_socket_hook
10219 and non-read_socket_hook cases. Use smaller input_event buffer
10220 in read_socket_hook case, and repeat if full buffer is read.
10221 Use new local variable 'discard' to skip input after C-g.
10222 In non-read_socket_hook case, just use a single input_event, and
10223 call kbd_buffer_store_event on the fly for each character.
10224
10225 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
10226
10227 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
10228 Remove unused `gu' alternative.
10229
10230 2004-02-19 Andreas Schwab <schwab@suse.de>
10231
10232 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
10233 warning.
10234
10235 2004-02-18 Kim F. Storm <storm@cua.dk>
10236
10237 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
10238 Fix last change.
10239
10240 2004-02-17 Kim F. Storm <storm@cua.dk>
10241
10242 * xdisp.c (fast_find_position): Fix return value of new version;
10243 it was inverted compared to the 21.1 version.
10244 (get_window_cursor_type): Don't look at glyph if NULL.
10245 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
10246
10247 * keyboard.c: Rework previous change; it didn't consider that the
10248 buf array was allocated on the stack.
10249 (prev_read): Remove variable.
10250 (read_avail_input_buf): New static event buffer array.
10251 (in_read_avail_input): New static variable to handle re-entrancy.
10252 (read_avail_input): Change buf to pinter to read_avail_input_buf.
10253 Use in_read_avail_input to handle re-entrance; when re-entered,
10254 fully initialize and use tmp_buf array instead of read_avail_input_buf.
10255 Do not initialize read_avail_input_buf in full here; instead assume it
10256 is always cleared on entry. To ensure that, we clear (just) the
10257 entries that were used before we return.
10258 (init_keyboard): Initialize read_avail_input_buf here.
10259
10260 2004-02-16 Jesper Harder <harder@ifa.au.dk>
10261
10262 * cmds.c (Fend_of_line): Doc fix.
10263
10264 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
10265
10266 * keyboard.c (prev_read): New static variable.
10267 (read_avail_input): Use it to zero out only those slots in buf[]
10268 that were used last time we were called.
10269
10270 2004-02-16 Eli Zaretskii <eliz@gnu.org>
10271
10272 * Makefile.in (obj): Move fringe.o from here...
10273 (XOBJ, MAC_OBJ): ...to here.
10274
10275 2004-02-16 Stephen Eglen <stephen@gnu.org>
10276
10277 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
10278
10279 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
10280
10281 * data.c (Fbyteorder):
10282 * fringe.c (Fdefine_fringe_bitmap):
10283 * xdisp.c (handle_single_display_prop):
10284 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
10285
10286 2004-02-16 Jason Rumney <jasonr@gnu.org>
10287
10288 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
10289
10290 2004-02-15 Steven Tamm <steventamm@mac.com>
10291
10292 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
10293 controlling emulation of a three button mouse with option and
10294 command keys.
10295 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
10296 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
10297
10298 2004-02-15 Kim F. Storm <storm@cua.dk>
10299
10300 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
10301
10302 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
10303 Perform byte-swapping.
10304
10305 2004-02-14 Kim F. Storm <storm@cua.dk>
10306
10307 * dispextern.h (struct draw_fringe_bitmap_params): Change member
10308 bits from char to short to facilitate wider bitmaps.
10309 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
10310 member.
10311
10312 * fringe.c (struct fringe_bitmap): Change member bits from char to
10313 short to facilitate 16 bits wide bitmaps. Modify all standard
10314 bitmaps accordingly.
10315 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
10316 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
10317 (draw_fringe_bitmap): Ditto.
10318 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
10319 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
10320 handle up to 16 bits wide bitmaps.
10321 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
10322 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
10323
10324 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
10325 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
10326 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
10327
10328 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
10329 so it is no longer necessary to expand them here.
10330
10331 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
10332
10333 2004-02-12 Kim F. Storm <storm@cua.dk>
10334
10335 * window.c (Fwindow_fringes): Doc fix.
10336
10337 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10338
10339 * xselect.c (x_get_foreign_selection): Add new optional parameter
10340 time_stamp.
10341 (Fx_get_selection_internal): Ditto, pass time_stamp to
10342 x_get_foreign_selection.
10343
10344 * data.c (Fbyteorder): New function.
10345
10346 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10347
10348 * atimer.c: Move include stdio.h to same place as in other files.
10349
10350 * region-cache.c: Ditto.
10351
10352 * sysdep.c: Ditto.
10353
10354 * xfaces.c: Ditto.
10355
10356 2004-02-09 Sam Steingold <sds@gnu.org>
10357
10358 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
10359
10360 2004-02-09 Kim F. Storm <storm@cua.dk>
10361
10362 * fringe.c: New file. Move original fringe related declarations
10363 and code from dispextern.h and xdisp.c here.
10364 Rework code to support user defined fringe bitmaps, redefining
10365 standard bitmaps, ability to overlay user defined bitmap with
10366 overlay arrow bitmap, and add faces to bitmaps.
10367 (Voverflow_newline_into_fringe): Declare here.
10368 (enum fringe_bitmap_align): New enum.
10369 (..._bits): All bitmaps are now defined without bitswapping; that
10370 is now done in init_fringe_once (if necessary).
10371 (standard_bitmaps): New array with specifications for the
10372 standard fringe bitmaps.
10373 (fringe_faces): New array.
10374 (valid_fringe_bitmap_id_p): New function.
10375 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
10376 (draw_fringe_bitmap): New function which draws fringe bitmap,
10377 possibly overlaying bitmap with cursor in right fringe or the
10378 overlay arrow in the left fringe.
10379 (update_window_fringes): Do not handle overlay arrow here.
10380 Compare and copy fringe bitmap faces.
10381 (init_fringe_bitmap): New function.
10382 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
10383 define and destroy user defined fringe bitmaps.
10384 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
10385 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
10386 (syms_of_fringe): New function. Defsubr new DEFUNs.
10387 DEFVAR_LISP Voverflow_newline_into_fringe.
10388 (init_fringe_once, init_fringe): New functions.
10389 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
10390
10391 * Makefile.in (obj): Add fringe.o.
10392 (fringe.o): New dependencies.
10393
10394 * dispextern.h (FRINGE_ID_BITS): New definition for number of
10395 bits allocated to hold a fringe number. Increase number of bits
10396 from 4 to 8 to allow user defined fringe bitmaps.
10397 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
10398 left_user_fringe_face_id, right_user_fringe_bitmap,
10399 right_user_fringe_face_id.
10400 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
10401 Move to new file fringe.c.
10402 (MAX_FRINGE_BITMAPS): Define here.
10403 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
10404 and overlay_p. Change member which to int.
10405 (struct redisplay_interface): New members define_fringe_bitmap
10406 and destroy_fringe_bitmap.
10407 (valid_fringe_bitmap_id_p): Add prototype.
10408 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
10409
10410 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
10411 arrows.
10412 (update_frame): Do flush_display if force_flush_display_p to
10413 ensure display (specifically fringes) are updated in a timely
10414 manner when resizing the frame by dragging the mouse.
10415 (update_window_line): Update row if overlay arrow changed.
10416 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
10417 or overlay arrow changed.
10418
10419 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
10420 syms_of_fringe, and init_fringe.
10421
10422 * frame.h (struct frame): New member force_flush_display_p.
10423
10424 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
10425 Add prototypes.
10426
10427 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
10428 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
10429 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
10430 Use cursor color for displaying cursor in fringe.
10431 (x_redisplay_interface): Add null handlers for
10432 define_fringe_bitmap and destroy_fringe_bitmap functions.
10433
10434 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
10435 xterm.c to handle overlayed fringe bitmaps and to use cursor color
10436 for displaying cursor in fringe.
10437 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
10438 specific functions to define and destroy fringe bitmaps in fringe_bmp.
10439 (w32_redisplay_interface): Add them to redisplay_interface.
10440 (w32_term_init): Call w32_init_fringe instead of explicitly
10441 defining fringe bitmaps in fringe_bmp array.
10442 (x_delete_display): Call w32_reset_fringes instead of explicitly
10443 destroying fringe bitmaps in fringe_bmp array.
10444
10445 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
10446 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
10447 (continued_bits, continuation_bits, ov_bits, first_line_bits)
10448 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
10449 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
10450 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
10451 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
10452 Move fringe handling vars and code to new file fringe.c.
10453 (handle_display_prop): Handle left-fringe and right-fringe
10454 display properties; store user fringe bitmaps in iterator.
10455 (move_it_in_display_line_to): Handle cursor in fringe at eob.
10456 (clear_garbaged_frames): Set force_flush_display_p if resized.
10457 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
10458 (display_line): Handle cursor in fringe at eob.
10459 (display_line): Set row user fringe bitmaps from iterator.
10460
10461 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
10462 Use cursor color for displaying cursor in fringe.
10463 (x_redisplay_interface): Add null handlers for
10464 define_fringe_bitmap and destroy_fringe_bitmap functions.
10465
10466 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10467
10468 * macfns.c (Fx_change_window_property): Make doc string and
10469 parameters same as for X version.
10470
10471 * w32fns.c (Fx_change_window_property): Ditto.
10472
10473 2004-02-07 Kim F. Storm <storm@cua.dk>
10474
10475 * xdisp.c (hscroll_window_tree): Position cursor near to right
10476 margin in hscrolled window when jumping to end of line (rather
10477 than centering cursor).
10478
10479 * process.c (wait_reading_process_input): Don't do adaptive read
10480 buffering if waiting for a specific process.
10481
10482 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
10483
10484 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
10485 (Fread_minibuffer, Feval_minibuffer)
10486 (Fread_string, Fread_no_blanks_input)
10487 (Fcompleting_read): Doc fixes.
10488 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
10489 completion-regexp-list. Define Qcase_fold_search and staticpro it.
10490 (read_minibuf): Fix initial comment.
10491 (Ftry_completion, Fall_completions, Ftest_completion): Bind
10492 case-fold-search to the value of completion-ignore-case when
10493 checking completion-regexp-list.
10494 (Fdisplay_completion_list): Make it handle arguments that are
10495 symbols. Doc fix.
10496
10497 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10498
10499 * xterm.h: Add declaration of free_frame_menubar.
10500
10501 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
10502 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
10503 (Fx_change_window_property): Add declaration of parameters type and
10504 format. Remove unused variable cons.
10505
10506 * xselect.c: Include stdio.h.
10507
10508 2004-02-05 Kenichi Handa <handa@m17n.org>
10509
10510 * fns.c (Fset_char_table_range): Fix previous change.
10511
10512 * buffer.c (Fset_buffer_multibyte): Fix docstring.
10513
10514 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
10515
10516 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
10517
10518 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
10519
10520 * keymap.c (Vmouse_events): Rename from Vmenu_events.
10521 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
10522
10523 2004-02-04 Kenichi Handa <handa@m17n.org>
10524
10525 * fns.c (Fset_char_table_range): Handle charsets ascii,
10526 eight-bit-control, and eight-bit-graphic correctly.
10527
10528 2004-02-03 Jason Rumney <jasonr@gnu.org>
10529
10530 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
10531
10532 * w32fns.c (x_to_w32_font): Likewise.
10533
10534 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10535
10536 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
10537 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
10538
10539 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
10540 ClientMessages.
10541
10542 * xselect.c: Include termhooks.h and X11/Xproto.h
10543 (x_check_property_data, x_fill_property_data)
10544 (x_property_data_to_lisp, mouse_position_for_drop)
10545 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
10546 (Fx_send_client_event): Move here from xfns.c.
10547 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
10548
10549 * xfns.c (x-send-client-message): Move to xselect.c
10550 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
10551 OUTER_P.
10552 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
10553 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
10554 if vector_ret_p is true.
10555 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
10556
10557 2004-02-02 Eli Zaretskii <eliz@gnu.org>
10558
10559 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
10560 basename of FILE relative to it, not FILE itself.
10561
10562 2004-02-02 Kenichi Handa <handa@m17n.org>
10563
10564 * coding.c (coding_restore_composition): Check invalid
10565 composition data more rigidly.
10566
10567 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
10568
10569 * fileio.c (Fread_file_name_internal): Correctly handle the case
10570 where insert-default-directory is nil.
10571 (Fread_file_name): Always return an empty string if the user exits
10572 with an empty minibuffer. Adapt the docstring accordingly.
10573 (syms_of_fileio): Adapt the docstring of insert-default-directory
10574 to the change in Fread_file_name.
10575
10576 2004-01-29 Eli Zaretskii <eliz@gnu.org>
10577
10578 * alloca.c [!alloca]: Fix the prototype for xfree.
10579
10580 2004-01-29 Kenichi Handa <handa@m17n.org>
10581
10582 * fns.c (string_char_to_byte): Optimize for ASCII only string.
10583 (string_byte_to_char): Likewise.
10584
10585 2004-01-28 Peter Runestig <peter@runestig.com>
10586
10587 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
10588
10589 2004-01-27 Steven Tamm <steventamm@mac.com>
10590
10591 * unexmacosx.c (unexec_copy): Do not copy more than was
10592 requested to prevent overwriting during unexec.
10593
10594 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10595
10596 * process.c (sigchld_handler): Add comment about not calling malloc.
10597
10598 * process.h: Add extern to synch_process_termsig.
10599
10600 2004-01-27 Steven Tamm <steventamm@mac.com>
10601
10602 * macterm.c (make_mac_frame, make_mac_terminal_frame):
10603 Move setting of scroll bars from make_mac_frame to
10604 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
10605
10606 2004-01-26 Richard M. Stallman <rms@gnu.org>
10607
10608 * search.c (Freplace_match): Handle nonexistent
10609 back-references properly.
10610
10611 2004-01-03 Richard M. Stallman <rms@gnu.org>
10612
10613 * window.c (decode_any_window): New function.
10614 (Fwindow_height, Fwindow_width, Fwindow_edges)
10615 (Fwindow_pixel_edges, Fwindow_inside_edges)
10616 (Fwindow_inside_pixel_edges): Use decode_any_window.
10617
10618 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10619
10620 * process.h: synch_process_termsig new variable.
10621
10622 * callproc.c: Define synch_process_termsig.
10623 (Fcall_process): Initiate synch_process_termsig to zero and
10624 check if non-zero and get signal name after subprocess has ended.
10625
10626 * process.c (sigchld_handler): Set synch_process_termsig
10627 if terminated by a signal. synch_process_death setting removed.
10628
10629 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
10630
10631 2004-01-26 Andreas Schwab <schwab@suse.de>
10632
10633 * print.c (print_preprocess): Declare size as EMACS_INT to not
10634 lose bits.
10635 (print_object): Likewise.
10636 * alloc.c (Fpurecopy): Likewise.
10637
10638 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
10639
10640 * window.c (Fwindow_minibuffer_p): Doc fix.
10641
10642 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
10643
10644 * editfns.c (Fformat): Make both passes accept the same set of flags.
10645
10646 2004-01-23 Kenichi Handa <handa@m17n.org>
10647
10648 * fns.c (Fmd5): If OBJECT is a buffer different from the current
10649 one, set buffer to OBJECT temporarily.
10650
10651 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10652
10653 * keyboard.c (kbd_buffer_gcpro): Remove.
10654 (kbd_buffer_store_event, clear_event, Fdiscard_input)
10655 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
10656 Don't initialize and/or maintain the variable any more. It was made
10657 redundant by my commit of 2003-06-15.
10658
10659 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
10660
10661 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10662
10663 * lisp.h: Add undef DECL_ALIGN.
10664
10665 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10666
10667 * process.c (wait_reading_process_input) [SYNC_INPUT]:
10668 Check interrupt_input_pending explicitly.
10669
10670 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
10671
10672 * keyboard.c (handle_async_input): New fun,
10673 extracted from input_available_signal.
10674 (input_available_signal, reinvoke_input_signal): Use it.
10675
10676 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
10677
10678 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
10679
10680 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
10681 manipulation macros for when tags are in the lower bits.
10682 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
10683 (DECL_ALIGN): New macro.
10684 (DEFUN): Use it.
10685
10686 * lisp.h [ENABLE_CHECKING]: Don't force union type.
10687
10688 * s/darwin.h (__attribute__): Remove outdated workaround.
10689
10690 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
10691
10692 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
10693 Don't check range of malloc address.
10694 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
10695
10696 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
10697
10698 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
10699
10700 2004-01-19 Kenichi Handa <handa@m17n.org>
10701
10702 * fontset.c (fontset_font_pattern): Fix previous change.
10703
10704 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
10705
10706 * xdisp.c (Voverflow_newline_into_fringe)
10707 (move_it_in_display_line_to, redisplay_internal)
10708 (update_window_fringes, redisplay_window, display_line, window):
10709 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
10710 that it compiles without a window-system.
10711 * dispnew.c (direct_output_for_insert, update_window): Likewise.
10712
10713 2004-01-16 Kim F. Storm <storm@cua.dk>
10714
10715 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
10716
10717 * buffer.c (init_buffer_once): Set buffer_defaults and
10718 buffer_local_flags for indicate_buffer_boundaries.
10719 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
10720 default- variable for it.
10721
10722 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
10723 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
10724 New members exact_window_width_line_p and cursor_in_fringe_p for
10725 overflowing newlines into right fringe.
10726 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
10727 and indicate_bottom_line_p for buffer boundaries and scrolling.
10728 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
10729 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
10730 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
10731 and HOLLOW_SQUARE_BITMAP.
10732 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
10733 Add prototypes.
10734
10735 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
10736 instead of related indicator fields.
10737 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
10738 (direct_output_for_insert): Handle exact width lines like
10739 contined lines. Call update_window_fringes.
10740 (update_window): Call update_window_fringes.
10741 (scrolling_window): Don't skip desired rows with changed bitmaps.
10742 Check if fringe bitmaps changes when assigning scrolled rows.
10743
10744 * xdisp.c (Voverflow_newline_into_fringe): New variable.
10745 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
10746 (move_it_in_display_line_to): Overflow newline into fringe for
10747 rows that are exactly as wide as the window.
10748 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
10749 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
10750 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
10751 (fringe_bitmaps): Add new bitmaps.
10752 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
10753 Select proper bitmap for cursor in fringe when appropriate.
10754 Handle alignment of bitmap to top or bottom of row.
10755 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
10756 done by update_window_fringes.
10757 (update_window_fringes, draw_window_fringes): New functions.
10758 (redisplay_internal): Call update_window_fringes in case only
10759 cursor row is updated.
10760 (redisplay_window): Call update_window_fringes.
10761 Explicitly call draw_window_fringes if redisplay was done using
10762 the current matrix or the overlay arrow is in the window.
10763 (try_window_reusing_current_matrix): Mark scrolled rows for
10764 fringe update (to update buffer-boundaries / scrolling icons).
10765 (find_last_unchanged_at_beg_row): Handle exact width lines line
10766 continued lines.
10767 (display_line): Overflow newline into fringe for rows that are
10768 exactly as wide as the window. Don't append space for newline
10769 in this case.
10770 (notice_overwritten_cursor): Explicitly clear cursor bitmap
10771 in fringe as if it had been overwritten.
10772 (erase_phys_cursor): Erase cursor bitmap in fringe.
10773 (syms_of_xdisp): Mark show-trailing-whitespace and
10774 void-text-area-pointer as user options.
10775 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
10776
10777 * xterm.c (x_update_window_end): Call draw_window_fringes.
10778 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10779 in row instead of actually drawing fringe bitmaps.
10780 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10781 (x_draw_window_cursor): Draw cursor in fringe.
10782
10783 * w32term.c (x_update_window_end): Call draw_window_fringes.
10784 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10785 in row instead of actually drawing fringe bitmaps.
10786 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10787 (w32_draw_window_cursor): Draw cursor in fringe.
10788
10789 * macterm.c (x_update_window_end): Call draw_window_fringes.
10790 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10791 in row instead of actually drawing fringe bitmaps.
10792 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10793 (mac_draw_window_cursor): Draw cursor in fringe.
10794
10795 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10796
10797 * xterm.c (handle_one_xevent): Don't handle characters that are part
10798 of an old style (XLookupString) compose sequence.
10799
10800 2004-01-15 Kenichi Handa <handa@m17n.org>
10801
10802 * search.c (Freplace_match): Use make_multibyte_string or
10803 make_unibyte_string according to the buffer multibyteness.
10804
10805 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
10806
10807 * alloc.c (struct interval_block, struct string_block)
10808 (struct symbol_block, struct marker_block, live_string_p)
10809 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
10810 Better preserve alignment for objects in blocks.
10811 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
10812
10813 * lread.c (defvar_per_buffer): Remove dead declaration.
10814
10815 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
10816 space size.
10817
10818 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10819
10820 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
10821 if a key press should pop down. Only pop down if a key is pressed
10822 outside the menu/dialog.
10823 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
10824 popup_get_selection.
10825 (create_and_show_dialog): Pass 1 for down_on_keypress to
10826 popup_get_selection.
10827
10828 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10829
10830 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
10831 BLOCK/UNBLOCK_INPUT.
10832
10833 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10834
10835 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
10836 specified.
10837
10838 2004-01-08 Kenichi Handa <handa@m17n.org>
10839
10840 * editfns.c (Fformat): Fix '&' to '&&'.
10841
10842 2004-01-08 Andreas Schwab <schwab@suse.de>
10843
10844 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
10845 size if PSEUDOVECTOR_FLAG is set.
10846
10847 2004-01-07 Kenichi Handa <handa@m17n.org>
10848
10849 * charset.c (Fdeclare_equiv_charset): Fix docstring.
10850
10851 * fontset.c (fontset_ref_via_base): Fix previous change.
10852
10853 2004-01-07 Kim F. Storm <storm@cua.dk>
10854
10855 * process.c (read_process_output): Only activate adaptive
10856 buffering if we read less than 256 bytes at a time.
10857
10858 2004-01-06 Kim F. Storm <storm@cua.dk>
10859
10860 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
10861 object and image object. Return glyph width and height.
10862 (mode_line_string, marginal_area_string): Ditto.
10863
10864 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10865 (marginal_area_string): Fix prototypes.
10866
10867 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
10868 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
10869 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
10870
10871 * keyboard.c (make_lispy_position): Use modified mode_line_string,
10872 buffer_posn_from_coords, and marginal_area_string functions to
10873 include both string object and image object in the lispy position.
10874 Also add actual glyph width and height to position.
10875 (read_key_sequence): Use real buffer position from mouse
10876 event to find keymap property even when click is in marginal area.
10877
10878 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
10879 mode_line_string and marginal_area_string functions to handle
10880 both string object and image object properties.
10881
10882 2004-01-06 Andreas Schwab <schwab@suse.de>
10883
10884 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
10885 character.
10886
10887 2004-01-02 Andreas Schwab <schwab@suse.de>
10888
10889 * macterm.c (emacs_options, x_initialized, same_x_server):
10890 Remove unused (and duplicated) definitions.
10891
10892 2004-01-02 Kim F. Storm <storm@cua.dk>
10893
10894 * process.h (struct Lisp_Process): New members for adaptive read
10895 buffering: adaptive_read_buffering, read_output_delay, and
10896 read_output_skip.
10897
10898 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
10899 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
10900 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
10901 (process_output_delay_count, process_output_skip): New vars.
10902 (Vprocess_adaptive_read_buffering): New variable.
10903 (make_process): Initialize adaptive read buffering members.
10904 (Fstart_process): Set adaptive_read_buffering member.
10905 (deactivate_process): Cleanup adaptive read buffering.
10906 (wait_reading_process_input): Temporarily omit delayed
10907 subprocesses from the set of file descriptors to read from;
10908 adjust the select timeout if we skipped any subprocesses.
10909 (read_process_output): Increase adaptive read buffering delay if
10910 we read less than a full buffer; reduce delay when we read a
10911 full buffer.
10912 (send_process): Simplify using local Lisp_Process var.
10913 Reset adaptive read buffering delay after write.
10914 (init_process): Initialize process_output_delay_count and
10915 process_output_skip.
10916 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
10917
10918 2004-01-01 Jason Rumney <jasonr@gnu.org>
10919
10920 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
10921
10922 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
10923
10924 * print.c (Ferror_message_string): Add hyperlink in the docstring
10925 to the definition of `signal' in the Elisp manual.
10926 * eval.c (Fsignal): Ditto.
10927
10928 2003-12-29 James Clark <jjc@jclark.com>
10929
10930 * fns.c (internal_equal): Return t for two NaN arguments.
10931
10932 2003-12-29 Richard M. Stallman <rms@gnu.org>
10933
10934 * data.c (store_symval_forwarding): Handle setting
10935 default-fill-column, etc., by changing the value in
10936 buffers that use the default.
10937
10938 * minibuf.c (Fset_minibuffer_window): Doc fix.
10939
10940 * fileio.c (choose_write_coding_system): Ignore auto_saving
10941 if using the visited file for auto saves.
10942 (Fwrite_region): Don't update SAVE_MODIFF
10943 if auto-saving in visited file.
10944
10945 2003-12-29 Kenichi Handa <handa@m17n.org>
10946
10947 * dispextern.h (face_font_available_p): Extern it.
10948
10949 * fontset.c (Voverriding_fontspec_alist): New variable.
10950 (lookup_overriding_fontspec): New function.
10951 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10952 (fontset_font_pattern): Likewise.
10953 (regulalize_fontname): New function.
10954 (Fset_fontset_font): Call regulalize_fontname.
10955 (Fset_overriding_fontspec_internal): New function.
10956 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10957 Defsubr Sset_overriding_fontspec_internal.
10958
10959 * xfaces.c (face_font_available_p): New function.
10960
10961 2003-12-28 Richard M. Stallman <rms@gnu.org>
10962
10963 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10964 or if its name is nil.
10965
10966 * buffer.c (Fkill_buffer): Don't delete auto-save file
10967 if it's the same as the visited file.
10968
10969 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10970
10971 * coding.c (Fcheck_coding_system): Doc fix.
10972
10973 2003-12-28 Kim F. Storm <storm@cua.dk>
10974
10975 * Makefile.in (eval.o): Depend on dispextern.h.
10976
10977 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10978 image glyph using image's ascent.
10979 (mode_line_string): Return image glyph as object clicked on.
10980 Adjust y0 for image glyph using image's ascent.
10981
10982 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10983 (struct glyph): New members, ascent and descent. Used to save
10984 this glyph's ascent and descent, instead of having.
10985 (struct glyph): Declare member face_id using FACE_ID_BITS.
10986 (find_hot_spot): Add prototype.
10987
10988 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10989 (QCmap): Declare extern.
10990 (make_lispy_position): When position is inside image hot-spot,
10991 use hot-spot element's id as posn element.
10992
10993 * lisp.h (IMAGEP): New macro to test for image object type.
10994 (Qimage): Declare extern.
10995
10996 * macfns.c (Qimage): Remove extern (now in lisp.h).
10997 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10998
10999 * macterm.c (Qface, Qmouse_face): Remove unused externs.
11000
11001 * w32fns.c (Qimage): Remove extern (now in lisp.h).
11002 (valid_image_p, parse_image_spec): Use IMAGEP macro.
11003
11004 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
11005
11006 * w32term.c (Qface, Qmouse_face): Remove unused externs.
11007
11008 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
11009 pointer types.
11010 (Qrelative_width, Qalign_to): Remove unused variables.
11011 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
11012 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
11013 image maps.
11014 (x_y_to_hpos_vpos): Return glyph relative coordinates through
11015 new dx and dy args.
11016 Remove buffer_only_p arg (always 0). Simplify code accordingly.
11017 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
11018 than row's ascent and height, to get sensible height on tall rows.
11019 (build_desired_tool_bar_string): Remove Qimage extern.
11020 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
11021 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
11022 image glyph is alone on the last line.
11023 (append_glyph, append_composite_glyph, produce_image_glyph)
11024 (append_stretch_glyph): Set glyph's ascent and descent.
11025 (on_hot_spot_p): New function to check if position is inside an
11026 rectangular, circular, or polygon-shaped image hot-spot,
11027 (find_hot_spot): New function to search for image hot-spot.
11028 (Flookup_image_map): New defun to search for image hot-spot.
11029 (define_frame_cursor1): New aux function to determine frame pointer.
11030 (note_mode_line_or_margin_highlight, note_mouse_highlight):
11031 Handle `pointer' text property and :pointer image property to
11032 control frame pointer shape. Detect image hot-spots for pointer
11033 and help_echo properties. Use define_frame_cursor1.
11034 (note_mouse_highlight): Use Vvoid_text_area_pointer.
11035 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
11036 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
11037
11038 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
11039
11040 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
11041 (Qimage): Remove extern (now in lisp.h).
11042 (valid_image_p, parse_image_spec): Use IMAGEP macro.
11043
11044 * xmenu.c (show_help_event): Remove unused code.
11045
11046 * xterm.c (Qface, Qmouse_face): Remove unused externs.
11047 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
11048 row's ascent and descent, to get a sensible height on tall rows.
11049
11050 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
11051
11052 * minibuf.c (Fcompleting_read): Undo previous change.
11053
11054 2003-12-25 Lars Hansen <larsh@math.ku.dk>
11055
11056 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
11057 Arguments GCPRO'ed in call to file name handler.
11058
11059 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
11060
11061 * termcap.c (tgetst1): Scan for "%pN"; if all
11062 N are continuous in [1,9], remove all "%pN".
11063
11064 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11065
11066 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
11067
11068 * xfaces.c (lface_fully_specified_p): Take into account that
11069 MAC OS always have unspecified stipple.
11070
11071 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
11072
11073 * tparam.c (tparam1): Add handling for `%pN', which
11074 means use param N for the next substitution.
11075
11076 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
11077
11078 * xfaces.c (Fcolor_gray_p): Fix omission bug:
11079 In case `frame' is nil, consult the selected frame.
11080 (Fcolor_supported_p): Likewise.
11081
11082 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
11083
11084 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
11085 Doc fixes.
11086
11087 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
11088 and an integer. Adapt the introductory comment accordingly.
11089 (Fread_from_minibuffer): Delete code moved into read_minibuf.
11090 Doc fix.
11091 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
11092 read_minibuf.
11093 (Fcompleting_read): Delete code moved into read_minibuf.
11094 (Ftest_completion): Make it handle obarrays and hash tables correctly.
11095
11096 2003-12-03 Kenichi Handa <handa@m17n.org>
11097
11098 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
11099 encoding sequence.
11100
11101 2003-12-01 Kenichi Handa <handa@m17n.org>
11102
11103 * composite.c (syms_of_composite): Don't make the compostion hash
11104 table week.
11105
11106 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
11107
11108 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
11109 * textprop.c (Fget_char_property_and_overlay): New function.
11110 (syms_of_textprop): Defsubr it.
11111
11112 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11113
11114 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
11115 to compile on terminal configuration.
11116
11117 * fileio.c (Fread_file_name): Check use_file_dialog also before
11118 calling Fx_file_dialog.
11119
11120 * fns.c (use_file_dialog): New variable.
11121 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
11122
11123 2003-11-29 Kim F. Storm <storm@cua.dk>
11124
11125 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
11126 (syms_of_msdos): Don't intern and staticpro them.
11127
11128 2003-11-27 Kim F. Storm <storm@cua.dk>
11129
11130 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
11131 coordinates relative to glyph at posn. If glyph is an image,
11132 return that as object at posn. Callers changed.
11133 (mode_line_string, marginal_area_string): Calculate and return
11134 pixel coordinates relative to glyph. Callers changed.
11135
11136 * dispextern.h (buffer_posn_from_coords, mode_line_string)
11137 (marginal_area_string): Fix prototypes.
11138 (window_box_left_offset, window_box_right_offset): Add prototypes.
11139
11140 * frame.h (get_specified_cursor_type, get_window_cursor_type):
11141 Remove prototypes.
11142
11143 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
11144
11145 * keyboard.c (make_lispy_position): Add x and y coordinates
11146 relative to the current glyph as 7th element of position.
11147 If glyph is an image, return it in the object element.
11148 (read_key_sequence): Skip checks for keymap property in cases
11149 where POSN_STRING is not a string (e.g. an image).
11150
11151 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
11152 (Vshow_text_cursor_in_void): New variable.
11153 (glyph_to_pixel_coords): Don't use negative hpos.
11154 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
11155 (append_stretch_glyph): Change ascent arg to be actual value
11156 in pixels rather than ratio to height. Callers changed.
11157 (calc_pixel_width_or_height): New aux function, implementing
11158 pixel based artihmetic for glyph widths and heights.
11159 (produce_stretch_glyph): Use calc_pixel_width_or_height for
11160 :width, :height, :align-to, and :ascent, thus allowing these to
11161 be specified in pixels as well as multiples of characters.
11162 Don't produce stretch glyphs with zero width or height.
11163 (get_specified_cursor_type): Declare static.
11164 (get_window_cursor_type): Declare static. Add glyph arg to be
11165 able to know when cursor is on an image; always substitute
11166 hollow-box cursor for filled-box cursor on images, to avoid
11167 negative images and flicker when blinking the cursor.
11168 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
11169 (note_mode_line_or_margin_highlight): Use non-text cursor rather
11170 than vertical scroll-bar cursor in display margins.
11171 (note_mouse_highlight): Use non-text cursor rather than text
11172 cursor in fringes and over images in the text area.
11173 Use non-text cursor when mouse pointer is outside editable text,
11174 i.e. in the void after end-of-line or end-of-buffer; this was
11175 already done for W32, but is now standard for all systems --
11176 user can toggle show-text-cursor-in-void to get old behaviour.
11177 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
11178 Vdisplay_pixels_per_inch.
11179
11180 2003-11-25 Andreas Schwab <schwab@suse.de>
11181
11182 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
11183 EMACS_INT to not lose bits.
11184 (Ffillarray): Don't set bits beyond the size of a bool vector.
11185
11186 2003-11-25 Kim F. Storm <storm@cua.dk>
11187
11188 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
11189 define this defun on systems that cannot use stderr as lvalue.
11190
11191 2003-11-24 Gerd Moellmann <gerd@gnu.org>
11192
11193 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
11194 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
11195 ld's default is incompatible with unexec.
11196
11197 2003-11-23 Kim F. Storm <storm@cua.dk>
11198
11199 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
11200 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
11201 (Fforce_window_update): New defun.
11202 (syms_of_window): Defsubr it.
11203 (Fset_window_margins, Fset_window_fringes): Doc fix.
11204
11205 * print.c (Fredirect_debugging_output): New defun.
11206 (syms_of_print): Defsubr it.
11207
11208 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
11209
11210 * fns.c (Fset_char_table_parent): Doc fix.
11211
11212 2003-11-22 Kim F. Storm <storm@cua.dk>
11213
11214 * dispnew.c (buffer_posn_from_coords): Return actual row/column
11215 for glyph clicked on, rather than (unused) pixel positions.
11216 (mode_line_string, marginal_area_string): Change X and Y args to
11217 pointers for returning actual row/column for glyph clicked on.
11218 Simplify and optimize loops.
11219
11220 * dispextern.h (mode_line_string, marginal_area_string):
11221 Update prototypes.
11222
11223 * keyboard.c (make_lispy_position): New function for generating
11224 mouse click positions from frame and pixel coordinates.
11225 Enhanced to return buffer position and actual row/column for
11226 events outside the text area using updated mode_line_string and
11227 marginal_area_string functions.
11228 Return left-fringe and right-fringe clicks as such, rather than
11229 clicks in text area.
11230 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
11231 pixel_to_glyph_coords, as we never use the results.
11232 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
11233 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
11234 Eliminate unused code in WHEEL_EVENT handling.
11235 (make_lispy_movement): Use make_lispy_position.
11236
11237 * window.c (coordinates_in_window): Remove redundant tests.
11238 Fix returned X pixel value for left-margin.
11239
11240 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
11241 mode_line_string and marginal_area_string parameters.
11242
11243 2003-11-22 Lars Hansen <larsh@math.ku.dk>
11244
11245 * w32.c (struct the_group, getgrgid): Add.
11246 * mac.c (struct my_group, getgrgid): Add.
11247
11248 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
11249
11250 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
11251
11252 2003-11-21 Lars Hansen <larsh@math.ku.dk>
11253
11254 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
11255 include in call to file name handler. Optionally translate numeric
11256 UID and GID to strings. Update docstring.
11257 (directory_files_internal): Add parameter ID-FORMAT.
11258 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
11259 include in call to file name handler and call to
11260 directory_files_internal. Update Docstring.
11261 (Fdirectory_files): Add dummy parameter in call to
11262 directory_files_internal.
11263 * lisp.h (Qinteger): Add.
11264 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
11265 (Ffile_attributes): Add parameter.
11266 * data.c (Qinteger): Export.
11267
11268 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
11269
11270 * fns.c (Freverse, Fnreverse): Doc fixes.
11271
11272 2003-11-19 Kim F. Storm <storm@cua.dk>
11273
11274 * xdisp.c (init_iterator): Initialize it->start to position
11275 before reseating (in case start position is invisible).
11276 (init_to_row_start): Set it->start to row-start.
11277 (redisplay_window): Accept optional_new_start if start position
11278 is invisible (in which case IT_CHARPOS overshoots PT).
11279 (display_line): Setup row->start from it->start (rather than
11280 it->current which is wrong if first char on line is invisible).
11281 When done, reseat it->start to it->current (= start of next row).
11282 (expose_area): Fix exposure of text area when first char (e.g. TAB)
11283 is only partially visible.
11284
11285 * dispextern.h (struct it): New member start.
11286
11287 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
11288
11289 * alloc.c (make_float, Fcons): Clear the markbit at init time.
11290 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
11291 of block_index outside of the macro call.
11292 (Fgarbage_collect): Remove null code.
11293
11294 * m/amdx86-64.h: Don't redefine XPNTR.
11295
11296 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
11297 of VALMASK.
11298
11299 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
11300 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
11301 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
11302
11303 * lisp.h (VALMASK): Only define for non-union type.
11304 (MARKBIT): Remove.
11305 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
11306 (XTYPE): Define unconditionally.
11307 (XSETTYPE): Remove one more remnant.
11308 (EQ): Define differently for the union and non-union cases.
11309 (INTMASK): New bit mask.
11310 (struct Lisp_Marker): Move down to prepare for upcoming patch.
11311 (GC_EQ): Delegate to EQ.
11312
11313 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
11314
11315 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11316
11317 * xterm.c (x_window_to_scroll_bar): Move check of display to
11318 where window_id is compared.
11319
11320 2003-11-17 Kim F. Storm <storm@cua.dk>
11321
11322 * dispextern.h (struct it): New member first_vpos.
11323
11324 * xdisp.c (start_display): Set it->first_vpos.
11325 (try_window_id): Use first_vpos to start display in first _text_
11326 line if no reusable lines at start of window with header line.
11327
11328 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11329
11330 * w32fns.c (XPutPixel):
11331 * w32bdf.c (w32_init_bdf_font):
11332 * sunfns.c (sel_read):
11333 * process.c (Fmake_network_process):
11334 * frame.c (store_frame_param):
11335 * fontset.c (Fset_fontset_font):
11336 * emacs.c (shut_down_emacs):
11337 * ccl.c (ccl_driver): Remove period at end of error message.
11338
11339 * config.in: Regenerate.
11340
11341 * xfns.c (x_window_to_frame, x_any_window_to_frame)
11342 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
11343 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
11344 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
11345 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
11346
11347 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
11348
11349 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
11350 (XTmouse_position, handle_one_xevent): Pass Display* to
11351 x_window_to_scroll_bar.
11352 (x_window_to_scroll_bar): Take a Display* argument.
11353 Check that display for frame is equal to Display* argument.
11354 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
11355 x_display_info_for_display instead. Use Display in xev instead
11356 of GDK_DISPLAY.
11357 (x_dispatch_event): Call x_display_info_for_display.
11358 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
11359 (x_connection_closed): Call xg_display_close for GTK.
11360 (x_term_init): Call xg_display_open for additional displays.
11361 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
11362 for GTK.
11363
11364 * xmenu.c (single_menu_item, mouse_position_for_popup)
11365 (x_activate_menubar): Formatting adjustments.
11366
11367 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
11368 adjustments.
11369
11370 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
11371 (xg_display_close, xg_create_default_cursor)
11372 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
11373 handling.
11374 (xg_left_ptr_cursor): Remove.
11375 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
11376 cursor here.
11377 (xg_win_to_widget): Take Display* argument, call
11378 gdk_xid_table_lookup_for_display.
11379 (xg_create_frame_widgets, xg_get_file_name, create_menus)
11380 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
11381 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
11382 in FRAME_X_DISPLAY_INFO.
11383 (xg_get_scroll_id_for_window): Take Display* argument.
11384 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
11385 (xg_initialize): Remove xg_left_ptr_cursor.
11386
11387 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
11388 Display* argument.
11389 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
11390
11391 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11392
11393 * xterm.c (x_detect_focus_change): Do not change focus frame for
11394 Enter/LeaveNotify if the current focus frame has explicit focus.
11395
11396 2003-11-14 Kim F. Storm <storm@cua.dk>
11397
11398 * dispnew.c (update_text_area): Fix redisplay error when hscroll
11399 is active and first glyph is only partially visible.
11400
11401 2003-11-13 Kenichi Handa <handa@m17n.org>
11402
11403 * xdisp.c (select_frame_for_redisplay): New function.
11404 (redisplay_internal): Record also selected_frame for
11405 unwind_redisplay. Call select_frame_for_redisplay before
11406 redrawing each frame.
11407 (unwind_redisplay): Argument changed to a cons.
11408
11409 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
11410
11411 * fns.c (Fstring_to_multibyte): Doc fix.
11412
11413 2003-11-11 Kenichi Handa <handa@m17n.org>
11414
11415 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
11416
11417 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11418
11419 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
11420 program specified positions.
11421
11422 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11423
11424 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
11425
11426 2003-11-08 Kenichi Handa <handa@m17n.org>
11427
11428 * Makefile.in (lisp): Add kannada.el.
11429 (shortlisp): Likewise.
11430
11431 2003-11-07 Kenichi Handa <handa@m17n.org>
11432
11433 * coding.c (coding_allocate_composition_data):
11434 Reset coding->composing to COMPOSITION_NO.
11435 (coding_restore_composition): Detect invalid composition data.
11436 Give Fstring and Fvector a Lispy integer, not C int.
11437
11438 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
11439
11440 * floatfns.c (Flogb): Don't use VALMASK.
11441
11442 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
11443 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
11444
11445 * lisp.h (XINT): Move the cast to clarify what is going on.
11446 (GCTYPEMASK, XSETTYPE): Remove.
11447 (XGCTYPE): Make it an alias of XTYPE.
11448
11449 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11450
11451 * xterm.c (x_term_init): Fix formatting.
11452
11453 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11454
11455 * gtkutil.h (xg_have_tear_offs): Declare.
11456 (xg_keep_popup, xg_did_tearoff): Remove.
11457
11458 * gtkutil.c: Remove variable xg_did_tearoff.
11459 (xg_have_tear_offs): New function.
11460 (tearoff_remove): Just decrease xg_detached_menus.
11461 (tearoff_activate): Increase xg_detached_menus and call
11462 tearoff_remove when tearoff is removed.
11463 (xg_keep_popup): Remove function.
11464 (create_menus): Give add_tearoff_p as argument to recursive
11465 call to create_menus.
11466 (xg_create_widget): Use variables instead of multiple
11467 strcmp. Tell create_menus to create tear off only for
11468 menu bar menus.
11469 (xg_update_menubar): Change title for a detached menu also.
11470 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
11471 of deep_p.
11472 (xg_initialize): Initialize xg_detached_menus, remove
11473 initialization of xg_did_tearoff.
11474
11475 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
11476 xg_have_tear_offs returns non-zero.
11477 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
11478 call to xg_keep_popup.
11479
11480 2003-11-01 Andrew Choi <akochoi@shaw.ca>
11481
11482 * macterm.c (XTread_socket): Handle menubar selection and grow
11483 window only for mouseDown events.
11484
11485 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11486
11487 * xterm.c (x_term_init): For GTK part, increase x_initialized
11488 to check for more than one display. Use error instead of return 0.
11489
11490 2003-10-31 Andrew Choi <akochoi@shaw.ca>
11491
11492 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
11493 (copy_dysymtab): Call it.
11494
11495 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
11496
11497 * eval.c (Fdefvaralias): Doc fix.
11498
11499 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
11500
11501 * data.c (Fsetplist): Doc fix.
11502
11503 2003-10-14 Lute Kamstra <lute@gnu.org>
11504
11505 * window.c (Fset_window_fringes): Clarify docstring.
11506
11507 2003-10-14 Kim F. Storm <storm@cua.dk>
11508
11509 * window.c (Fset_window_margins): Simplify arg checking.
11510
11511 2003-10-13 Richard M. Stallman <rms@gnu.org>
11512
11513 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
11514 (print_partial_compiled_pattern): Replace assert with a printout.
11515 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
11516
11517 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
11518
11519 * window.c (Fset_window_margins): Allow only integers as args.
11520 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
11521 Doc fixes.
11522
11523 2003-10-13 Lute Kamstra <lute@gnu.org>
11524
11525 * window.c (Fset_window_fringes): Elaborate docstring.
11526
11527 2003-10-12 Andrew Choi <akochoi@shaw.ca>
11528
11529 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
11530
11531 * s/darwin.h (GC_MARK_STACK): Define.
11532
11533 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11534
11535 * window.c (shrink_windows): New function.
11536 (size_window): Call shrink_windows to calculate window sizes when
11537 shrinking frame with more than one window.
11538
11539 2003-10-12 Kim F. Storm <storm@cua.dk>
11540
11541 * xdisp.c (compute_fringe_widths): Doc fix.
11542
11543 2003-10-08 Kenichi Handa <handa@m17n.org>
11544
11545 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
11546
11547 2003-10-07 Kenichi Handa <handa@m17n.org>
11548
11549 * coding.c (Qcoding_system_define_form): New variable.
11550 (syms_of_coding): Intern and staticpro it.
11551 (Fcheck_coding_system): Try to autoload the definition of
11552 CODING-SYSTEM.
11553
11554 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
11555
11556 * fns.c (Frequire): Doc fix.
11557
11558 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11559
11560 * xfns.c (Fx_send_client_event): New function as a base for
11561 manipulating extended window manager hints.
11562 (Fx_send_client_event): Remove unused variable s.
11563
11564 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
11565 that function is removed.
11566
11567 * xterm.c (x_set_offset): Use move_offset_left/top instead of
11568 x/y_pixels_outer_diff.
11569 (x_check_expected_move): Calculate move_offset_left/top.
11570
11571 * xterm.h (struct x_output): New members: move_offset_top/left.
11572
11573 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
11574 call x_set_offset directly.
11575
11576 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
11577
11578 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
11579
11580 * xterm.c (x_delete_display): Free font names and font_encoder
11581 in dpyinfo->font_table.
11582
11583 * xfns.c (Fx_close_connection): Only call XFreeFont here.
11584 Move xfree of font names to x_delete_display.
11585
11586 * xterm.h (struct x_display_info): New member, wm_type.
11587 (struct x_output): New members, expected_top/left and
11588 check_expected_move.
11589
11590 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
11591 is received.
11592 (handle_one_xevent): Rename x_check_expected_move from
11593 x_check_fullscreen_move.
11594 (x_set_offset): Only add WM decoration sizes to modified_top/left
11595 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
11596 (x_check_expected_move): Rename from x_check_fullscreen_move.
11597 Removed fullscreen specific code. Use check_expected_move,
11598 expected_left/top instead. Also, set wm_type.
11599 (x_term_init): Initialize wm_type to unknown.
11600
11601 * frame.c (x_fullscreen_move): Remove addition of WM decoration
11602 sizes to move_x/y.
11603
11604 2003-10-03 Kenichi Handa <handa@m17n.org>
11605
11606 * macterm.c (x_load_font): Clear all members of FONTP before start
11607 filling them.
11608
11609 2003-10-02 Kenichi Handa <handa@m17n.org>
11610
11611 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
11612 before calling find_ccl_program_func. Call find_ccl_program_func
11613 only when fontp->font_encoder is not NULL.
11614
11615 * xterm.c (x_load_font): Clear all members of FONTP before start
11616 filling them.
11617
11618 2003-10-03 John Paul Wallington <jpw@gnu.org>
11619
11620 * keymap.c (map_keymap): Don't abort when binding is a vector.
11621
11622 2003-10-02 Jason Rumney <jasonr@gnu.org>
11623
11624 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
11625 Sync dependencies with Makefile.in.
11626 (alloca.o): Remove.
11627
11628 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
11629 filling them.
11630
11631 * w32bdf.c (w32_load_bdf_font): Likewise.
11632
11633 2003-09-30 Richard M. Stallman <rms@gnu.org>
11634
11635 * term.c (set_tty_color_mode): Calculate current_mode_spec
11636 regardless of value of VAL.
11637
11638 * intervals.c (graft_intervals_into_buffer):
11639 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
11640 Handle over_used when splitting UNDER.
11641
11642 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11643
11644 * regex.c (regex_compile): Free the stack when returning from function.
11645
11646 2003-09-28 Kenichi Handa <handa@m17n.org>
11647
11648 * fontset.c (Finternal_char_font): Change return value to
11649 cons (FONT-NAME . GLYPH-CODE).
11650
11651 2003-09-28 Eli Zaretskii <eliz@gnu.org>
11652
11653 * term.c (tty_setup_colors): Treat any negative argument as -1.
11654
11655 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
11656
11657 * process.c (send_process): Delete unused temp_buf.
11658
11659 2003-09-26 Dave Love <fx@gnu.org>
11660
11661 * xterm.c (x_bitmap_mask): Declare.
11662
11663 2003-09-25 Dave Love <fx@gnu.org>
11664
11665 * Makefile.in (fns.o): Depend on md5.h.
11666
11667 2003-09-25 Kim F. Storm <storm@cua.dk>
11668
11669 * window.c (set_window_buffer): Fix redisplay problems when
11670 switching between buffers with different display margin widths.
11671
11672 2003-09-23 Kim F. Storm <storm@cua.dk>
11673
11674 * process.c (set_socket_option): Fix :bindtodevice option.
11675 (Fset_network_process_option): Update process contact list when
11676 setting option succeeds.
11677 (Fmake_network_process): Doc fix.
11678
11679 2003-09-23 Dave Love <fx@gnu.org>
11680
11681 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
11682
11683 2003-09-22 Eli Zaretskii <eliz@gnu.org>
11684
11685 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
11686 color mode is an integer number (it could be -1).
11687
11688 2003-09-22 Richard M. Stallman <rms@gnu.org>
11689
11690 * intervals.c (graft_intervals_into_buffer): Correct the main loop
11691 in the case where OVER is longer than UNDER.
11692
11693 2003-09-22 Masatake YAMATO <jet@gyve.org>
11694
11695 * window.c (Fset_window_scroll_bars): Validate the value of
11696 `vertical_type'.
11697
11698 2003-09-21 Kim F. Storm <storm@cua.dk>
11699
11700 * frame.c (Vdefault_frame_scroll_bars): New variable.
11701 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
11702 (syms_of_frame): DEFVAR_LISP it, and initialize according to
11703 window-system default scroll bar position.
11704
11705 * window.c (Fwindow_scroll_bars): Doc fix.
11706
11707 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11708
11709 * xterm.c (x_set_offset): Take window manager decorations into account.
11710
11711 2003-09-19 Richard M. Stallman <rms@gnu.org>
11712
11713 * atimer.h: Don't include lisp.h.
11714 (P_): Define it here (as well as elsewhere).
11715
11716 * print.c (Fprin1_to_string): Move the PRINTPREPARE
11717 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
11718
11719 * data.c (Fvariable_binding_locus): New function.
11720 (syms_of_data): defsubr it.
11721 (Flocal_variable_p): Delete duplicate call to indirect_variable.
11722
11723 2003-09-18 Dave Love <fx@gnu.org>
11724
11725 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
11726
11727 * process.c (Fnetwork_interface_info): Fix type error.
11728 (Fnetwork_interface_list): Doc fix.
11729 (read_process_output, read_process_output): Delete unused var.
11730
11731 2003-09-17 Kim F. Storm <storm@cua.dk>
11732
11733 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
11734 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
11735 (Fnetwork_interface_info): Check that ifreq struct has required
11736 fields before accessing them; this requires that those fields are
11737 defined as macros, which may be too restrictive on some platforms,
11738 but it is better than failing on other platforms.
11739 (syms_of_process): Only defsubr above fns when included.
11740
11741 2003-09-17 Dave Love <fx@gnu.org>
11742
11743 * unexalpha.c: Don't include varargs.h.
11744
11745 2003-09-17 Kim F. Storm <storm@cua.dk>
11746
11747 * process.c (Fset_process_sentinel): Add sentinel to childp plist
11748 for network process.
11749 (socket_options): Add `:' prefix to option names. Add optbit field.
11750 (set_socket_option): Remove no_error arg and special handling of s < 0.
11751 Return 1<<optbit for known option, 0 for unknown.
11752 Do not interpret 0 as false for boolean option (only nil).
11753 Pass failed option and value to report_file_error.
11754 (Fset_network_process_options): Replace by Fset_network_process_option.
11755 (Fset_network_process_option): New function to set just one option.
11756 (Fmake_network_process): Allow :coding arg to be a cons.
11757 Allow :server arg to be an integer specifying backlog size.
11758 Remove :options arg, and allow options to be specified directly
11759 as :KEY, VALUE pairs. Parse these options before binding socket.
11760 As before, :reuseaddr t is default for a server process, but this
11761 can now be disabled by specifying :reuseaddr nil.
11762 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
11763 (init_process): Availability of network options is now checked with
11764 simpler syntax (featurep 'make-network-process :OPTION); use loop to
11765 setup features.
11766 (syms_of_process): Fix defsubr's for the replaced functions.
11767
11768 2003-09-16 Dave Love <fx@gnu.org>
11769
11770 * Makefile.in: Depend on coding.h.
11771
11772 2003-09-14 Kim F. Storm <storm@cua.dk>
11773
11774 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
11775 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
11776 (syms_of_process): Defsubr them.
11777
11778 * config.in: Regenerate.
11779
11780 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
11781
11782 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
11783 * m/news-r6.h (XUNMARK): Remove.
11784 * m/mips.h (XUNMARK): Remove.
11785 * m/mips-siemens.h (XUNMARK): Remove.
11786 * m/iris4d.h (XUNMARK): Remove.
11787 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
11788
11789 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
11790
11791 * lisp.h (VALBITS): Don't remove 1 for the markbit.
11792 (union Lisp_Object): Use unsigned int for types. Remove markbit.
11793 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
11794 (XTYPE): Use unsigned right-shift.
11795 (XMARKBIT, XMARK, XUNMARK): Remove.
11796
11797 * alloc.c (init_intervals, init_symbol, init_marker):
11798 Don't preallocate anything.
11799 (Fgarbage_collect, mark_object): Ignore the markbit.
11800
11801 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
11802
11803 2003-09-08 Lute Kamstra <lute@gnu.org>
11804
11805 * xdisp.c (pint2hrstr): New function.
11806 (decode_mode_spec): Add `%i' and `%I' specs.
11807 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
11808 for `mode-line-format'.
11809
11810 2003-09-07 Andreas Schwab <schwab@suse.de>
11811
11812 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
11813 avoid warning.
11814
11815 2003-09-07 Eli Zaretskii <eliz@gnu.org>
11816
11817 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
11818
11819 2003-09-03 Kim F. Storm <storm@cua.dk>
11820
11821 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
11822 change (superseded by 2002-08-30 change); the default blink-off
11823 cursor is now again "no cursor".
11824
11825 2003-09-01 Jason Rumney <jasonr@gnu.org>
11826
11827 * makefile.w32-in (alloca.o): Remove.
11828 (coding.o): Depend on intervals.h
11829 (emacs.o, bytecode.o): Depend on window.h
11830
11831 2003-09-01 Dave Love <fx@gnu.org>
11832
11833 * Makefile.in (alloca.o): Remove commands.
11834 (coding.o): Depend on intervals.h composite.h window.h.
11835 (emacs.o): Depend on window.h keyboard.h keymap.h.
11836 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
11837 (bytecode.o): Depend on window.h.
11838
11839 2003-08-31 Jason Rumney <jasonr@gnu.org>
11840
11841 * w32term.c (w32_per_char_metric): Allow cached metrics to be
11842 returned even when font_type is unknown.
11843
11844 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
11845
11846 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11847
11848 * xterm.c (x_term_init): Initialize new fields in x_display_info.
11849
11850 * xterm.h (struct x_display_info): Add red/green/blue_bits and
11851 *_offset.
11852
11853 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
11854 calculate pixel value.
11855
11856 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
11857
11858 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
11859 Don't tell redisplay display is accurate when it's actually been
11860 paused for pending input.
11861
11862 2003-08-29 Richard M. Stallman <rms@gnu.org>
11863
11864 * dispnew.c (adjust_glyph_matrix): Call window_box
11865 whenever W is nonzero.
11866
11867 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11868 (Fkill_local_variable, Fmake_variable_frame_local)
11869 (Flocal_variable_p, Flocal_variable_if_set_p):
11870 Use indirect_variable to trace thru variable aliases.
11871
11872 * config.in: Updated.
11873
11874 * callint.c (Fcall_interactively): Save and restore
11875 Vthis_command, Vthis_original_command, real_this_command,
11876 and current_kboard->Vlast_command.
11877
11878 * abbrev.c (Fexpand_abbrev): Insert before deleting.
11879
11880 2003-08-29 Gerd Moellmann <gerd@gnu.org>
11881
11882 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
11883
11884 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
11885
11886 * coding.c (decode_coding_iso2022): Initialize local variable c2.
11887 (decode_coding_sjis_big5): Likewise.
11888
11889 2003-08-27 Jason Rumney <jasonr@gnu.org>
11890
11891 * w32.c (sys_pipe): Protect against file descriptor overflow.
11892
11893 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
11894
11895 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
11896
11897 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
11898
11899 * xfns.c (Vgtk_version_string): New variable.
11900 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
11901
11902 2003-08-24 Eli Zaretskii <eliz@gnu.org>
11903
11904 * term.c (term_init): Remove `const' from buffer_size's declaration.
11905
11906 * Makefile.in (msdos.o): Depend on intervals.h.
11907
11908 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
11909
11910 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11911
11912 * xterm.h (struct x_display_info): New fields: client_leader_window
11913 and Xatom_wm_client_leader.
11914
11915 * xterm.c (x_initialize): Move call to x_session_initialize to ...
11916 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
11917
11918 * xsmfns.c (create_client_leader_window): New function.
11919 (x_session_initialize): Call create_client_leader_window, take
11920 dpyinfo as argument.
11921
11922 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
11923
11924 * Makefile.in (xsmfns.o): Add more depenedencies.
11925
11926 2003-08-21 Dave Love <fx@gnu.org>
11927
11928 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
11929
11930 2003-08-21 Kenichi Handa <handa@m17n.org>
11931
11932 * term.c (term_init): Fix previous change; don't rely on the
11933 length of `buffer' if TERMINFO is defined.
11934
11935 2003-08-20 Dave Love <fx@gnu.org>
11936
11937 * atimer.h: Include lisp.h.
11938
11939 * lisp.h (EMACS_LISP_H): New.
11940 (popup_activated_flag): Don't declare.
11941
11942 * alloca.c: Some merging with gnulib. Change logic and doc
11943 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11944 [DO_BLOCK_INPUT]: Don't include lisp.h.
11945 (xmalloc, xfree): Declare.
11946 (malloc): Don't declare.
11947
11948 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11949 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11950 atimer.h, blockinput.h.
11951
11952 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11953
11954 * alloca.s: Remove.
11955
11956 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11957
11958 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11959 use -lncurses.
11960
11961 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11962 FreeBSD returns something longer than 2044. Abort if the end of
11963 the buffer is overwritten.
11964
11965 2003-08-19 Miles Bader <miles@gnu.org>
11966
11967 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11968
11969 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11970
11971 * alloc.c (lisp_align_malloc): Check for memory full when
11972 allocating ablocks, which also avoids freeing a pointer into an
11973 ablocks structure.
11974
11975 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11976
11977 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11978
11979 2003-08-16 Richard M. Stallman <rms@gnu.org>
11980
11981 * editfns.c (Fencode_time): Doc fix.
11982
11983 2003-08-16 David Ponce <david@dponce.com>
11984
11985 * fileio.c (Fwrite_region): Fix conditional expression to issue
11986 the right message.
11987
11988 2003-08-16 Juri Linkov <juri@jurta.org>
11989
11990 * syntax.c (Fforward_word): Argument changed to optional.
11991 Set default value to 1.
11992
11993 2003-08-15 Kenichi Handa <handa@m17n.org>
11994
11995 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11996 what autoscaled.
11997 (best_matching_font): Once we find a better scalable font, set
11998 non_scalable_has_exact_height_p to 1.
11999 (try_font_list): Call try_alternative_families to try any family
12000 with the given registry.
12001
12002 2003-08-09 Andreas Schwab <schwab@suse.de>
12003
12004 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
12005
12006 * print.c (print_string): Fix printing of multibyte string with
12007 nontrivial printcharfun.
12008
12009 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12010
12011 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
12012
12013 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
12014
12015 2003-07-31 Kenichi Handa <handa@m17n.org>
12016
12017 * process.c (read_process_output): Return the actually read bytes
12018 instead of the result of decoding.
12019
12020 2003-07-31 Kenichi Handa <handa@m17n.org>
12021
12022 * xterm.h (struct x_bitmap_record): New member have_mask.
12023
12024 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
12025 to 0.
12026 (x_create_bitmap_from_file): Likewise.
12027 (x_destroy_bitmap): Check have_mask member before freeing a mask.
12028 (x_destroy_all_bitmaps): Likewise.
12029 (x_create_bitmap_mask): Set have_mask member to 1.
12030
12031 2003-07-30 Richard M. Stallman <rms@gnu.org>
12032
12033 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
12034
12035 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12036
12037 * gtkutil.c (xg_mark_data): Update calls to mark_object.
12038
12039 2003-07-29 Richard M. Stallman <rms@gnu.org>
12040
12041 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
12042 Conditionalize XIM code on HAVE_XIM.
12043
12044 * fns.c (Fclear_string): New function.
12045 (syms_of_fns): defsubr it.
12046
12047 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
12048
12049 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
12050
12051 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
12052
12053 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
12054
12055 * buffer.c (delete_all_overlays): New function.
12056 * buffer.h (delete_all_overlays): Declare.
12057 * coding.c (run_pre_post_conversion_on_str):
12058 * print.c (temp_output_buffer_setup):
12059 * fileio.c (Finsert_file_contents):
12060 * minibuf.c (get_minibuffer): Use it.
12061
12062 2003-07-22 Andrew Choi <akochoi@shaw.ca>
12063
12064 * unexmacosx.c (unexec_regions_sort_compare):
12065 (unexec_regions_merge): New functions. Sort and merge unexec
12066 regions before dumping them.
12067
12068 2003-07-22 Dave Love <fx@gnu.org>
12069
12070 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
12071
12072 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
12073
12074 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
12075 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
12076 MARKBIT as the gcmarkbit for strings.
12077
12078 2003-07-21 Richard M. Stallman <rms@gnu.org>
12079
12080 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
12081
12082 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
12083 (syms_of_fns): Corresponding change.
12084
12085 * alloc.c (syms_of_alloc): Doc fixes.
12086
12087 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
12088
12089 * s/netbsd.h: Use -Wl syntax.
12090
12091 2003-07-17 Richard M. Stallman <rms@gnu.org>
12092
12093 * xterm.c (xim_initialize): Redo 6/24 change.
12094
12095 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
12096
12097 * buffer.c (copy_overlays): Use EMACS_INT for positions.
12098 (Fswitch_to_buffer): Don't signal an error when switching to the same
12099 buffer in a dedicated window.
12100
12101 * alloc.c: Use bitmaps for cons, as was done for floats.
12102 (init_float, init_cons): Let the normal code allocate the first block.
12103 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
12104 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
12105 New macros.
12106 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
12107 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
12108 (live_cons_p): Check the pointer is not past the `conses' array.
12109 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
12110 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
12111 (survives_gc_p): Use CONS_MARKED_P and simplify.
12112 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
12113
12114 2003-07-13 Paul Eggert <eggert@twinsun.com>
12115
12116 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
12117 puts it into BSS instead, at least on Solaris 8 and 9.
12118 This is a valid optimization, and it may occur on other platforms,
12119 so Emacs should not assume that initializing a static variable to
12120 zero puts it into data.
12121 * alloc.c (pure, staticvec):
12122 Initialize these arrays to nonzero, so that they're not
12123 put into BSS by that optimization.
12124
12125 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
12126
12127 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
12128 (lisp_align_malloc): Use posix_memalign is available.
12129 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
12130 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
12131 for consistency. Update users.
12132
12133 2003-07-13 Richard M. Stallman <rms@gnu.org>
12134
12135 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
12136
12137 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
12138
12139 * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask,
12140 and use the Gtk+ function gtk_window_icon_from_file if available.
12141
12142 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
12143 handle mask of bitmaps.
12144 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
12145 mask property.
12146 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
12147
12148 * xterm.h (xg_set_icon): New function.
12149
12150 2003-07-12 Paul Eggert <eggert@twinsun.com>
12151
12152 * unexelf.c (unexec): Consider a section to precede the .bss
12153 section if its addresses overlap that of .bss.
12154
12155 2003-07-12 Richard M. Stallman <rms@gnu.org>
12156
12157 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
12158
12159 * config.in (HAVE_CRTIN): Add #undef.
12160 (INLINE): Really inline only if OPTIMIZE is defined.
12161
12162 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
12163 END_FILES_1.
12164 (START_FILES_1, END_FILES_1): New macros (conditional).
12165 (LD_SWITCH_SYSTEM_TEMACS): Define.
12166
12167 * s/openbsd.h: Don't include bsd4-3.h.
12168 (TERMINFO): Define.
12169 (LIBS_TERMCAP): Define.
12170 (LD_SWITCH_SYSTEM): Define (two definitions).
12171
12172 * xfns.c: Include libpng/png.h instead of png.h.
12173
12174 2003-07-11 Andreas Schwab <schwab@suse.de>
12175
12176 * buffer.c (modify_overlay): Update prototype.
12177 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
12178 Likewise.
12179
12180 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
12181
12182 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
12183 (struct interval): Move to intervals.h.
12184 (struct Lisp_Marker): Use EMACS_INT for position info.
12185 (forward_point): Remove prototype of defunct function.
12186 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
12187 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
12188 (syms_of_textprop, set_text_properties): Remove prototypes that are
12189 already in intervals.h.
12190
12191 * intervals.h (struct interval): Move from lisp.h.
12192 Use EMACS_INT for position and size info.
12193
12194 * coding.c: Include intervals.h for Fset_text_properties.
12195
12196 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
12197 position and length information.
12198
12199 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
12200
12201 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
12202 position and length information.
12203
12204 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
12205
12206 Change overlays_after and overlays_before so the overlays themselves
12207 are linked into lists, rather than using cons cells. After all each
12208 Lisp_Misc already occupies 5 words, so we can add a `next' field to
12209 Lisp_Overlay for free and save up one cons cell per overlay (not
12210 to mention one indirection when traversing the list of overlay).
12211
12212 * lisp.h (struct Lisp_Overlay): New field `next'.
12213
12214 * buffer.h (struct buffer): Change overlays_before and overlays_after
12215 from Lisp lists of overlays to pointers to overlays.
12216
12217 * buffer.c (overlay_strings, recenter_overlay_lists):
12218 Fix typo in eassert in last commit.
12219 (unchain_overlay): New function.
12220 (add_overlay_mod_hooklist): Use AREF.
12221 (copy_overlays, reset_buffer, overlays_at, overlays_in)
12222 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
12223 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
12224 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
12225 (report_overlay_modification, evaporate_overlays, init_buffer_once):
12226 Adjust to new type of overlays_(before|after).
12227
12228 * alloc.c (mark_object): Mark the new `next' field of overlays.
12229 (mark_buffer): Manually mark the overlays_(after|before) fields.
12230
12231 * coding.c (run_pre_post_conversion_on_str):
12232 * editfns.c (overlays_around):
12233 * xdisp.c (load_overlay_strings):
12234 * fileio.c (Finsert_file_contents):
12235 * indent.c (current_column):
12236 * insdel.c (signal_before_change, signal_after_change):
12237 * intervals.c (set_point_both):
12238 * print.c (temp_output_buffer_setup): Use new type for
12239 overlays_(before|after).
12240
12241 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
12242
12243 * buffer.c (report_overlay_modification): Don't run hooks while
12244 traversing the list of overlays.
12245
12246 * buffer.h (struct buffer): Use an int for overlay_center.
12247 (overlays_at, evaporate_overlays, recenter_overlay_lists)
12248 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
12249
12250 * buffer.c (reset_buffer, recenter_overlay_lists)
12251 (adjust_overlays_for_insert, adjust_overlays_for_delete)
12252 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
12253 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
12254 (overlays_at, evaporate_overlays, recenter_overlay_lists)
12255 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
12256
12257 * xdisp.c (fast_find_position): Remove unused var.
12258
12259 * cmds.c (Qexpand_abbrev): New sym.
12260 (syms_of_cmds): Initialize it.
12261 (internal_self_insert): Use it to call expand-abbrev.
12262
12263 2003-07-09 Kim F. Storm <storm@cua.dk>
12264
12265 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
12266 was configured with --without-xim.
12267 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
12268
12269 2003-07-07 Richard M. Stallman <rms@gnu.org>
12270
12271 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
12272
12273 * alloc.c (Fgarbage_collect): Doc fix.
12274
12275 2003-07-07 Nozomu Ando <nand@mac.com>
12276
12277 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
12278
12279 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
12280
12281 * minibuf.c (read_minibuf): UNGCPRO before returning.
12282 (Ftry_completion, Fall_completions): Doc fix.
12283
12284 * alloc.c (live_float_p): Check that p is not past the `floats' array,
12285 now that `floats' is not the last element of the struct any more.
12286
12287 2003-07-06 Jason Rumney <jasonr@gnu.org>
12288
12289 * w32term.h (ClipboardSequence_Proc): New type.
12290
12291 * w32fns.c (clipboard_sequence_fn): New variable.
12292 (globals_of_w32fns): Initialize it.
12293
12294 * w32select.c (last_clipboard_sequence_number): New variable.
12295 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
12296 number if possible.
12297
12298 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
12299
12300 * m/amdx86-64.h (MARKBIT):
12301 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
12302 MARKBIT and ARRAY_MARK_FLAG any more.
12303
12304 * m/hp800.h (XSETMARKBIT):
12305 * m/sr2k.h (XSETMARKBIT):
12306 * lisp.h (XSETMARKBIT): Remove unused macro.
12307
12308 * lisp.h (mark_object): Change prototype.
12309
12310 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
12311 (last_marked): Change accordingly.
12312 (mark_interval, mark_maybe_object, mark_maybe_pointer)
12313 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
12314 (mark_buffer): Update calls to mark_object.
12315
12316 * bytecode.c (mark_byte_stack):
12317 * fns.c (sweep_weak_table):
12318 * keyboard.c (mark_kboards): Update calls to mark_object.
12319
12320 2003-07-06 Jason Rumney <jasonr@gnu.org>
12321
12322 * alloc.c (struct ablock): Only include padding when there is some.
12323
12324 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
12325
12326 * alloc.c (ALIGN): Add casts to simplify usage.
12327 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
12328 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
12329 (struct ablock, struct ablocks): New types.
12330 (free_ablock): New global var.
12331 (lisp_align_malloc, lisp_align_free): New functions.
12332 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
12333 (struct float_block): Reorder and add gcmarkbits.
12334 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
12335 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
12336 (init_float, make_float): Use lisp_align_malloc.
12337 (free_float, live_float_p): Don't use `type' any more.
12338 (make_float): Use FLOAT_UNMARK to access to mark bit.
12339 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
12340 Use FLOAT_MARKED_P to access the mark bit.
12341 (pure_alloc): Simplify use of ALIGN.
12342 (mark_object): Use FLOAT_MARK to access the mark bit.
12343 (gc_sweep): Use new macros to access the float's mark bit.
12344 (init_alloc_once): Init free_ablock.
12345
12346 * lisp.h (struct Lisp_Float): Remove unused field `type'.
12347
12348 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
12349
12350 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
12351 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
12352 (allocate_buffer): Move.
12353 (string_bytes): Don't mask markbit of `size_byte'.
12354 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
12355 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
12356 Use the `size' field of buffers (rather than the `name' field) for
12357 the mark bit, as is done for all other vectorlike objects.
12358 Use the new macros to access the mark bit of vectorlike objects.
12359
12360 2003-06-26 Richard M. Stallman <rms@gnu.org>
12361
12362 * puresize.h (BASE_PURESIZE): Increment base size.
12363
12364 * xdisp.c (fast_find_position): Enable Gerd's new definition.
12365
12366 * xterm.c (xim_initialize): Undo previous change.
12367
12368 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
12369
12370 * alloc.c (survives_gc_p): Simplify.
12371
12372 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
12373
12374 * window.c (Fset_window_dedicated_p): Simplify.
12375 (display_buffer_1): Don't raise the win from which minibuf was entered.
12376 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
12377 (Fminibuffer_selected_window): Simplify.
12378
12379 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
12380
12381 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
12382 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
12383
12384 * insdel.c (check_markers, adjust_markers_for_delete)
12385 (adjust_markers_for_insert, adjust_markers_for_replace)
12386 (prepare_to_modify_buffer, RESTORE_VALUE):
12387 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
12388 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
12389 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
12390 * alloc.c (Fmake_marker, free_marker, gc_sweep):
12391 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
12392 * editfns.c (save_excursion_restore, transpose_markers):
12393 * window.c (delete_window):
12394 * xdisp.c (message_dolog): Update for new types.
12395
12396 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12397
12398 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
12399 (realize_default_face): Use default_face_done_p for the force_p
12400 argument to set_lface_from_font_name. Set default_face_done_p to one.
12401
12402 * frame.c (make_frame): Initialize default_face_done_p.
12403
12404 * frame.h (struct frame): Add default_face_done_p.
12405
12406 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
12407 will be defined.
12408
12409 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
12410
12411 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
12412 Initialize the new field `gcmarkbit'.
12413 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
12414 (mark_interval_tree): Don't mark the tree separately from the nodes.
12415 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
12416 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
12417 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
12418
12419 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
12420 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
12421 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
12422 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
12423 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
12424
12425 2003-06-24 Dave Love <fx@gnu.org>
12426
12427 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
12428
12429 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
12430 from gnulib.
12431
12432 2003-06-21 Richard M. Stallman <rms@gnu.org>
12433
12434 * fileio.c (Fwrite_region): Alternate messages
12435 for append and partial write.
12436
12437 * keyboard.c (read_key_sequence): When converting upcase fn key to
12438 downcase, update fkey and keytran so `backspace' gets translated.
12439
12440 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
12441
12442 * process.c (wait_reading_process_input): Don't signal SIGIO
12443 in batch mode.
12444
12445 2003-06-17 Kenichi Handa <handa@m17n.org>
12446
12447 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
12448 composite.h.
12449
12450 * xselect.c: Don't include charset.h, coding.h, composite.h.
12451 (Qforeign_selection): New variable.
12452 (syms_of_xselect): Intern and static it.
12453 (selection_data_to_lisp_data): Return a unibyte string made from
12454 data with `foreign-selection' text property.
12455
12456 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
12457
12458 * termhooks.h (EVENT_INIT): New macro.
12459
12460 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
12461
12462 * alloc.c (mark_kboards): Move to keyboard.c.
12463
12464 * keyboard.c (record_asynch_buffer_change, read_avail_input):
12465 * xterm.c (x_dispatch_event):
12466 * xmenu.c (find_and_call_menu_selection):
12467 * xdisp.c (handle_tool_bar_click):
12468 * w32menu.c (menubar_selection_callback):
12469 * sysdep.c (kbd_input_ast, read_input_waiting):
12470 * msdos.c (dos_rawgetc):
12471 * macterm.c (mac_check_for_quit_char):
12472 * macmenu.c (menubar_selection_callback):
12473 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
12474 data to kbd_buffer_store_event.
12475
12476 2003-06-15 Kim F. Storm <storm@cua.dk>
12477
12478 * xdisp.c (x_fix_overlapping_area): Always use area relative X
12479 to fix redisplay problem with tall characters (such as \e,AC\e(B).
12480
12481 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12482
12483 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
12484
12485 2003-06-12 Kenichi Handa <handa@m17n.org>
12486
12487 * fileio.c (Fwrite_region): Save and restore restriction.
12488
12489 2003-06-12 Dave Love <fx@gnu.org>
12490
12491 * alloca.c (alloca): Declare arg as size_t.
12492
12493 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
12494 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
12495
12496 2003-06-11 Dave Love <fx@gnu.org>
12497
12498 * search.c (shrink_regexp_cache): Use xrealloc.
12499 (syms_of_search): Use xmalloc.
12500
12501 2003-06-10 Kim F. Storm <storm@cua.dk>
12502
12503 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
12504 Adjust phys_cursor.x to be relative to window box, rather than
12505 text area before checking -- to ensure cursor is redrawn when
12506 exposing window.
12507 Note: This also fixes a similar (older) bug if display margins
12508 are present.
12509
12510 2003-06-06 Kenichi Handa <handa@m17n.org>
12511
12512 * coding.c (encoding_buffer_size): If coding->type is
12513 coding_type_ccl, double magnification on CRLF encoding.
12514
12515 2003-06-06 Jason Rumney <jasonr@gnu.org>
12516
12517 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
12518 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
12519
12520 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
12521 Mac too.
12522
12523 2003-06-05 Dave Love <fx@gnu.org>
12524
12525 * strftime.c: Merge changes from gnulib.
12526
12527 * mktime.c (__mktime_internal): Merge changes from gnulib
12528 involving year 69 and dst2.
12529
12530 Changes to merge with gnulib version and be consistent with the
12531 autoconf test:
12532
12533 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
12534 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
12535 [HAVE_LOCALE_H]: Include locale.h.
12536 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
12537
12538 2003-06-05 Kim F. Storm <storm@cua.dk>
12539
12540 * window.c (coordinates_in_window): Convert X and Y to window
12541 relative coordinates inside mode-line and header-line parts.
12542 Convert X and Y to margin area relative coordinates inside left
12543 and right display margin parts.
12544
12545 2003-06-05 Jason Rumney <jasonr@gnu.org>
12546
12547 * w32fns.c (add_system_logical_colors_to_map): New function.
12548 (Fx_open_connection): Use it.
12549
12550 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
12551
12552 * process.c (allocate_pty): Revert part of the previous patch.
12553 (Faccept_process_output): Simplify.
12554
12555 2003-06-04 Jason Rumney <jasonr@gnu.org>
12556
12557 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
12558
12559 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
12560 (lispy_mouse_wheel_names): Remove.
12561 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
12562 Always define drag_and_drop_syms.
12563
12564 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
12565 WHEEL_EVENT events.
12566
12567 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
12568
12569 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
12570
12571 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
12572
12573 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12574
12575 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
12576 menu item label.
12577
12578 2003-06-03 Richard M. Stallman <rms@gnu.org>
12579
12580 * window.c (Fwindow_edges): Doc fix.
12581 (Fwindow_pixel_edges, Fwindow_inside_edges)
12582 (Fwindow_inside_pixel_edges): New functions.
12583 (syms_of_window): defsubr them.
12584
12585 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
12586 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
12587
12588 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
12589
12590 * dispnew.c (Fsit_for): Don't lie about the number of args.
12591
12592 2003-06-02 Dave Love <fx@gnu.org>
12593
12594 * callproc.c: Use HAVE_FCNTL_H, not USG5.
12595 (syms_of_callproc) <process-environment>: Doc fix.
12596
12597 * doc.c: Use HAVE_FCNTL_H, not USG5.
12598
12599 * xfaces.c (font_rescale_ratio): Fix for K&R.
12600
12601 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
12602
12603 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
12604
12605 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
12606
12607 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
12608 (xg_create_frame_widgets): Use ENCODE_UTF_8.
12609
12610 * xterm.c (Qutf_8): Move to coding.c
12611
12612 * xmenu.c (ENCODE_MENU_STRING): New.
12613 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
12614 Use it.
12615
12616 * coding.h (ENCODE_UTF_8): New.
12617 (Qutf_8): Declare.
12618
12619 * coding.c (Qutf_8): New.
12620 (syms_of_coding): Intern it.
12621
12622 * fns.c: Doc fixes.
12623
12624 2003-06-02 Kenichi Handa <handa@m17n.org>
12625
12626 * buffer.c (Fset_buffer_multibyte): Fix previous change.
12627
12628 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
12629
12630 * lread.c (openp): Make sure STR is a string.
12631
12632 2003-06-01 David Ponce <david@dponce.com>
12633
12634 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
12635 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
12636
12637 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
12638 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
12639 (discard_mouse_events): Discard WHEEL_EVENT events too.
12640 (lispy_wheel_names, wheel_syms): New.
12641 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
12642 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
12643 (make_lispy_event): Add WHEEL_EVENT handler.
12644
12645 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
12646 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12647 WHEEL_EVENT events.
12648
12649 2003-05-31 John Paul Wallington <jpw@gnu.org>
12650
12651 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
12652 timer are in lisp/emacs-lisp.
12653
12654 2003-05-31 Kenichi Handa <handa@m17n.org>
12655
12656 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
12657 region when a buffer is changed to unibyte.
12658
12659 * charset.h (VALID_LEADING_CODE_P): New macro.
12660 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
12661
12662 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
12663 is nonzero, accept multibyte form of eight-bit-control chars.
12664 (decode_composition_emacs_mule): Likewise.
12665 (decode_coding_emacs_mule): Likewise.
12666 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
12667 multibyte form of eight-bit-control chars.
12668
12669 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
12670 (Finsert_file_contents): If coding-system-for-read is bound to
12671 Qauto_save_coding, use the coding system emacs-mule with special
12672 setting for recovering a file.
12673 (choose_write_coding_system): On auto saving, use the coding
12674 system emacs-mule with special setting for auto saving.
12675 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
12676
12677 2003-05-30 Kenichi Handa <handa@m17n.org>
12678
12679 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
12680 properly before calling ccl_driver.
12681
12682 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
12683
12684 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
12685 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
12686 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
12687
12688 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
12689
12690 * xfaces.c (realize_default_face): Do not abort if lface is
12691 non-existent - reverts change from 2003-05-19.
12692
12693 2003-05-29 Kenichi Handa <handa@m17n.org>
12694
12695 * coding.c (decode_coding_iso2022): Pay attention to the byte
12696 sequence of CTEXT extended segment, and retain those bytes as is.
12697
12698 2003-05-28 Kenichi Handa <handa@m17n.org>
12699
12700 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
12701 of CODING_REPLACEMENT_CHARACTER.
12702 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
12703 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
12704 check this flag on encoding.
12705 (encode_coding_sjis_big5):
12706 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
12707 (Fset_terminal_coding_system_internal):
12708 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
12709 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
12710
12711 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
12712 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
12713 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
12714
12715 2003-05-28 Richard M. Stallman <rms@gnu.org>
12716
12717 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
12718
12719 * eval.c (unbind_to): Move init of this_binding to separate statement.
12720
12721 2003-05-28 Kim F. Storm <storm@cua.dk>
12722
12723 * xdisp.c (expose_window): Fix error in calculation of
12724 window relative coordinates of area to redisplay.
12725
12726 2003-05-27 Jason Rumney <jasonr@gnu.org>
12727
12728 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
12729
12730 2003-05-27 David Ponce <david@dponce.com>
12731
12732 Handle W32 mouse wheel events as mouse click events, like in X.
12733
12734 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
12735 MOUSE_WHEEL_EVENT anymore.
12736
12737 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
12738 Scrolling down/up the mouse wheel is respectively mapped to mouse
12739 button 4 and 5.
12740 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12741 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
12742 WM_MOUSEWHEEL events.
12743
12744 2003-05-27 Andreas Schwab <schwab@suse.de>
12745
12746 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
12747
12748 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
12749 partially visible line.
12750
12751 * alloc.c (Fgarbage_collect): Fix last change.
12752
12753 2003-05-26 John Paul Wallington <jpw@gnu.org>
12754
12755 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
12756
12757 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
12758
12759 * window.c (Fset_window_buffer): Add type of `keep_margins'.
12760 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
12761
12762 * window.h (window_box_text_cols): Declare.
12763
12764 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
12765 (x_draw_vertical_border): Remove unused var `f'.
12766
12767 * xfaces.c (build_scalable_font_name): Remove `unused var
12768 pixel_size' warning.
12769
12770 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
12771
12772 * unexelf.c (unexec): Remove `unused var n' warning.
12773
12774 * strftime.c (my_strftime_localtime_r): Remove `defined but
12775 unused' warning.
12776
12777 * process.c (allocate_pty): Remove `unused var stb' and
12778 `cp might be used uninitialized' warnings.
12779
12780 * dispnew.c (mode_line_string): Remove unused var `f'.
12781
12782 * coding.c (find_safe_codings): Remove unused var `i'.
12783
12784 * bytecode.c (Fbyte_code): Remove `unused val' warning.
12785
12786 * buffer.c (Fkill_buffer): Remove unused var `list'.
12787
12788 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
12789
12790 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12791
12792 * frame.c (make_frame): Condition want_fullscreen with
12793 HAVE_WINDOW_SYSTEM.
12794
12795 2003-05-25 Juanma Barranquero <lektu@terra.es>
12796
12797 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
12798 (Fwindow_scroll_bars): Fix typo in docstring.
12799
12800 2003-05-24 Kim F. Storm <storm@cua.dk>
12801
12802 The following changes serve several purposes:
12803
12804 1) Swap the position of fringes and display margins in windows, i.e.
12805 the fringes are now displayed between the margins and the text area
12806 (by default).
12807
12808 2) Allow fringe and scroll bar parameters to be set per-buffer and
12809 per-window (like display margins). Such settings are now stored
12810 in window configurations, preserved when frames are resized, and
12811 copied when windows are split vertically or horizontally.
12812 Several bugs related to display margins have been fixed.
12813
12814 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
12815
12816 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
12817 rather than FRAME_WIDTH (FRAME_FONT (f)).
12818
12819 5) Introduce a consistent naming of variables, members and macros
12820 depending on whether their value is measured in pixels or in
12821 canonical columns/lines. Pixel dimensions are named *_width and
12822 *_height, while canonical columns/lines are named *_cols and
12823 *_lines. Pixel positions are named *_x and *_y, while column/line
12824 positions are named *_col and *_line.
12825
12826 6) Consolidate more of the X, W32, and MAC gui code by moving
12827 common data into struct frame, and generalize it for the non-gui
12828 case by using suitable defaults.
12829
12830 7) Cleanup and consolidate the macros controlling frame and window
12831 layout into frame.h and window.h, and generalize the use of the
12832 various window_box_* functions (enhanced to handle the new fringe
12833 position and the per-window fringe and scroll bar settings).
12834
12835 * frame.h (struct frame): Rename members height to text_lines,
12836 width to text_cols, window_height to total_lines, window_width to
12837 total_cols, new_height to new_text_lines, new_width to
12838 new_text_cols. All uses changed.
12839 (struct frame): New members which consolidate common members of
12840 x_output, w32_output, and mac_output structures: left_pos,
12841 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
12842 win_gravity, size_hint_flags, border_width, internal_border_width,
12843 line_height, fringe_cols, left_fringe_width, right_fringe_width,
12844 want_fullscreen. All uses changed.
12845 (struct frame): New member column_width contaning the canonical
12846 column width, analogue to line_height. All uses changed.
12847 (struct frame): Rename members scroll_bar_pixel_width to
12848 config_scroll_bar_width, and scroll_bar_cols to
12849 config_scroll_bar_cols. All uses changed.
12850 (struct frame): New member scroll_bar_actual_width which
12851 consolidates and renames the vertical_scroll_bar_extra member of
12852 x_output, w32_output, and mac_output structures. All uses changed.
12853 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
12854 from x/w32/macterm.h files. All uses changed. Also change code
12855 which referred to f->output_data...->pixel_height.
12856 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
12857 from x/w32/macterm.h files. All uses changed. Also change code
12858 which referred to f->output_data...->pixel_width.
12859 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
12860 Also change code which referred to f->height.
12861 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
12862 Also change code which referred to f->width.
12863 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
12864 to update new_text_lines and new_text_cols members directly.
12865 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
12866 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
12867 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
12868 FRAME_SCROLL_BAR_COLS. All uses changed.
12869 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
12870 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
12871 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
12872 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
12873 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
12874 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
12875 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
12876 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
12877 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
12878 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
12879 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
12880 Unconditionally return line_height member (it now has proper value
12881 also for non-window frames).
12882 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
12883 return new column_width member (rather than the default font width).
12884 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
12885 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
12886 from x/w32/macterm.h files. Unconditionally return corresponding
12887 member of frame structure (they now have proper values also for
12888 non-window frames).
12889 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
12890 Calculate return value from left and right widths.
12891 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
12892 internal_border_width member (has proper value for non-window frame).
12893 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
12894 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
12895 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
12896 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
12897 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
12898 consolidated from xterm.h, macterm.h, and w32term.h.
12899 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
12900 consolidated from xterm.h, macterm.h, and w32term.h.
12901 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
12902 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
12903 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
12904 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
12905 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
12906 consolidated from x/mac/w32term.h.
12907 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
12908 consolidated from x/mac/w32term.h.
12909 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
12910 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
12911 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
12912 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
12913
12914 * window.h (struct window): Rename members left to left_col,
12915 top to top_line, height to total_lines, width to total_cols,
12916 left_margin_width to left_margin_cols, right_margin_width to
12917 right_margin_cols, orig_height to orig_total_lines, orig_top to
12918 orig_top_line. All uses changed.
12919 (struct window): New members left_fringe_width, right_fringe_width,
12920 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
12921 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
12922 New macros primarily used to simplify other macros.
12923 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
12924 referred to XINT (w->width).
12925 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
12926 referred to XINT (w->height).
12927 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
12928 referred to XINT (w->width) * canon_x_unit.
12929 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
12930 referred to XINT (w->height) * canon_y_unit.
12931 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
12932 referred to XINT (w->left).
12933 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
12934 all uses and code that referred to XINT (w->left) + XINT (w->width).
12935 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
12936 referred to XINT (w->top).
12937 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
12938 referred to XINT (w->top) + XINT (w->height).
12939 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12940 referred to XINT (w->left) * canon_x_unit.
12941 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12942 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12943 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12944 referred to XINT (w->top) * canon_y_unit.
12945 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12946 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12947 (WINDOW_LEFTMOST_P): New macro.
12948 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12949 All uses changed.
12950 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12951 All uses changed.
12952 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12953 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12954 Do not exclude left fringe width.
12955 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12956 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12957 Do not exclude fringe widths.
12958 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12959 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12960 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12961 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12962 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12963 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12964 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12965 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12966 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12967 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12968 New macros. Change code which referenced corresponding
12969 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12970 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12971 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12972 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12973 allow per-window scroll-bar settings.
12974 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12975 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12976 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12977 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12978 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12979 FRAME_SCROLL_BAR_WIDTH.
12980 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12981 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12982 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12983 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12984 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12985 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12986 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12987 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12988 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12989 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12990 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12991 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12992 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12993 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12994 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12995 (window_from_coordinates): Update prototype.
12996 (Fset_window_buffer): Update EXFUN.
12997 (set_window_buffer): Update prototype.
12998
12999 * dispextern.h (struct glyph_matrix): Rename members window_left_x
13000 to window_left_col, window_top_y to window_top_line. All uses
13001 changed.
13002 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
13003 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
13004 internal_border_width is now set to 0 for non-window frames.
13005 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
13006 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
13007 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
13008 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
13009 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
13010 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
13011 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
13012 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
13013 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
13014 Move to window.h and renamed [see window.h changes].
13015 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
13016 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
13017 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
13018 Use WINDOW_TOTAL_LINES.
13019 (frame_update_line_height): Remove prototype.
13020
13021 * buffer.h (struct buffer): Rename members measured in columns:
13022 left_margin_width to left_margin_cols, right_margin_width to
13023 right_margin_cols. All uses changed.
13024 New members left_fringe_width, right_fringe_width,
13025 fringes_outside_margins for per-buffer fringe settings.
13026 New members scroll_bar_width and vertical_scroll_bar_type for
13027 per-buffer scroll bar settings.
13028
13029 * buffer.c (init_buffer_once): Set buffer_defaults and
13030 buffer_local_flags for new buffer-local variables
13031 left_fringe_width, right_fringe_width, fringes_outside_margins,
13032 scroll_bar_width, and vertical_scroll_bar_type.
13033 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
13034 default-* variables for them.
13035
13036 * dispnew.c: Make (many) trivial substitutions for renamed and
13037 new macros in dispextern.h, frame.h and window.h.
13038 (mode_line_string): No need to adjust width for mode lines, as it
13039 is already adjusted by the caller.
13040 (marginal_area_string): Handle fringes inside/outside margins.
13041
13042 * frame.c: Make (many) trivial substitutions for renamed and
13043 new macros in dispextern.h, frame.h and window.h.
13044 (make_frame): Initialize left_fringe_width, right_fringe_width,
13045 fringe_cols, scroll_bar_actual_width, border_width,
13046 internal_border_width, column_width, line_height, x_pixels_diff,
13047 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
13048 members with values suitable for a non-window frames.
13049
13050 * gtkutil.c: Make (many) trivial substitutions for renamed and
13051 new macros in dispextern.h, frame.h and window.h.
13052
13053 * indent.c: Make (few) trivial substitutions for renamed and
13054 new macros in dispextern.h, frame.h and window.h.
13055
13056 * keyboard.c: Make (many) trivial substitutions for renamed and
13057 new macros in dispextern.h, frame.h and window.h.
13058 (make_lispy_event): Use window positions returned from
13059 window_from_coordinates when constructing the lisp event for
13060 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
13061 (incorrect) values locally.
13062 (make_lispy_movement): Use window positions returned from
13063 window_from_coordinates when constructing the lisp event, rather
13064 than calculating (incorrect) values locally.
13065
13066 * scroll.c: Make (some) trivial substitutions for renamed and
13067 new macros in dispextern.h, frame.h and window.h.
13068
13069 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
13070 scroll-bars.
13071
13072 * sysdep.c: Make (few) trivial substitutions for renamed and
13073 new macros in dispextern.h, frame.h and window.h.
13074
13075 * term.c: Make (some) trivial substitutions for renamed and
13076 new macros in dispextern.h, frame.h and window.h.
13077
13078 * widget.c: Make (few) trivial substitutions for renamed and
13079 new macros in dispextern.h, frame.h and window.h.
13080
13081 * window.c: Make (many) trivial substitutions for renamed and
13082 new macros in dispextern.h, frame.h and window.h.
13083 (make_window): Initialize new members
13084 left_margin_cols, right_margin_cols, left_fringe_width,
13085 right_fringe_width, fringes_outside_margins, scroll_bar_width,
13086 and vertical_scroll_bar_type.
13087 (coordinates_in_window): Adapt to new fringe/margin positions
13088 and per-window fringes and scroll-bars.
13089 Fix bug related to incorrectly adjusting coordinates by
13090 frame's internal_border_width (the effect normally negible since
13091 the internal_border_width is typically 0 or 1 pixel, but very
13092 noticeable for an internal_border_width of e.g. 25 pixels).
13093 Upon successful return (other than ON_NOTHING), the coordinates
13094 are now always properly converted to window relative for the
13095 given display element.
13096 (window_from_coordinates): Add new parameters wx and wy to
13097 return the window relative x and y position in the returned
13098 window and part. A null arg means, don't return the position.
13099 All callers changed.
13100 (adjust_window_margins): New function which may reduce the width
13101 of the display margins if a window's text area is too small after
13102 resizing or splitting windows.
13103 (size_window): Fix bug that did not account for display margin
13104 widths when checking the minimum width of a window; use
13105 adjust_window_margins.
13106 (set_window_buffer): Call Fset_window_fringes and
13107 Fset_window_scroll_bars to setup per-window elements.
13108 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
13109 existing display margin, fringe widths, and scroll bar settings
13110 (e.g. after splitting a window or resizing the frame).
13111 All callers changed.
13112 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
13113 (Fsplit_window): Duplicate original window's display margin,
13114 fringe, and scroll-bar settings; then call Fset_window_buffer with
13115 KEEP_MARGINS non-nil. This fixes a bug which caused a split
13116 window to only preserve the display margins in one of the windows.
13117 When splitting horizontally, call adjust_window_margins on both
13118 windows to ensure that the text area of the new windows is non too
13119 narrow. This fixes a bug which could cause Emacs to trap if the
13120 width of the split window was less than the width of the display
13121 margins.
13122 (window_box_text_cols): Rename from window_internal_width.
13123 All uses changed. Adapt to per-window fringes and scroll bars.
13124 Fix bug that caused vertical separator to be subtracted also on
13125 window frames. Fix another bug that did not reduce the returned
13126 value by the columns used for display margins.
13127 (window_scroll_line_based): Fix bug related to scrolling too much
13128 when display margins are present (implicitly fixed by the fix to
13129 window_box_text_cols).
13130 (scroll_left, scroll_right): Fix bug related to scrolling too far
13131 by default when display margins are present (implicitly fixed by
13132 the fix to window_box_text_cols).
13133 (struct saved_window): Rename members left to left_col, top to
13134 top_line, width to total_cols, height to total_lines, orig_top to
13135 orig_top_line, orig_height to orig_total_lines. All uses changed.
13136 New members left_margin_cols, right_margin_cols,
13137 left_fringe_width, right_fringe_width, fringes_outside_margins,
13138 scroll_bar_width, and vertical_scroll_bar_type for saving
13139 per-window display elements.
13140 (Fset_window_configuration): Restore display margins, fringes,
13141 and scroll bar settings. This fixes a bug which caused display
13142 margins to be discarded when saving and restoring a window
13143 configuration.
13144 (save_window_save): Save display margins, fringes, and scroll bar
13145 settings. This fixes a bug which caused display margins to be
13146 discarded when saving and restoring a window configuration.
13147 (Fset_window_margins): Do nothing if display margins are not
13148 really changed. Otherwise, call adjust_window_margins to ensure
13149 the text area doesn't get too narrow. This fixes a bug which
13150 could cause Emacs to trap if setting display margins wider than
13151 the width of the window.
13152 (Fset_window_fringes): New defun to allow user to specifically set
13153 this window's fringe widths and position vs. display margins.
13154 (Fwindow_fringes): New defun to return window's actual fringe settings.
13155 (Fset_window_scroll_bars): New defun to allow user to specifically
13156 set this window's scroll bar width and position.
13157 (Fwindow_scroll_bars): New defun to return window's actual scroll
13158 bar settings.
13159 (compare_window_configurations): Also compare display margins,
13160 fringes, and scroll bar settings.
13161 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
13162
13163 * xdisp.c: Make (many) trivial substitutions for renamed and
13164 new macros in dispextern.h, frame.h and window.h.
13165 (window_box_width): Adapt to per-window fringes and scroll bars,
13166 and new fringe vs. display margin position. Note that returned
13167 value is no longer guaranteed to be a whole multiple of the frame
13168 column width, since per-window fringes may now be any width.
13169 (window_box_left_offset): New function like window_box_left, but
13170 value is relative to left border of window (rather than frame).
13171 (window_box_right_offset): New function like window_box_right,
13172 but value is relative to left border of window.
13173 (window_box_left): Adapt to per-window fringes and scroll bars,
13174 and new fringe vs. display margin position. Simplify by using
13175 WINDOW_LEFT_EDGE_X and window_box_left_offset.
13176 (window_box): Allow null args for unnecessary return values;
13177 change/simplify relevant callers.
13178 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
13179 and new fringe vs. display margin position.
13180 Use window_box_left_offset and window_box_right_offset
13181 (get_glyph_string_clip_rect): Adapt to per-window fringes and
13182 scroll bars, and new fringe vs. display margin position.
13183 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
13184 (draw_fringe_bitmap): Rework to handle per-window fringes and new
13185 fringe vs. display margin position.
13186 (hscroll_window_tree): Use window_box_width instead of window_box.
13187 (redisplay_window): Adapt to per-window scroll bars.
13188 (draw_glyphs): Rework to handle per-window fringes and scroll
13189 bars, and new fringe vs. display margin position.
13190 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
13191 (x_clear_end_of_line): Adapt to per-window fringes and scroll
13192 bars, and new fringe vs. display margin position. Fix bug which
13193 increased total width of full_width rows by width of scroll bars
13194 although window's total width already includes that.
13195 (x_fix_overlapping_area): Simplify using window_box_left_offset.
13196 (expose_area): Simplify using window_box_left_offset.
13197 (x_draw_vertical_border): Handle per-window scroll bar settings,
13198 mixing windows with left, right and no scroll bars.
13199
13200 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
13201 where it's used in x_list_fonts (for clarity).
13202 (frame_update_line_height): Remove unused function; functionality
13203 is now done directly when setting the default font in x_set_font.
13204
13205 * xfns.c: Make (many) trivial substitutions for renamed and
13206 new macros in dispextern.h, frame.h and window.h.
13207
13208 * xmenu.c: Make (some) trivial substitutions for renamed and
13209 new macros in dispextern.h, frame.h and window.h.
13210
13211 * xterm.h (struct x_output): Move members left_pos, top_pos,
13212 border_width, pixel_height, pixel_width, line_height,
13213 internal_border_width, vertical_scroll_bar_extra,
13214 left_fringe_width, right_fringe_width, fringe_cols,
13215 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
13216 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
13217 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
13218 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
13219 (PIXEL_WIDTH, PIXEL_HEIGHT)
13220 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
13221 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
13222 frame.h and renamed [see frame.h changes].
13223 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
13224 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
13225 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
13226 and renamed [see frame.h changes].
13227
13228 * xterm.c: Make (several) trivial substitutions for renamed and
13229 new macros in dispextern.h, frame.h and window.h.
13230 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
13231 (scroll_run): Adapt to new fringe position.
13232 (glyph_rect): Use window coordinates returned from
13233 window_from_coordinates rather than frame_to_window_pixel_xy.
13234 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
13235 scroll-bars.
13236 (handle_one_xevent): Simplify a USE_GTK conditional.
13237 (x_clip_to_row): Remove superfluous whole_line_p arg and code
13238 (fringes are now inside margins, i.e. always in the clipping area).
13239 All callers changed.
13240 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
13241 directly, then call compute_fringe_widths. Don't call
13242 frame_update_line_height.
13243
13244 * w32term.h (struct w32_output): Move members left_pos, top_pos,
13245 border_width, pixel_height, pixel_width, line_height,
13246 internal_border_width, vertical_scroll_bar_extra,
13247 left_fringe_width, right_fringe_width, fringe_cols,
13248 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
13249 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
13250 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
13251 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
13252 (PIXEL_WIDTH, PIXEL_HEIGHT)
13253 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
13254 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
13255 frame.h and renamed [see frame.h changes].
13256 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
13257 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
13258 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
13259 and renamed [see frame.h changes].
13260
13261 * w32term.c: Make (several) trivial substitutions for renamed and
13262 new macros in dispextern.h, frame.h and window.h.
13263 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
13264 (glyph_rect): Use window coordinates returned from
13265 window_from_coordinates rather than frame_to_window_pixel_xy.
13266 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
13267 scroll-bars.
13268 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
13269 (fringes are now inside margins, i.e. always in the clipping area).
13270 All callers changed.
13271 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
13272 directly, then call compute_fringe_widths. Don't call
13273 frame_update_line_height.
13274
13275 * w32console.c: Make (few) trivial substitutions for renamed and
13276 new macros in dispextern.h, frame.h and window.h.
13277
13278 * w32fns.c: Make (many) trivial substitutions for renamed and
13279 new macros in dispextern.h, frame.h and window.h.
13280
13281 * w32menu.c: Make (few) trivial substitutions for renamed and
13282 new macros in dispextern.h, frame.h and window.h.
13283
13284 * macterm.h (struct mac_output): Move members left_pos, top_pos,
13285 border_width, pixel_height, pixel_width, line_height,
13286 internal_border_width, vertical_scroll_bar_extra,
13287 left_fringe_width, right_fringe_width, fringe_cols,
13288 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
13289 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
13290 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
13291 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
13292 (PIXEL_WIDTH, PIXEL_HEIGHT)
13293 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
13294 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
13295 frame.h and renamed [see frame.h changes].
13296 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
13297 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
13298 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
13299 and renamed [see frame.h changes].
13300
13301 * macterm.c: Make (several) trivial substitutions for renamed and
13302 new macros in dispextern.h, frame.h and window.h.
13303 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
13304 (glyph_rect): Use window coordinates returned from
13305 window_from_coordinates rather than frame_to_window_pixel_xy.
13306 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
13307 scroll-bars.
13308 (x_clip_to_row): Remove superfluous whole_line_p arg and code
13309 (fringes are now inside margins, i.e. always in the clipping area).
13310 All callers changed.
13311 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
13312 directly, then call compute_fringe_widths. Don't call
13313 frame_update_line_height.
13314
13315 * macfns.c: Make (several) trivial substitutions for renamed and
13316 new macros in dispextern.h, frame.h and window.h.
13317 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
13318
13319 * macmenu.c: Make (few) trivial substitutions for renamed and
13320 new macros in dispextern.h, frame.h and window.h.
13321
13322 * msdos.h (struct x_output): Remove members left_pos, top_pos,
13323 and line_height, and use corresponding new members in struct
13324 frame. All uses changed.
13325 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
13326 superseeded by corresponding macros in frame.h.
13327
13328 * msdos.c: Make (several) trivial substitutions for renamed and
13329 new macros in dispextern.h, frame.h and window.h.
13330 (IT_note_mouse_highlight): Use updated window coordinates returned
13331 by window_from_coordinates, rather than adjusting them locally.
13332 (internal_terminal_init): No need to initialize line_height here;
13333 it now defaults to 1.
13334
13335 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
13336
13337 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
13338 dropping `down' events.
13339
13340 2003-05-24 Andreas Schwab <schwab@suse.de>
13341
13342 * coding.c (find_safe_codings): Fix last change.
13343
13344 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
13345
13346 * xfns.c (x_window): Fix typo from 2003-05-21 change.
13347
13348 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
13349
13350 * xdisp.c (display_mode_element): Increase max depth.
13351 Simplify the error handling code. Use a different error string
13352 for the case where we hit the depth limit.
13353
13354 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
13355
13356 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
13357
13358 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
13359
13360 * intervals.c (get_local_map): Don't get char-property of previous
13361 point any more: get_pos_property already does it and better.
13362
13363 2003-05-21 Dave Love <fx@gnu.org>
13364
13365 [Merged from unicode branch.]
13366
13367 * xfns.c (x_window, x_window): Use use_xim.
13368
13369 * xterm.c (use_xim): Initialize.
13370 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
13371 (x_term_init): Maybe set use_xim.
13372
13373 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
13374
13375 2003-05-21 Jason Rumney <jasonr@gnu.org>
13376
13377 * unexw32.c (_start): Remove _fmode initialization.
13378
13379 * emacs.c (main) [WINDOWSNT]: Move it here.
13380
13381 2003-05-20 Dave Love <fx@gnu.org>
13382
13383 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
13384
13385 2003-05-19 Richard M. Stallman <rms@gnu.org>
13386
13387 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
13388 as value for QCfont attribute.
13389 (realize_default_face): lface should already exist; crash if not.
13390 Specify 0 for FORCE_P when calling set_lface_from_font_name.
13391
13392 * frame.c (Fignore_event): Doc fix.
13393
13394 2003-05-19 Kenichi Handa <handa@m17n.org>
13395
13396 * coding.c (decode_coding_string): Handle post-read-conversion
13397 even if the coding doesn't require decoding.
13398
13399 2003-05-18 Richard M. Stallman <rms@gnu.org>
13400
13401 * callproc.c (Fcall_process_region): Doc fix.
13402
13403 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
13404
13405 * lread.c (Fload): Print a message if package is obsolete.
13406
13407 * window.c (Fselect_window): Add optional `norecord' arg.
13408 (select_window_1): Fold into Fselect_window.
13409 (select_window_norecord): New function.
13410 (temp_output_buffer_show): Use it. Preserve current buffer.
13411
13412 * window.h (Fselect_window): Update declaration.
13413
13414 * window.c (delete_window, Fother_window, Fset_window_configuration):
13415 * minibuf.c (read_minibuf):
13416 * macterm.c (x_new_focus_frame):
13417 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
13418 * callint.c (Fcall_interactively):
13419 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
13420
13421 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
13422
13423 2003-05-17 David Kastrup <dak@gnu.org>
13424
13425 * process.c (read_process_output): Back out change from 2003-03-09.
13426
13427 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
13428
13429 * editfns.c (get_pos_property): Don't assume that `object' = nil.
13430
13431 * textprop.c (text_property_stickiness): New arg `buffer'.
13432
13433 * intervals.h (text_property_stickiness): New arg `buffer'.
13434 (get_pos_property): Declare.
13435
13436 * intervals.c (get_local_map): Use get_pos_property, to obey
13437 stickiness and empty overlays.
13438 (create_root_interval, graft_intervals_into_buffer): Use BEG.
13439 (merge_properties, intervals_equal, merge_properties_sticky):
13440 Use XCAR, XCDR.
13441 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
13442
13443 2003-05-17 Richard M. Stallman <rms@gnu.org>
13444
13445 * minibuf.c (read_minibuf): If buffer is empty, record the default
13446 in the history.
13447 (Fminibuffer_complete_word): When deleting the overlap, take account
13448 of its real position.
13449
13450 * fns.c (map_char_table): Fix previous change.
13451
13452 * syntax.c (find_defun_start):
13453 When open_paren_in_column_0_is_defun_start,
13454 return beginning of buffer.
13455
13456 * lisp.h (map_char_table): Declare added arg.
13457
13458 * fns.c (map_char_table): New arg TABLE gets the master table.
13459 All calls changed.
13460 Process default and inheritance, resorting to Faref if necessary.
13461
13462 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13463 (Faccessible_keymaps): Pass new arg to map_char_table.
13464
13465 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
13466
13467 * casetab.c (set_case_table): Pass new arg to map_char_table.
13468
13469 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
13470
13471 * lisp.h (specbinding_func): New typedef.
13472 (struct specbinding): Use specbinding_func, to put the `volatile'
13473 in the right place.
13474
13475 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
13476 to avoid GCC warning.
13477
13478 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
13479
13480 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
13481
13482 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
13483
13484 * keyboard.c (apply_modifiers): Don't fill the other cache.
13485
13486 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
13487
13488 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
13489
13490 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
13491 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
13492 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
13493 (Fset_window_configuration, Fcurrent_window_configuration)
13494 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
13495 (Fpos_visible_in_window_p, mark_window_cursors_off)
13496 (window_internal_height, window_internal_width, Frecenter)
13497 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
13498 (replace_buffer_in_all_windows, init_window_once, init_window)
13499 (syms_of_window, keys_of_window): Move from lisp.h.
13500 * lisp.h: Move window.c declarations to window.h.
13501
13502 * bytecode.c: Include window.h.
13503 * emacs.c: Include window.h.
13504
13505 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
13506 (keyremap): Add `parent' field.
13507 (keyremap_step): Use it. Remove `parent' argument.
13508 (read_key_sequence): Setup and use the new `parent' field.
13509
13510 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
13511
13512 * keyboard.c (adjust_point_for_property): Ensure termination.
13513
13514 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
13515
13516 * keyboard.c (follow_key): Remove dead variable `did_meta'.
13517 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
13518 duplicated handling of function-key-map and key-translation-map
13519 in read_key_sequence.
13520 (read_key_sequence): Use them.
13521
13522 * keyboard.c (adjust_point_for_property): Try harder to move point
13523 to the non-sticky end of an invisible property.
13524
13525 * xdisp.c (single_display_prop_intangible_p): Make `space' display
13526 property intangible as well.
13527
13528 2003-05-10 Andreas Schwab <schwab@suse.de>
13529
13530 * xmenu.c (single_menu_item): Change last parameter to void* to
13531 avoid warning.
13532
13533 2003-05-09 Richard M. Stallman <rms@gnu.org>
13534
13535 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
13536 Bind Qinhibit_modification_hooks to t so there will be no GC.
13537 Rename local `tem' to `save_deactivate_mark'.
13538
13539 * eval.c (specpdl_ptr): Declare volatile.
13540 (unbind_to): Copy the whole binding and decrement specpdl_ptr
13541 before doing the work of unbinding it.
13542
13543 * lisp.h (struct specbinding): Declare elements volatile.
13544 (specpdl_ptr): Declare volatile.
13545
13546 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
13547
13548 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
13549 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
13550
13551 2003-05-08 Dave Love <fx@gnu.org>
13552
13553 * coding.c (Vlast_coding_system_used): Doc fix.
13554
13555 2003-05-07 Jason Rumney <jasonr@gnu.org>
13556
13557 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
13558 when system does not support them.
13559
13560 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
13561
13562 * fileio.c (Qwrite_region_annotate_functions): New var.
13563 (build_annotations): Use it to process the global part of the hook.
13564 (syms_of_fileio): Init and staticpro it.
13565
13566 * keyboard.c (safe_run_hooks_error): Display a message instead of
13567 silently ignoring the error.
13568
13569 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
13570
13571 * keyboard.c (input_available_signal): Mark static.
13572 (menu_bar_items): Use map_keymap.
13573 (menu_bar_one_keymap): Remove.
13574 (menu_bar_item): Adjust arglist (for use in map_keymap).
13575 Properly hide a second binding when not both are keymaps.
13576
13577 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
13578 (single_keymap_panes): Use it and map_keymap.
13579 (single_menu_item): Use skp as well.
13580
13581 * keymap.h (map_keymap_function_t): New type.
13582 (map_keymap): Declare.
13583
13584 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
13585 (map_keymap_call, Fmap_keymap): New functions.
13586 (syms_of_keymap): Defsubr map-keymap.
13587
13588 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13589
13590 * gtkutil.c (create_dialog, make_widget_for_menu_item)
13591 (make_menu_item, create_menus, xg_update_menu_item): Don't call
13592 ..._with_mnemonic functions for menu items.
13593
13594 2003-05-01 Kenichi Handa <handa@m17n.org>
13595
13596 * coding.c (coding_system_accept_latin_extra_p): Delete this
13597 function.
13598 (find_safe_codings): Pay attention to
13599 the property tranlsation-table-for-encode of each codings.
13600 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
13601
13602 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
13603
13604 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
13605
13606 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
13607
13608 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
13609
13610 * lisp.h (CHECK): Wrap args in parenthesis.
13611 (specbind): Fix doc: symbol = Qnil is not supported any more.
13612
13613 * bytecode.c (Fbyte_code) <unwind-protect>:
13614 Use Fprogn rather than 0 and Qnil.
13615
13616 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
13617 `double', and `triple' modifiers as well.
13618
13619 2003-04-30 Richard M. Stallman <rms@gnu.org>
13620
13621 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
13622
13623 * alloc.c (abort_on_gc): New variable.
13624 (Fgarbage_collect): Abort if abort_on_gc is set.
13625
13626 * lisp.h (abort_on_gc): Add decl.
13627
13628 * eval.c (Fsignal): Clear abort_on_gc.
13629
13630 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
13631 Reinit FORMAT_START and END before second scan.
13632
13633 * xdisp.c (move_it_vertically_backward): Do the final big else
13634 even if nlines is 0.
13635
13636 * xdisp.c (redisplay_internal): Finish the per-frame loop
13637 even if redisplay is suspended by input.
13638
13639 2003-04-24 Andrew Choi <akochoi@shaw.ca>
13640
13641 * macterm.c (x_list_fonts): Return all fonts that match if
13642 maxnames = -1.
13643
13644 2003-04-25 Kenichi Handa <handa@m17n.org>
13645
13646 * syntax.c (skip_chars): Fix previous change.
13647
13648 2003-04-24 Kenichi Handa <handa@m17n.org>
13649
13650 * syntax.c (skip_chars): Make the code faster by using the common
13651 technique of *p, *stop, and *endp.
13652
13653 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13654
13655 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
13656 tool_bar_items so GTK tool bar expose callback does not access items
13657 being updated.
13658
13659 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
13660
13661 * eval.c (Fapply): Undo last change and add a comment about why.
13662
13663 2003-04-18 Miles Bader <miles@gnu.org>
13664
13665 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
13666 pickier PARSE_MULTIBYTE_SEQ.
13667
13668 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
13669
13670 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
13671 Use XCDR, XCAR, CONSP.
13672 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
13673 (Fapply): Remove unnecessary GCPRO.
13674
13675 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
13676
13677 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
13678
13679 * buffer.h: Don't hardcode BEG==1.
13680
13681 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
13682
13683 2003-04-16 Richard M. Stallman <rms@gnu.org>
13684
13685 * xdisp.c (try_window, try_window_reusing_current_matrix):
13686 When at end of window, set window_end_pos to Z-ZV.
13687
13688 * buffer.c (Foverlay_recenter): Doc fix.
13689
13690 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
13691
13692 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
13693
13694 2003-04-14 Andrew Choi <akochoi@shaw.ca>
13695
13696 * macterm.c (mac_check_for_quit_char): Don't check more often than
13697 once a second.
13698
13699 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
13700
13701 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
13702 specially, so that they can't hide an implicit switch-frame event.
13703 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
13704 (head_table): Use switch-frame as event_kind for select-window.
13705 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
13706
13707 * editfns.c (Fformat): Lisp_Object/int mixup.
13708 (format2): Remove unused var numargs.
13709
13710 2003-04-11 Kenichi Handa <handa@m17n.org>
13711
13712 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
13713 (Qafter_insert_file_set_coding): New variable.
13714 (syms_of_fileio): Initialize and staticpro it. Delete declaration
13715 for after-insert-file-adjust-coding-function.
13716 (Finsert_file_contents): Call Qafter_insert_file_set_coding
13717 instead of Vafter_insert_file_adjust_coding_function.
13718
13719 2003-04-11 Kenichi Handa <handa@m17n.org>
13720
13721 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
13722
13723 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
13724 string. Callers changed.
13725
13726 2003-04-10 Kenichi Handa <handa@m17n.org>
13727
13728 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
13729 (syms_of_fileio): Declare it as a lisp variable.
13730 (Finsert_file_contents):
13731 Call Vafter_insert_file_adjust_coding_function before calling
13732 decode-format.
13733
13734 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13735
13736 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
13737 get GtkAdjustment as widget now is a GtkRange.
13738
13739 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
13740 GtkRange to avoid memory leak.
13741
13742 2003-04-09 Kenichi Handa <handa@m17n.org>
13743
13744 * xfaces.c (Vface_font_rescale_alist): New variable.
13745 (struct font_name): New member rescale_ratio.
13746 (font_rescale_ratio): New function.
13747 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
13748 (better_font_p): On comparing point sized, pay attention to
13749 recale_ratio member of fonts.
13750 (build_scalable_font_name): Reflect font->rescale_ratio in the
13751 font name.
13752 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13753
13754 * lread.c (read1): Before calling index, check if the 2nd
13755 arguemnt is in ASCII range.
13756
13757 2003-04-08 Richard M. Stallman <rms@gnu.org>
13758
13759 * fileio.c (Ffile_symlink_p): Doc fix.
13760
13761 * editfns.c (Fformat): Translate positions of text properties
13762 in the format string to apply them to the result.
13763
13764 * fileio.c (Finsert_file_contents): Doc fix.
13765 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
13766
13767 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
13768
13769 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
13770
13771 2003-04-08 Steven Tamm <steventamm@mac.com>
13772
13773 * mac.c (init_mac_osx_environment): Switch libexec and bin so
13774 that self-contained application finds libexec files.
13775
13776 2003-04-08 Kenichi Handa <handa@m17n.org>
13777
13778 * coding.c (code_convert_region_unwind):
13779 Set Vlast_coding_system_used to the argument.
13780 (code_convert_region): If post-read-conversion function changed
13781 the value of last-coding-sytem, keep the new value in
13782 coding->symbol so that it won't be overridden.
13783 (run_pre_post_conversion_on_str): Likewise.
13784 (coding_system_accept_latin_extra_p): New function.
13785 (find_safe_codings): Pay attention to characters registered in
13786 latin-extra-code-table.
13787
13788 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
13789
13790 * Makefile.in (md5.o): Add missing dependency info.
13791
13792 2003-04-06 Richard M. Stallman <rms@gnu.org>
13793
13794 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
13795
13796 * marker.c (verify_bytepos): New function.
13797
13798 * intervals.c (set_intervals_multibyte_1): When becoming
13799 multibyte, adjust right and left child sizes to a whole set of
13800 characters. If an interval gets zero total-length, delete it.
13801 If an interval consists of just its children, delete one of them.
13802
13803 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
13804 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
13805
13806 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
13807 All calls deleted.
13808 (lisp_malloc): Do the work here directly.
13809
13810 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
13811
13812 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
13813 char tables.
13814
13815 2003-04-04 Kenichi Handa <handa@m17n.org>
13816
13817 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
13818 destructively change "%S" to "%s".
13819
13820 2003-04-03 Miles Bader <miles@gnu.org>
13821
13822 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
13823 always set.
13824
13825 2003-04-01 Dave Love <fx@gnu.org>
13826
13827 * xfns.c (xpm_lookup_color): Grok "opaque".
13828
13829 2003-03-31 Andrew Choi <akochoi@shaw.ca>
13830
13831 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
13832 parent window ID.
13833
13834 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
13835
13836 * macterm.h (struct mac_output): Define x_pixels_diff and
13837 y_pixels_diff.
13838
13839 2003-03-31 Juanma Barranquero <lektu@terra.es>
13840
13841 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
13842 blockinput.h and files included from it.
13843
13844 2003-03-31 Kim F. Storm <storm@cua.dk>
13845
13846 The following changes consolidates the common code related to
13847 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
13848 files into frame.c.
13849
13850 * frame.c: Include blockinput.h.
13851 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
13852 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
13853 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
13854 related vars here.
13855 (struct frame_parm_table, frame_parms): New table for describing
13856 frame parameters and their associated Q-variable.
13857 The order of the parameters corresponds to the sequence of the
13858 frame_parm_handlers table in redisplay_interface.
13859 (x_fullscreen_move, x_set_frame_parameters)
13860 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
13861 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
13862 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13863 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
13864 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
13865 Generic functions for processing of frame parameters.
13866 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
13867 (display_x_get_resource, x_get_resource_string): Functions for
13868 generic access to X resources.
13869 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13870 (x_default_parameter, Fx_parse_geometry): Functions for generic
13871 access to frame parameters.
13872 (x_figure_window_size): Generic calculation of frame size.
13873 Fixed to add space needed for tool bar. Also setup size_hint_flags.
13874 (syms_of_frame): Intern and staticpro frame parameter variables.
13875 Defvar_lisp Vx_resource_class and Vx_resource_name here.
13876 Defsubr Sx_get_resource and Sx_parse_geometry.
13877
13878 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
13879 parameter related vars defined in frame.c.
13880 (EMACS_CLASS): Define here.
13881 (enum FULLSCREEN_*): Define here.
13882 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
13883 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
13884 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
13885 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
13886 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
13887 (x_set_visibility, x_set_autoraise, x_set_autolower)
13888 (x_set_unsplittable, x_set_vertical_scroll_bars)
13889 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
13890 (x_figure_window_size): Add prototypes.
13891
13892 * dispextern.h (frame_parm_handler): New typedef.
13893 (struct redisplay_interface): New member frame_parm_handlers.
13894 (enum resource_types): Move declaration here.
13895 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13896 (x_default_parameter): Add prototypes.
13897
13898 * window.c: Remove extern decl for frame parameter vars.
13899 (change_window_heights): New generic function;
13900 replaces x_change_window_heights. All users changed.
13901
13902 * window.h (change_window_heights): Add prototype.
13903
13904 * xfaces.c: Remove extern decl for frame parameter vars.
13905
13906 * xterm.h (EMACS_CLASS): Remove. Use generic define.
13907 (struct w32_display_info): Fix type of xrdb member.
13908 (enum FULLSCREEN_*): Remove.
13909 Remove prototypes for generic functions (in frame.h).
13910
13911 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13912 parameters now defined in frame.h and frame.c.
13913 (Vx_resource_name): Remove. Use generic var.
13914 (enum x_frame_parms): Remove (bogus, unused enum).
13915 (check_x_display_info): Make non-static (for frame.c).
13916 (struct x_frame_parm_table, x_frame_parms): Remove.
13917 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13918 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13919 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13920 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13921 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13922 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13923 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13924 Remove. Use generic functions instead.
13925 (enum resource_types): Remove.
13926 (x_set_scroll_bar_default_width): New global function (for frame.c).
13927 (Fx_create_frame): Depend on x_figure_window_size to add space for
13928 toolbar and setup size_hint_flags.
13929 (x_frame_parm_handlers): New table for redisplay_interface.
13930 (syms_of_xfns): Don't intern/staticpro removed vars.
13931
13932 * xterm.c: Remove unnecessary extern declarations.
13933 (x_fullscreen_adjust): Remove. Use generic instead.
13934 (x_redisplay_interface): Add x_frame_parm_handlers member.
13935
13936 * w32gui.h (XrmDatabase): New (dummy) typedef.
13937
13938 * w32term.h (EMACS_CLASS): Remove. Use generic define.
13939 (struct w32_display_info): Fix type of xrdb member.
13940 (enum FULLSCREEN_*): Remove.
13941 (x_fullscreen_adjust): Remove prototype.
13942
13943 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13944 parameters now defined in frame.h and frame.c.
13945 (Vx_resource_name): Remove. Use generic var.
13946 (enum x_frame_parms): Remove (bogus, unused enum).
13947 (check_x_display_info): Make non-static (for frame.c).
13948 (struct x_frame_parm_table, x_frame_parms): Remove.
13949 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13950 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13951 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13952 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13953 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13954 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13955 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13956 Remove. Use generic functions instead.
13957 (enum resource_types): Remove.
13958 (x_set_scroll_bar_default_width): New global function (for frame.c).
13959 (Fx_create_frame): Depend on x_figure_window_size to add space for
13960 toolbar and setup size_hint_flags.
13961 (w32_frame_parm_handlers): New table for redisplay_interface.
13962 (syms_of_w32fns): Don't intern/staticpro removed vars.
13963
13964 * w32term.c: Remove unnecessary extern declarations.
13965 (x_fullscreen_adjust): Remove. Use generic instead.
13966 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13967
13968 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13969
13970 * macgui.h (XrmDatabase): New (dummy) typedef.
13971
13972 * macterm.h (EMACS_CLASS): Remove.
13973 (struct mac_display_info): Add xrdb member.
13974 (struct mac_output): Add want_fullscreen member.
13975
13976 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13977 parameters now defined in frame.h and frame.c.
13978 (Vx_resource_name): Remove. Use generic var.
13979 (check_x_display_info): Make non-static (for frame.c).
13980 (struct x_frame_parm_table, x_frame_parms): Remove.
13981 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13982 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13983 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13984 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13985 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13986 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13987 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13988 Remove. Use generic functions instead.
13989 (enum resource_types): Remove.
13990 (x_set_scroll_bar_default_width): New global function (for frame.c).
13991 (mac_frame_parm_handlers): New table for redisplay_interface.
13992 (syms_of_macfns): Don't intern/staticpro removed vars.
13993
13994 * macterm.c: Remove unnecessary extern declarations.
13995 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13996
13997 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13998 included from it (atimer.h and systime.h).
13999
14000 2003-03-30 Andreas Schwab <schwab@suse.de>
14001
14002 * xdisp.c (x_insert_glyphs): Fix swapped width and height
14003 parameters for shift_glyphs_for_insert.
14004
14005 * macterm.c (x_redisplay_interface): Add missing entry for
14006 draw_vertical_window_border.
14007
14008 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
14009
14010 * fileio.c (Fexpand_file_name): In the no-handler case, after
14011 expanding, look again for a handler and invoke it. This is needed
14012 for filenames like "/foo/../user@host:/bar/../baz" -- the first
14013 expansion produces "/user@host:/bar/../baz" which needs to be
14014 expanded again for the finame result "/user@host:/baz".
14015
14016 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14017
14018 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
14019 of area to be redrawn for better performance.
14020
14021 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
14022
14023 * xterm.c (take_vertical_position_into_account): Remove.
14024 (xt_action_hook): Call set_vertical_scroll_bar if needed.
14025 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
14026 (xm_scroll_callback, x_create_toolkit_scroll_bar)
14027 (x_set_toolkit_scroll_bar_thumb): Simplify.
14028 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
14029 (XTread_socket): Remove unused var.
14030 (x_make_frame_invisible): Replace goto with else.
14031
14032 * xdisp.c (set_vertical_scroll_bar): New fun.
14033 (redisplay_window): Use it.
14034
14035 2003-03-26 Richard M. Stallman <rms@gnu.org>
14036
14037 * xdisp.c (update_tool_bar): Recompute tool bar if
14038 update_mode_lines is set. Set w->update_mode_line
14039 only if the tool bar contents actually change.
14040 (update_menu_bar): Undo previous change.
14041
14042 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14043
14044 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
14045 (xg_frame_set_char_size): Calculate scroll bar width before frame
14046 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
14047 (xg_separator_p): Check for all documented separator types.
14048 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
14049 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
14050
14051 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
14052 so tool bar gets updated.
14053
14054 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
14055
14056 * data.c (store_symval_forwarding): Re-instate part of the code
14057 that was deleted with too much enthusiasm.
14058
14059 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
14060
14061 * data.c (store_symval_forwarding): Delete special read-only
14062 hack for type == -1, since we now use ->constant instead.
14063 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
14064
14065 * buffer.c (overlays_in): Declare static.
14066 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
14067 `constant' field rather than the variable's `type' field.
14068
14069 2003-03-24 Andrew Choi <akochoi@shaw.ca>
14070
14071 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
14072
14073 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
14074
14075 * fns.c [MAC_OSX]: Do not redefine vector.
14076
14077 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
14078
14079 * macgui.h: Remove definition of No_Cursor.
14080
14081 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
14082
14083 * xdisp.c: Define No_Cursor.
14084 (x_write_glyphs, notice_overwritten_cursor)
14085 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
14086 (note_mouse_highlight): Remove Mac-specific code.
14087 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
14088
14089 2003-03-24 John Paul Wallington <jpw@gnu.org>
14090
14091 * xdisp.c (redisplay_window): If mini window's buffer is not
14092 empty, then redisplay it like other windows.
14093
14094 2003-03-23 Kim F. Storm <storm@cua.dk>
14095
14096 * w32term.c (w32_draw_window_cursor): Fix last change.
14097
14098 2003-03-23 Kenichi Handa <handa@m17n.org>
14099
14100 * alloc.c (make_string_from_bytes, make_specified_string):
14101 Add `const' for the arg CONTENTS.
14102
14103 * lisp.h (make_string_from_bytes, make_specified_string):
14104 Prototypes adjusted.
14105
14106 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14107
14108 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
14109
14110 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
14111 (XG_SB_RANGE): New define.
14112
14113 * gtkutil.c (xg_fixed_handle_expose): New function.
14114 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
14115 expose events.
14116 (xg_update_scrollbar_pos): Take two more arguments, left and width
14117 of scroll bar including borders.
14118 Clear left and right part outside scroll bar separately as some
14119 themes have bars that are not an even number of pixels.
14120 Don't set reallocate_redraws, don't call
14121 gdk_window_process_all_updates.
14122 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
14123 so no need to change it. Calculate size and value with XG_SB_RANGE.
14124
14125 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
14126 Pass left and width of scroll bar including borders to
14127 xg_update_scrollbar_pos.
14128
14129 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
14130
14131 * Makefile.in: Make sure space precedes end-of-line backslashes.
14132
14133 2003-03-22 Kim F. Storm <storm@cua.dk>
14134
14135 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
14136 Add generic versions here. Remove system specific versions
14137 defined elsewhere.
14138
14139 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
14140 Add prototypes.
14141
14142 * xterm.h (STORE_NATIVE_RECT): New macro.
14143
14144 2003-03-21 Kim F. Storm <storm@cua.dk>
14145
14146 * xdisp.c (get_glyph_string_clip_rect):
14147 Use FRAME_INTERNAL_BORDER_WIDTH.
14148
14149 * dispextern.h (struct redisplay_interface): Add active_p
14150 argument to draw_window_cursor member. All uses changed.
14151
14152 2003-03-21 Kim F. Storm <storm@cua.dk>
14153
14154 The following changes consolidate code related to writing and
14155 inserting glyphs, exposing frame, the tool bar, the mouse face,
14156 the output cursor, and help echo from xterm.c, w32term.c and
14157 macterm.c into xdisp.c. It also generalizes the use of the
14158 window_part enum instead of using numeric values throughout.
14159
14160 * xdisp.c: Consolidate gui-independent code here.
14161 Include keymap.h.
14162 (Qhelp_echo): Import.
14163 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
14164 (help_echo_string, help_echo_window, help_echo_object)
14165 (previous_help_echo_string, help_echo_pos): Declare here.
14166 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
14167 (estimate_mode_line_height): Define here. Handle windowing
14168 systems directly (without using estimate_mode_line_height_hook).
14169 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
14170 (update_window_cursor, update_cursor_in_window_tree)
14171 (fast_find_position, fast_find_string_pos)
14172 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
14173 (expose_area, expose_line, expose_overlaps, expose_window)
14174 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
14175 declared static as they are only used locally in xdisp.c.
14176 (draw_glyphs): Rename from x_draw_glyphs and make static.
14177 (tool_bar_item_info, notice_overwritten_cursor): Make static.
14178 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
14179 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
14180 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
14181 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
14182 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
14183 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
14184 (note_mouse_highlight, x_clear_window_mouse_face)
14185 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
14186 (x_intersect_rectangles): New generic functions for use by xdisp.c
14187 and GUI front-ends.
14188 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
14189 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
14190
14191 * dispextern.h (Display_Info): Generic typedef for *_display_info.
14192 (NativeRectangle): Generic typedef for rectangle type.
14193 (enum window_part): Move here from window.c.
14194 (struct redisplay_interface): New members flush_display_optional,
14195 define_frame_cursor, clear_frame_area, draw_window_cursor,
14196 draw_vertical_window_border, shift_glyphs_for_insert.
14197 Rename member clear_mouse_face to clear_window_mouse_face.
14198 (estimate_mode_line_height_hook): Remove hook.
14199 (auto_raise_tool_bar_buttons_p): Don't declare extern.
14200 (tool_bar_item_info): Remove prototype.
14201 (help_echo_string, help_echo_window, help_echo_object)
14202 (previous_help_echo_string, help_echo_pos)
14203 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
14204 (x_stretch_cursor_p, output_cursor): Declare extern.
14205 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
14206 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
14207 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
14208 (display_and_set_cursor, set_output_cursor, x_cursor_to)
14209 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
14210 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
14211 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
14212 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
14213 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
14214 Add prototypes.
14215 (mode_line_string, marginal_area_string): Fix prototypes.
14216
14217 * window.c (enum window_part): Move to dispextern.h.
14218 (coordinates_in_window): Use enum window_part member names
14219 instead of numbers to describe return value.
14220 (struct check_window_data): Change part member to window_part.
14221 (check_window_containing): Return window_part unaltered.
14222 (window_from_coordinates): Change part arg from int to enum
14223 window_part. Allow part arg to be null. All users changed.
14224
14225 * window.h (window_from_coordinates): Fix prototype.
14226
14227 * term.c (estimate_mode_line_height): Move to xdisp.c.
14228
14229 * keyboard.c (make_lispy_event): Use enum window_part.
14230
14231 * dispnew.c (mode_line_string, marginal_area_string): Use enum
14232 window_part instead of int in arg list. Users changed.
14233
14234 * xterm.h (No_Cursor): Declare as None for X.
14235 (struct mac_output): Replace member cross_cursor by hand_cursor.
14236
14237 * xterm.c: Remove consolidated defines and code.
14238 (BETWEEN): Remove unused macro.
14239 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
14240 (x_define_frame_cursor, x_clear_frame_area)
14241 (x_draw_window_cursor): New X-specific functions for RIF.
14242 (x_redisplay_interface): Add new members.
14243
14244 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
14245
14246 * w32term.h (struct w32_output): Remove cross_cursor member.
14247
14248 * w32term.c: Remove consolidated defines and code.
14249 (BETWEEN): Remove unused macro.
14250 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
14251 (w32_define_frame_cursor, w32_clear_frame_area)
14252 (w32_draw_window_cursor): New W32-specific functions for RIF.
14253 (w32_redisplay_interface): Add new members.
14254
14255 * w32gui.h (No_Cursor): Define as 0 for W32.
14256 (XRectangle): Add X compatible rectangle type.
14257 (NativeRectangle): Declare as RECT for W32.
14258 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
14259
14260 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
14261
14262 * w32console.c: Remove consolidated defines and code.
14263
14264 * msdos.h (Display_Info): Add generic typedef.
14265
14266 * msdos.c: Remove consolidated defines and code.
14267 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
14268
14269 * macterm.h (struct mac_output): Replace member cross_cursor by
14270 hand_cursor.
14271 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
14272
14273 * macterm.c: Remove consolidated defines and code.
14274 (BETWEEN): Remove unused macro.
14275 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
14276 (mac_define_frame_cursor, mac_clear_frame_area)
14277 (mac_draw_window_cursor): New Mac-specific functions for RIF.
14278 (x_redisplay_interface): Add new members.
14279
14280 * macgui.h (No_Cursor): Define as 0 for Mac.
14281 (XRectangle): Add X compatible rectangle type.
14282 (NativeRectangle): Declare as Rect for Mac.
14283 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
14284
14285 * macfns.c (x_set_mouse_color): Setup hand_cursor.
14286 (x_set_cursor_color): Use x_display_and_set_cursor.
14287
14288 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
14289 included from it. Add dependency on keymap.h.
14290
14291 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
14292
14293 2003-03-21 Kenichi Handa <handa@m17n.org>
14294
14295 * fileio.c (Fexpand_file_name): Fix previous change.
14296
14297 2003-03-19 Kenichi Handa <handa@m17n.org>
14298
14299 * fileio.c (Ffile_name_directory): Reconstruct file name by
14300 make_specified_string.
14301 (Ffile_name_nondirectory, Ffile_name_as_directory)
14302 (Fdirectory_file_name, Fexpand_file_name)
14303 (Fsubstitute_in_file_name): Likewise.
14304 (Fread_file_name): Compare decoded homedir with DIR and
14305 DEFAULT_FILENAME.
14306
14307 * alloc.c (make_specified_string): If NCHARS is negative, count
14308 the number of characters.
14309
14310 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14311
14312 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
14313 all widgets.
14314
14315 * gtkutil.h: Removed xg_ignore_next_thumb.
14316
14317 2003-03-18 Kenichi Handa <handa@m17n.org>
14318
14319 * coding.c (Vchar_coding_system_table): Remove this variable.
14320 (Vcoding_system_safe_chars): New variable.
14321 (intersection): Remove this function.
14322 (find_safe_codings): Don't use Vchar_coding_system_table, but try
14323 all codings in SAFE_CODINGS.
14324 (Ffind_coding_systems_region_internal): Adjust for the change of
14325 find_safe_codings. Get generic coding systems from
14326 Vcoding_system_safe_chars.
14327 (Fdefine_coding_system_internal): New function.
14328 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
14329 Initialize and staticpro Vcoding_system_safe_chars.
14330
14331 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14332
14333 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
14334 equal old values before updating.
14335
14336 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
14337
14338 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
14339
14340 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14341
14342 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
14343 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
14344 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
14345 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
14346 (xg_create_scroll_bar): Pass bar to button event callback.
14347 (xg_find_top_left_in_fixed): New function.
14348 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
14349 whole scroll bar area. Get old position with
14350 xg_find_top_left_in_fixed, calculate and only clear needed areas.
14351 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
14352 dragging is in progress. Calculate whole as for Motif.
14353 Remove code that saved last values. Call gtk_range functions to
14354 set scroll bar sizes.
14355
14356 * gtkutil.h: Removed xg_ignore_next_thumb.
14357
14358 2003-03-17 Juanma Barranquero <lektu@terra.es>
14359
14360 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
14361 and files included from it.
14362
14363 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
14364
14365 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
14366 multiple occurrences of the same keymap under different prefixes.
14367 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
14368
14369 2003-03-16 Jason Rumney <jasonr@gnu.org>
14370
14371 * w32gui.h: Use HDC for Display.
14372
14373 * w32term.c (w32_encode_char): Prevent double-byte chars from
14374 crashing Emacs.
14375
14376 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
14377 as binary.
14378
14379 2003-03-16 Juanma Barranquero <lektu@terra.es>
14380
14381 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
14382
14383 2003-03-16 Kim F. Storm <storm@cua.dk>
14384
14385 The following changes consolidate some of the gui-independent
14386 parts of the processing and drawing of "glyph strings" from
14387 xterm.c, w32term.c, and macterm.c into xdisp.c.
14388
14389 * dispextern.h (struct glyph): Reduce face_id member from 22 to
14390 21 bits (this reduces number of faces from 4M to 2M).
14391 Replace W32 specific w32_font_type member (2 bits) by generic
14392 font_type member (3 bits) for portability.
14393 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
14394 (enum draw_glyphs_face): Define here.
14395 (struct glyph_string): Define here. Merge W32 and X versions.
14396 (struct redisplay_interface): New members per_char_metric,
14397 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
14398 (VCENTER_BASELINE_OFFSET): Define here.
14399 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
14400 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
14401
14402 * xdisp.c: Consolidate gui-independent "glyph string" code here.
14403 (dump_glyph_string): Moved here.
14404 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
14405 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
14406 (fill_composite_glyph_string, fill_glyph_string)
14407 (fill_image_glyph_string, fill_stretch_glyph_string)
14408 (left_overwritten, left_overwriting, right_overwritten)
14409 (right_overwriting, get_char_face_and_encoding)
14410 (set_glyph_string_background_width, compute_overhangs_and_x)
14411 (append_glyph, append_composite_glyph, produce_image_glyph)
14412 (take_vertical_position_into_account, append_stretch_glyph)
14413 (produce_stretch_glyph): New generic functions (based on X version).
14414 Call platform specific functions through rif.
14415 (INIT_GLYPH_STRING): New macro, hides W32 details.
14416 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
14417 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
14418 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
14419 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
14420 (notice_overwritten_cursor):
14421 Generic functions exported to platform modules. Users changed.
14422
14423 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
14424 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
14425 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
14426 New macros for consolidated code.
14427
14428 * xterm.c: Remove consolidated defines and code.
14429 (x_per_char_metric, x_encode_char)
14430 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
14431 (x_redisplay_interface): Add new members.
14432
14433 * w32gui.h (Display): Add dummy typedef for consolidation.
14434 (XChar2b): Define alias for wchar_t for consolidation.
14435 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
14436
14437 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
14438 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
14439 New macros for consolidation.
14440
14441 * w32term.c: Remove consolidated defines and code.
14442 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
14443 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
14444 (w32_per_char_metric): Change font_type arg to int for RIF.
14445 (w32_encode_char): Return int according to RIF requirements.
14446 (w32_compute_glyph_string_overhangs): Adapt to RIF.
14447 (w32_get_glyph_overhangs): New function for RIF. Uses generic
14448 x_get_glyph_overhangs.
14449 (w32_redisplay_interface): Add new members.
14450
14451 * macgui.h (XChar2b): Move typedef here for consolidation.
14452 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
14453
14454 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
14455 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
14456 consolidation.
14457
14458 * macterm.c: Remove consolidated defines and code.
14459 (mac_per_char_metric): New function for RIF.
14460 (mac_encode_char): Adapt to new RIF requirements.
14461 (mac_compute_glyph_string_overhangs): Adapt for RIF.
14462 (x_redisplay_interface): Add new members.
14463
14464 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
14465
14466 * keymap.c (Vmenu_events): New var.
14467 (syms_of_keymap): Initialize it.
14468 (where_is_internal): Check more carefully what is a menu event.
14469
14470 2003-03-14 Richard M. Stallman <rms@gnu.org>
14471
14472 * lread.c (read1): After #!, exit loop on eof.
14473
14474 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14475
14476 * gtkutil.h: Add declaration for xg_frame_cleared.
14477
14478 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
14479
14480 * gtkutil.c (struct xg_last_sb_pos): New structure.
14481 (handle_fixed_child): New function.
14482 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
14483 and force a redraw on them.
14484 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
14485 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
14486 so we can avoid unneeded redraws.
14487 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
14488 and force a redraw on the scroll bar.
14489 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
14490 if xg_last_sb_pos shows the positions are up to date.
14491 (xg_frame_cleared): New function.
14492
14493 2003-03-13 Kenichi Handa <handa@m17n.org>
14494
14495 * coding.c (Fdetect_coding_region): Fix docstring.
14496 (Fdetect_coding_string): Fix docstring.
14497
14498 2003-03-13 Andreas Schwab <schwab@suse.de>
14499
14500 * gtkutil.c: Add prototype for create_menus.
14501
14502 * data.c (long_to_cons): Fix type of top.
14503
14504 * xselect.c (selection_data_to_lisp_data): Use int instead of
14505 long for an integer of size 4.
14506
14507 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
14508 (xg_tool_bar_help_callback): Likewise.
14509
14510 2003-03-12 Andreas Schwab <schwab@suse.de>
14511
14512 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
14513
14514 2003-03-12 Kim F. Storm <storm@cua.dk>
14515
14516 The following changes consolidate the fringe handling from
14517 xterm.c, w32term.c, and macterm.c into xdisp.c.
14518
14519 * xdisp.c: Consolidate fringe handling code here.
14520 (left_bits, right_bits, continued_bits, continuation_bits)
14521 (ov_bits, zv_bits): Define fringe bitmaps.
14522 (fringe_bitmaps): New array holding fringe bitmaps.
14523 (draw_fringe_bitmap): Draw a specific bitmap; call display
14524 specific drawing routine via rif->draw_fringe_bitmap.
14525 (draw_row_fringe_bitmaps): Generic replacement for
14526 x_draw_row_fringe_bitmaps; all callers changed.
14527 (compute_fringe_widths): Generic replacement for
14528 x_compute_fringe_widths; all callers changed.
14529
14530 * dispextern.h (enum fringe_bitmap_type): Define here.
14531 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
14532 (fringe_bitmaps): Declare extern.
14533 (struct redisplay_interface): New member draw_fringe_bitmap.
14534 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
14535
14536 * xterm.c: Remove generic fringe code.
14537 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14538 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14539
14540 * w32term.c: Remove generic fringe code.
14541 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
14542 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
14543
14544 * macterm.c: Remove generic fringe code.
14545 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14546 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14547
14548 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
14549
14550 * print.c (Fprin1_to_string): Return unibyte string if possible.
14551
14552 2003-03-09 David Kastrup <dak@gnu.org>
14553
14554 * process.c (read_process_output): We have allocated enough space
14555 for readmax and carryover, so actually use the alloted space.
14556
14557 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14558
14559 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
14560 toolkit scrollbar click.
14561
14562 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
14563 for USE_GTK.
14564 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
14565 also.
14566 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
14567 scrollbar and control is pressed, call x_scroll_bar_handle_click.
14568
14569 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
14570
14571 * gtkutil.c (xg_get_scroll_id_for_window): New function.
14572 (xg_tool_bar_item_expose_callback): New function.
14573 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
14574 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
14575 on the tool bar widget.
14576 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
14577 to expose on the tool bar item widgets.
14578
14579 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14580
14581 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
14582 struct image* when deciding to update (struct image* may have been
14583 deleted from the image cache).
14584
14585 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
14586 the event isn't for a frame (i.e. for dialogs).
14587
14588 2003-03-07 Kenichi Handa <handa@m17n.org>
14589
14590 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
14591 composition components reaches the limit, terminate composing.
14592 (COMPOSITION_OK): New macro.
14593 (detect_coding_iso2022): Use it if an escape sequence for
14594 composition is found.
14595 (coding_restore_composition): Adjust the number of composition
14596 components if it is not sane.
14597
14598 2003-03-06 Juanma Barranquero <lektu@terra.es>
14599
14600 * w32term.h (struct w32_display_info): Add xrdb member to support
14601 passing resources via -xrm on Windows.
14602
14603 * w32term.c (w32_make_rdb): New function.
14604 (w32_term_init): Use it to initialize xrdb member of w32_display_info
14605 struct. Delete leftover code.
14606
14607 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
14608 for resources passed on the command line.
14609
14610 * w32reg.c (w32_get_rdb_resource): New function.
14611 (x_get_string_resource): Use it, so resources passed with -xrm
14612 supercede the ones in the registry.
14613
14614 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14615
14616 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
14617 instead of x_top_window_to_frame.
14618
14619 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14620
14621 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
14622 when restarting Emacs.
14623
14624 2003-03-03 Richard M. Stallman <rms@gnu.org>
14625
14626 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
14627 to run kill-buffer-query-functions.
14628 (Qkill_buffer_query_functions): New var.
14629 (syms_of_buffer): Init and staticpro it.
14630
14631 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14632
14633 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
14634
14635 2003-02-25 Kim F. Storm <storm@cua.dk>
14636
14637 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
14638 If centering point failed to make whole line visible and vscroll
14639 is non-zero, disable vscroll and try centering point again.
14640
14641 * lread.c (read1): Accept `single space' syntax like (? x).
14642
14643 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14644
14645 * keyboard.c (cancel_hourglass_unwind): Surround with
14646 #ifdef HAVE_X_WINDOWS
14647
14648 2003-02-25 Kenichi Handa <handa@m17n.org>
14649
14650 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
14651 process only when "subprocesses" is defined.
14652
14653 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
14654
14655 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
14656
14657 2003-02-24 Juanma Barranquero <lektu@terra.es>
14658
14659 * callint.c (fix_command): Declare as static void and move before
14660 Fcall_interactively.
14661
14662 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
14663 (syms_of_xdisp): Don't initialize Qwhen.
14664
14665 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14666
14667 * keyboard.c (cancel_hourglass_unwind): New function.
14668 (command_loop_1): Cancel hourglass with unwind-protect.
14669
14670 2003-02-23 Richard M. Stallman <rms@gnu.org>
14671
14672 * callint.c (fix_command): New subroutine, from Fcall_interactively.
14673 Detect (when ... (region-beginning)) etc.
14674 (Fcall_interactively): Call fix_command.
14675 (Qif, Qwhen): New variables.
14676 (syms_of_callint): Init and staticpro them.
14677
14678 * regex.c (print_partial_compiled_pattern): Output to stderr.
14679
14680 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14681
14682 * dired.c (directory_files_internal): Don't expand directory.
14683 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
14684 instead. From Lars Hansen <larsh@math.ku.dk>.
14685
14686 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
14687
14688 * fns.c (string_to_multibyte): Remove unused var i.
14689 (Flanginfo): Fix int/Lisp_Object mixup.
14690 (void_call2): New fun.
14691 (Fmap_char_table): Use it in place of call2.
14692
14693 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
14694
14695 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
14696
14697 * keymap.c (copy_keymap_1): Make it static.
14698
14699 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
14700
14701 2003-02-22 David Ponce <david@dponce.com>
14702
14703 * lread.c (Fload): Don't check STRING_MULTIBYTE.
14704
14705 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14706
14707 * process.h: Removed subtty field from struct Lisp_Process.
14708
14709 * process.c (create_process): Remove setting of subtty.
14710 (emacs_get_tty_pgrp): New function.
14711 (Fprocess_running_child_p, process_send_signal):
14712 Call emacs_get_tty_pgrp instead of ioctl.
14713 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
14714
14715 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14716
14717 * keymap.c (Fdefine_key): Doc fix.
14718
14719 2003-02-21 Juanma Barranquero <lektu@terra.es>
14720
14721 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
14722
14723 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
14724 POLLING_PROBLEM_IN_SELECT.
14725
14726 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
14727 Delete #undef of POLLING_PROBLEM_IN_SELECT.
14728
14729 * s/hpux10-20.h: New file.
14730
14731 * process.c (wait_reading_process_input):
14732 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
14733
14734 2003-02-20 Kenichi Handa <handa@m17n.org>
14735
14736 * fontset.c (check_fontset_name): If NAME is nil, return the
14737 default fontset.
14738 (override_font_info): New function.
14739 (Fset_fontset_font): Document that NAME nil means the default fontset.
14740 (Ffontset_info): If FONTSET is not the default fontset, merge
14741 FONTSET onto the copy of the default fontset, and work on that
14742 copy. Document that NAME nil means the default fontset.
14743 (Ffontset_font): Document that NAME nil means the default fontset.
14744
14745 * process.c (setup_process_coding_systems): If the process's
14746 in/out descriptor is -1, do nothing.
14747
14748 2003-02-19 Andreas Schwab <schwab@suse.de>
14749
14750 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
14751 Add prototypes.
14752
14753 2003-02-19 Kenichi Handa <handa@m17n.org>
14754
14755 * xfaces.c (try_alternative_families): Try all scalable fonts if
14756 Vscalable_fonts_allowed is not Qt.
14757
14758 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14759
14760 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
14761
14762 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14763
14764 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
14765 names.
14766
14767 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
14768 (sorted_font_list): Move allocation of struct font_name to
14769 x_face_list_fonts.
14770 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
14771 (Fx_list_fonts): Set maxnames to -1 to get all font names.
14772
14773 2003-02-18 Kim F. Storm <storm@cua.dk>
14774
14775 * lread.c (read1): Fix last change.
14776 "`" is not always special. Allow "?" after a character constant.
14777
14778 2003-02-18 Andrew Choi <akochoi@shaw.ca>
14779
14780 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
14781
14782 2003-02-18 Andreas Schwab <schwab@suse.de>
14783
14784 * window.c (window_scroll_pixel_based): Move outside a
14785 multi-glyph character before setting new window start.
14786
14787 * xdisp.c (in_display_vector_p): New function.
14788 * dispextern.h (in_display_vector_p): Declare.
14789
14790 2003-02-18 Kim F. Storm <storm@cua.dk>
14791
14792 * lread.c (read1): Fix and relax read syntax.
14793 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
14794 Only recognize "," after dotted-pair dot if inside backquote.
14795 Never include "`" or "," (inside backquote) in a symbol.
14796 Allow dotted-pair dot after a character constant.
14797 Allow "`" and "," (inside backquote) after a character constant.
14798
14799 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14800
14801 * gtkutil.c (xg_tool_bar_expose_callback): New function.
14802 (xg_create_tool_bar): Force style of tool bar to be horizontal with
14803 icons. Set name of tool bar to emacs-toolbar.
14804 (update_frame_tool_bar): Connect expose event to
14805 xg_tool_bar_expose_callback.
14806
14807 2003-02-17 Richard M. Stallman <rms@gnu.org>
14808
14809 * keyboard.c (this_command_key_count_reset): New variable.
14810 Initiatize to 0 where this_command_key_count is set.
14811 (read_char): Save and restore this_command_key_count_reset
14812 around input method code.
14813 (read_char): If this_command_key_count_reset, echo reread commands.
14814 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
14815
14816 2003-02-17 Kenichi Handa <handa@m17n.org>
14817
14818 * fns.c (string_to_multibyte): Always return a multibyte string.
14819
14820 2003-02-16 Jason Rumney <jasonr@gnu.org>
14821
14822 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
14823 Negative max_fonts parameter means list all.
14824
14825 2003-02-14 Dave Love <fx@gnu.org>
14826
14827 * fns.c (Flanginfo): Doc fix.
14828
14829 2003-02-13 Kim F. Storm <storm@cua.dk>
14830
14831 * lread.c (read_escape): Interpret \s as a SPACE character, except
14832 for \s-X in a character constant which still is the super modifier.
14833 (read1): Signal an `invalid read syntax' error if a character
14834 constant is immediately followed by a digit or symbol character.
14835
14836 * search.c (Fmatch_data): Doc fix. Explicitly state that
14837 match-data is undefined if last search failed.
14838
14839 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
14840 All uses changed.
14841
14842 2003-02-12 Juanma Barranquero <lektu@terra.es>
14843
14844 * eval.c (Fdefmacro): Fix typo.
14845
14846 2003-02-12 Kim F. Storm <storm@cua.dk>
14847
14848 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
14849 macro is a string, convert meta modifiers in string when copying
14850 the string into a vector.
14851
14852 2003-02-11 Kim F. Storm <storm@cua.dk>
14853
14854 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
14855
14856 2003-02-11 Kenichi Handa <handa@m17n.org>
14857
14858 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
14859
14860 2003-02-10 Kim F. Storm <storm@cua.dk>
14861
14862 * process.c: Doc fixes.
14863 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
14864
14865 2003-02-10 Kenichi Handa <handa@m17n.org>
14866
14867 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
14868
14869 * process.c (QCfilter_multibyte): New variable.
14870 (setup_process_coding_systems): New function.
14871 (Fset_process_buffer, Fset_process_filter):
14872 Call setup_process_coding_systems.
14873 (Fstart_process): Initialize the member `filter_multibyte' of
14874 struct Lisp_Process.
14875 (create_process): Call setup_process_coding_systems.
14876 (Fmake_network_process): New keyward `:filter-multibyte'.
14877 Initialize the member `filter_multibyte' of struct Lisp_Process.
14878 Call setup_process_coding_systems.
14879 (server_accept_connection): Call setup_process_coding_systems.
14880 (read_process_output): If the process has a filter, decide the
14881 multibyteness of a string to given to the filter by
14882 `filter_multibyte' member of the process. If the process doesn't
14883 have a filter and the result of conversion is unibyte, use
14884 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
14885 multibyte form.
14886 (Fset_process_coding_system): Call setup_process_coding_systems.
14887 (Fset_process_filter_multibyte): New function.
14888 (Fprocess_filter_multibyte_p): New function.
14889 (syms_of_process): Intern and staticpro QCfilter_multibyte.
14890 Defsubr Sset_process_filter_multibyte and
14891 Sprocess_filter_multibyte_p.
14892
14893 * process.h (struct Lisp_Process): New member filter_multibyte.
14894
14895 * lisp.h (setup_process_coding_systems): Add prototype.
14896
14897 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
14898 process, update coding systems for the process.
14899
14900 2003-02-09 Kenichi Handa <handa@m17n.org>
14901
14902 * fns.c (string_to_multibyte): New function.
14903 (Fstring_to_multibyte): New function.
14904 (syms_of_fns): Defsubr it.
14905
14906 2003-02-08 Andreas Schwab <schwab@suse.de>
14907
14908 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
14909 instead of the substitution.
14910
14911 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14912
14913 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
14914
14915 * xmenu.c (menu_position_func): Adjust menu popup position so that
14916 the menu is fully visible.
14917
14918 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14919
14920 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
14921 (x_make_frame_invisible, x_wm_set_icon_position):
14922 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
14923
14924 * xfns.c (x_set_name, x_set_title): Ditto.
14925
14926 2003-02-04 Richard M. Stallman <rms@gnu.org>
14927
14928 * keyboard.c (echo_now): Update before_command_echo_length.
14929 (Freset_this_command_lengths): Reset this_command_key_count etc.
14930 immediately rather than arranging to do it later.
14931 (before_command_key_count_1, before_command_echo_length_1)
14932 (before_command_restore_flag): Vars deleted.
14933 (add_command_key): Don't handle before_command_restore_flag.
14934 (read_char, record_menu_key): Don't update before_command_key_count or
14935 before_command_echo_length.
14936 (read_char): Don't handle before_command_restore_flag.
14937
14938 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
14939 in direct-output clauses if it wouldn't be called in the ordinary case.
14940
14941 2003-02-04 Kim F. Storm <storm@cua.dk>
14942
14943 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14944
14945 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14946
14947 * gtkutil.c (remove_from_container): Copying list is not needed.
14948 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14949 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14950 on list returned from gtk_container_get_children to avoid memory leak.
14951
14952 2003-02-01 Jason Rumney <jasonr@gnu.org>
14953
14954 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14955 local malloc.
14956 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14957 definitions in xpm.h.
14958 (init_xpm_functions): New function.
14959 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14960 (init_external_image_libraries): Try to load libXpm.dll.
14961
14962 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14963 timestamp.
14964
14965 2003-01-31 Dave Love <fx@gnu.org>
14966
14967 * syntax.c (Fskip_chars_forward)
14968 (open-paren-in-column-0-is-defun-start): Doc fix.
14969
14970 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14971
14972 * fileio.c: Support // at start of name for Cygwin (just added proper
14973 preprocessor tests).
14974
14975 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14976
14977 * Makefile.in: Use @EXEEXT@ for Cygwin.
14978
14979 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14980
14981 * s/cygwin.h: Added for Cygwin port.
14982
14983 2003-01-31 Juanma Barranquero <lektu@terra.es>
14984
14985 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14986 when including gif_lib.h.
14987 (init_gif_functions, init_tiff_functions): New functions.
14988 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14989 Windows. Disable color table lookups. Call library functions
14990 through pointers determined at runtime.
14991 (init_external_image_libraries): Try to load libungif.dll and
14992 libtiff.dll.
14993
14994 2003-01-31 Kenichi Handa <handa@m17n.org>
14995
14996 * xdisp.c (SKIP_GLYPHS): New macro.
14997 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14998
14999 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15000
15001 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
15002
15003 2003-01-30 Dave Love <fx@gnu.org>
15004
15005 * alloc.c (Vgc_elapsed, gcs_done): New variables.
15006 (Fgarbage_collect): Use them.
15007 (init_alloc, syms_of_alloc): Set them up.
15008
15009 2003-01-30 Juanma Barranquero <lektu@terra.es>
15010
15011 * w32fns.c (init_external_image_libraries): Add missing operator.
15012
15013 2003-01-29 Jason Rumney <jasonr@gnu.org>
15014
15015 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
15016 an alternative name for jpeg.dll.
15017
15018 2003-01-29 Kenichi Handa <handa@m17n.org>
15019
15020 * xdisp.c (set_cursor_from_row): Pay attention to string display
15021 properties.
15022
15023 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
15024
15025 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
15026 <escape>.
15027 (keycode_to_xkeysym_table): Reformat and add more comments.
15028 (XTread_socket): Drop special case for backspace.
15029
15030 2003-01-28 Andrew Choi <akochoi@shaw.ca>
15031
15032 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
15033 values in old-style RGB specs.
15034
15035 2003-01-27 Juanma Barranquero <lektu@terra.es>
15036
15037 * w32fns.c (init_external_image_libraries): Try alternate names for the
15038 jpeg dll.
15039
15040 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15041
15042 * gtkutil.c (create_dialog, xg_separator_p)
15043 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
15044 before calling strcmp or strlen.
15045
15046 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15047
15048 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
15049 and handle image load failure.
15050
15051 2003-01-26 Jason Rumney <jasonr@gnu.org>
15052
15053 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
15054 New functions.
15055 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
15056 Disable color table lookups. Call jpeg library functions
15057 through pointers determined at runtime.
15058 (init_external_image_libraries): Try to load jpeg.dll.
15059
15060 2003-01-25 Richard M. Stallman <rms@gnu.org>
15061
15062 * lisp.h: Declare format2 instead of format1.
15063
15064 * fileio.c (barf_or_query_if_file_exists):
15065 Call format2 instead of format1.
15066
15067 * editfns.c (format2): New function, replaces format1
15068 but takes exactly two Lisp Objects as format args.
15069
15070 * buffer.c (Fkill_buffer): Call format2 instead of format1.
15071
15072 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15073
15074 * xterm.h: Change to return value of x_dispatch_event to int.
15075
15076 * xterm.c (x_filter_event): New function.
15077 (event_handler_gdk, XTread_socket): Call x_filter_event.
15078 (x_dispatch_event): Change to return value of finish.
15079 (event_handler_gdk): Use return value from x_dispatch_event.
15080
15081 * xfns.c (x_window): Call create_frame_xic for GTK version to
15082 initialize input methods.
15083
15084 * gtkutil.h: Add (void) prototypes.
15085
15086 * gtkutil.c (create_menus): Remove code that puts the help menu to
15087 the right.
15088
15089 2003-01-25 Jason Rumney <jasonr@gnu.org>
15090
15091 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
15092 [HAVE_PNG]: Sync with xfns.c version.
15093 (png_load): Adjust colors for Windows. Use Windows
15094 bitmaps. Disable color table lookups.
15095 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
15096 (init_png_functions): New function.
15097 (png_read_from_memory, png_load): Call png library functions
15098 through pointers determined at runtime.
15099 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
15100 (init_external_image_libraries): New function.
15101 (init_xfns): Call it.
15102
15103 2003-01-24 Andreas Schwab <schwab@suse.de>
15104
15105 * minibuf.c (Fminibuffer_message): Verify type of parameter.
15106
15107 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15108
15109 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
15110 of static initializer.
15111
15112 2003-01-24 Dave Love <fx@gnu.org>
15113
15114 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
15115 architectures.
15116
15117 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
15118 Use __alignof__.
15119
15120 2003-01-24 Kenichi Handa <handa@m17n.org>
15121
15122 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
15123 It it is nonzero, don't pretend that an invisible area doesn't exist.
15124 (command_loop_1): Call adjust_point_for_property with proper
15125 second arg.
15126
15127 2003-01-22 Jason Rumney <jasonr@gnu.org>
15128
15129 Sync changes with xterm.c and xfns.c.
15130
15131 * w32term.c (x_draw_glyph_string_foreground)
15132 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15133
15134 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
15135 phys_cursor's hpos is overwritten. This is still not completely
15136 correct, as it doesn't really make sense to use hpos at all to
15137 get the cursor glyph (as that is relative to the width of the
15138 characters on the line, which may have changed during the update).
15139
15140 * w32term.c (notice_overwritten_cursor): Handle the special case
15141 of the cursor being in the first blank non-text line at the
15142 end of a window.
15143
15144 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
15145 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
15146 Compute from the x position returned by x_draw_glyphs.
15147
15148 (x_display_and_set_cursor): Don't set phys_cursor_width here,
15149 except for NO_CURSOR and system caret, to make phys_cursor_width
15150 contain what its name suggests.
15151 (notice_overwritten_cursor): Consider the cursor image erased if
15152 the output area intersects the cursor image in y-direction.
15153
15154 * w32term.c (note_mode_line_or_margin_highlight): Rename from
15155 note_mode_line_highlight and extend.
15156
15157 * w32term.c (last_window): New variable.
15158 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
15159 (note_mouse_movement): Remove reimplemented code in #if 0.
15160
15161 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
15162 not update_mode_lines, and always set it to 1.
15163
15164 2003-01-21 Jason Rumney <jasonr@gnu.org>
15165
15166 * w32fns.c (IDC_HAND): Define it if system headers don't.
15167
15168 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
15169
15170 * w32term.h (struct w32_output): New member hand_cursor.
15171 (WM_EMACS_SETCURSOR): New message definition.
15172
15173 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
15174 function w32_define_cursor.
15175 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
15176 position, change member name output_data.x to output_data.w32 and
15177 add function w32_define_cursor.
15178 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
15179 and change member name output_data.x to output_data.w32.
15180 (w32_initialize_display_info):
15181 Setup dpyinfo->vertical_scroll_bar_cursor.
15182
15183 * w32fns.c (Vx_hand_shape): New variable.
15184 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
15185 WM_EMACS_SETCURSOR.
15186 (x-create-frame): Setup Cursor types.
15187
15188 2003-01-21 David Ponce <david@dponce.com>
15189
15190 * w32term.c (w32_encode_char): For DIM=1 charset, set
15191 ccl->reg[2] to -1 before calling ccl_driver.
15192 (Sync. with xterm.c x_encode_char change by Kenichi Handa
15193 <handa@m17n.org> on 2002-09-30.)
15194 (w32_draw_relief_rect): Declare all args.
15195 (w32_define_cursor): New.
15196
15197 * w32fns.c (w32_load_cursor): New function.
15198 (w32_init_class): Use it.
15199 (x_put_x_image): Declare all args.
15200
15201 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
15202
15203 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
15204
15205 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15206
15207 * gtkutil.c: Must include stdio.h before termhooks.h
15208
15209 2003-01-21 Dave Love <fx@gnu.org>
15210
15211 * alloc.c (Fgc_status): Print zombie list.
15212 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
15213 Fix assignment of zombies.
15214 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
15215 Don't take car of non-cons.
15216
15217 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15218
15219 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15220
15221 2003-01-20 David Ponce <david@dponce.com>
15222
15223 * w32menu.c (digest_single_submenu): Declare all args.
15224
15225 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
15226 changes in xmenu.c:
15227
15228 (parse_single_submenu): Use individual keymap's prompt
15229 string as pane name, if there is one.
15230 (set_frame_menubar): Save menu_items_n_panes from each call to
15231 parse_single_submenu and use it when calling digest_single_submenu.
15232
15233 2003-01-20 Steven Tamm <steventamm@mac.com>
15234
15235 * macterm.c (XTread_socket): Check for valid, visible window
15236 before sending a scroll-wheel event.
15237
15238 2003-01-20 Richard M. Stallman <rms@gnu.org>
15239
15240 * xdisp.c (redisplay_window): If mini window's buffer is not
15241 a minibuffer, then redisplay it like other windows.
15242
15243 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15244
15245 * gtkutil.c (xg_create_frame_widgets): Check if there is an
15246 external tool bar before setting tool bar height.
15247
15248 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15249
15250 * xterm.c (handle_one_xevent): Surround popup_activated
15251 with #ifdef:s for non-toolkit version.
15252
15253 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
15254 (gtkutil.o): New file.
15255 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
15256 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
15257
15258 * gtkutil.c: New file for GTK version.
15259
15260 * gtkutil.h: New file for GTK version.
15261
15262 * xterm.h: Add xt_or_gtk_widget.
15263 Include gtk files for USE_GTK.
15264 (struct x_output): Add toolbar_height.
15265 (struct x_output): Add GTK widgets and Gdk size_hints.
15266 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
15267 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
15268 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
15269
15270 * xterm.c: Include gtkutil.h for USE_GTK.
15271 (free_frame_menubar): Declare extern void for USE_GTK.
15272 (note_mouse_highlight): Check popup_activated for USE_GTK.
15273 (xt_action_hook): Don't compile if USE_GTK.
15274 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
15275 (xg_scroll_callback): New function.
15276 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
15277 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
15278 for USE_GTK.
15279 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
15280 xg_show_scroll_bar for USE_GTK.
15281 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
15282 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
15283 (event_handler_gdk): New function for USE_GTK.
15284 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
15285 (handle_one_xevent): Make sure widget is mapped before
15286 calling x_real_positions for USE_GTK.
15287 (XTread_socket): Add GTK event loop for USE_GTK.
15288 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
15289 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
15290 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
15291 (x_iconify_frame): Add code for USE_GTK.
15292 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
15293 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
15294 is in gtkutil.c.
15295 (x_term_init): Add initialization for GTK.
15296 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
15297
15298 * xmenu.c: Include gtkutil.h for USE_GTK.
15299 (Fx_popup_menu): Use current position if x and y is NIL.
15300 (single_menu_item, single_menu_item, Fx_popup_dialog):
15301 Check for USE_GTK.
15302 (popup_widget_loop): New function for USE_GTK.
15303 (x_activate_menubar): Add code for USE_GTK.
15304 (popup_activate_callback, popup_deactivate_callback)
15305 (menu_highlight_callback, menubar_selection_callback):
15306 Add USE_GTK versions.
15307 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
15308 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
15309 (free_frame_menubar): Only compile if not USE_GTK. GTK version
15310 is in gtkutil.c.
15311 (popup_selection_callback): New version for USE_GTK.
15312 (create_and_show_popup_menu): New fuction, one USE_GTK version and
15313 one USE_X_TOOLKIT version.
15314 (xmenu_show): Call create_and_show_popup_menu.
15315 (dialog_selection_callback): New version for USE_GTK.
15316 (create_and_show_dialog): New fuction, one USE_GTK version and
15317 one USE_X_TOOLKIT version.
15318 (xdialog_show): Call create_and_show_dialog.
15319
15320 * xfns.c: Include gtkutil for USE_GTK.
15321 (x_window_to_frame, x_any_window_to_frame)
15322 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
15323 (x_top_window_to_frame): Add code for USE_GTK.
15324 (x_set_background_color): Call xg_set_background_color for GTK.
15325 (x_set_menu_bar_lines): Check for USE_GTK.
15326 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
15327 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
15328 (x_window): Call xg_create_frame_widgets for USE_GTK.
15329 (Fx_create_frame): Check for USE_GTK
15330 (Fx_file_dialog): New implementation for USE_GTK.
15331
15332 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
15333 (update_menu_bar): Add check for USE_GTK.
15334 (update_tool_bar): Add check for USE_GTK and external tool bar.
15335 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
15336 (redisplay_internal): Add check for USE_GTK and popup_activated.
15337 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
15338 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
15339 (display_menu_bar): Add check for USE_GTK
15340
15341 * lisp.h (Vx_resource_name): Declare extern.
15342
15343 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
15344 for USE_GTK.
15345 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
15346
15347 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
15348 (FRAME_EXTERNAL_TOOL_BAR): New macro.
15349 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
15350
15351 * fileio.c (Fread_file_name): Add check for USE_GTK.
15352
15353 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
15354 Add check for USE_GTK.
15355
15356 * config.in: Added HAVE_GTK
15357
15358 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
15359
15360 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
15361
15362 * charset.h (Funibyte_char_to_multibyte): Export.
15363
15364 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15365
15366 * xmenu.c (mouse_position_for_popup): New function.
15367 (Fx_popup_menu): Call mouse_position_for_popup for X and
15368 mouse_position_hook for others.
15369
15370 2003-01-17 Kim F. Storm <storm@cua.dk>
15371
15372 * editfns.c (Finsert): Mention `string-make-multibyte' and
15373 `string-as-multibyte' in doc string.
15374
15375 2003-01-17 Kenichi Handa <handa@m17n.org>
15376
15377 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
15378
15379 * editfns.c (Fformat): Convert an unibyte char argument that is
15380 formatted by "%c" to multibyte if the total result must be a
15381 multibyte string.
15382
15383 2003-01-16 Kim F. Storm <storm@cua.dk>
15384
15385 * process.c (set-process-filter): Document unibyte/multibyte-ness
15386 of string argument.
15387
15388 2003-01-16 Kenichi Handa <handa@m17n.org>
15389
15390 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
15391
15392 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
15393 (re_search_2): Likewise.
15394
15395 2003-01-15 Kenichi Handa <handa@m17n.org>
15396
15397 * xdisp.c (message_dolog): Fix bug of the case that *Message*
15398 buffer is unibyte.
15399
15400 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
15401
15402 * fns.c (Fsubstring): Clarify doc string.
15403
15404 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
15405 (Fprevious_char_property_change)
15406 (Fnext_single_char_property_change)
15407 (Fprevious_single_char_property_change, Fnext_property_change)
15408 (Fnext_single_property_change, Fprevious_property_change)
15409 (Fprevious_single_property_change, Fadd_text_properties)
15410 (Fput_text_property, Fset_text_properties)
15411 (Fremove_text_properties, Fremove_list_of_text_properties)
15412 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
15413
15414 2003-01-14 Kim F. Storm <storm@cua.dk>
15415
15416 * process.h (struct Lisp_Process): New member plist replaces old
15417 member private_vars. All uses changed.
15418
15419 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
15420 (QCplist): Rename from QCvars. Change all uses.
15421 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
15422 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
15423 (syms_of_process): Intern, staticpro, defsubr these.
15424 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
15425
15426 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
15427
15428 * m/delta.h: Remove (obsolete).
15429
15430 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
15431
15432 * fileio.c (Fdelete_directory, Fdelete_file): Document the
15433 behaviour in front of symlinks.
15434 (Fdelete_file): Raise an error on directories.
15435
15436 2003-01-13 Dave Love <fx@gnu.org>
15437
15438 * fns.c (Freverse): Use QUIT.
15439
15440 2003-01-13 Richard M. Stallman <rms@gnu.org>
15441
15442 * minibuf.c (minibuffer_completion_contents):
15443 Error if point is inside prompt.
15444
15445 * keyboard.c (command_loop_1): Don't redisplay directly
15446 if there's a post-command-hook.
15447
15448 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
15449 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
15450
15451 2003-01-12 Kim F. Storm <storm@cua.dk>
15452
15453 * process.h (struct Lisp_Process): New member private_vars.
15454
15455 * process.c (QCvars): New variable.
15456 (syms_of_process): Intern and staticpro it.
15457 (Fset_process_contact): Removed function.
15458 (Fprocess_variable, Fset_process_variable): New functions.
15459 (syms_of_process): Defsubr them.
15460 (Fstart_process): Initialize private_vars plist to nil.
15461 (Fmake_network_process): New arg :vars to setup the private
15462 variables for new network process.
15463 (server_accept_connection): Copy server's private variables to
15464 client process.
15465
15466 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
15467 crashes). Code rewritten and simplified. Now directly aligns the
15468 pointer and recalculates pure_bytes_used, rather than aligning the
15469 size and adjusting the pointer.
15470
15471 2003-01-11 Kim F. Storm <storm@cua.dk>
15472
15473 * process.c (Fset_process_contact): New function.
15474 (syms_of_process): defsubr it.
15475 (make-network-process): Update doc.
15476
15477 2003-01-10 Andreas Schwab <schwab@suse.de>
15478
15479 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
15480 Reported by Berthold Gunreben <b.gunreben@web.de>.
15481
15482 2003-01-10 Dave Love <fx@gnu.org>
15483
15484 * composite.c (syms_of_composite): Make composition_hash_table weak.
15485
15486 2003-01-09 Kim F. Storm <storm@cua.dk>
15487
15488 * process.c (Fmake_network_process): Convert new port number
15489 to host byte order for `:service t' case. From Mario Lang.
15490
15491 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15492
15493 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
15494 instead of XtAppProcessEvent.
15495
15496 * xterm.c (handle_one_xevent): New function.
15497 (x_dispatch_event): New function.
15498 (XTread_socket): Call handle_one_xevent.
15499
15500 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
15501
15502 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
15503 call XQueryPointer to get coordinates.
15504 (popup_get_selection): Do not set popup_activated_flag to zero,
15505 let popup_deactivate_callback do that. Needed for Motif.
15506 Call x_dispatch_event instead of XtDispatchEvent.
15507 (xmenu_show): Calculate root coordinate from frame top/left position.
15508
15509 2003-01-08 Kim F. Storm <storm@cua.dk>
15510
15511 * process.c (server_accept_connection): Fix recording of new
15512 connection's local address in :local property of contact info.
15513 (Fmake_network_process): Record local network address for new
15514 client processes in :local property of contact info.
15515 (format-network-address): Add arg OMIT-PORT. Change callers.
15516
15517 2003-01-07 Dave Love <fx@gnu.org>
15518
15519 * Makefile.in (fns.o): Depend on coding.h.
15520
15521 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
15522
15523 * minibuf.c (Fread_variable): Doc fix.
15524
15525 * eval.c (Fuser_variable_p): Doc change. For custom variables,
15526 use the same test as for custom-variable-p.
15527
15528 2003-01-05 Richard M. Stallman <rms@gnu.org>
15529
15530 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
15531 Count LAST_LINE_MISFIT in scroll margin for end of window.
15532 Move label too_near_end before setting SCROLL_MARGIN_POS.
15533 Set LAST_LINE_MISFIT before jumping there.
15534
15535 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
15536 scroll_conservatively case. If scrolling that much doesn't change
15537 STARTP, move it down one line.
15538
15539 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
15540 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
15541
15542 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
15543 selected frame.
15544
15545 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
15546 (syms_of_keymap): Staticpro them.
15547 (Fapropos_internal): Initialize them and clear them out.
15548 Don't GCPRO them.
15549
15550 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
15551 Doc fixes.
15552
15553 * lisp.h: New misc type Lisp_Save_Value.
15554 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
15555 (XSAVE_VALUE): New macro.
15556 (struct Lisp_Save_Value): New data type.
15557 (union Lisp_Misc): Add u_save_value alternative.
15558 (make_save_value): Declare.
15559
15560 * alloc.c (make_save_value): New function.
15561
15562 * xterm.c (x_catch_errors): Save dpy using make_save_value.
15563 (x_catch_errors_unwind): Call XSync.
15564
15565 2003-01-01 Richard M. Stallman <rms@gnu.org>
15566
15567 * window.c (window_scroll_pixel_based): Partially undo last change.
15568
15569 * keyboard.c (command_loop_1): Call adjust_point_for_property
15570 in direct action cases for Qforward_char and Qbackward_char.
15571 Set already_adjusted so it won't be done twice.
15572
15573 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
15574
15575 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
15576 type definition of size_t.
15577
15578 2003-01-02 Steven Tamm <steventamm@mac.com>
15579
15580 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
15581 distinguish Carbon GUI builds from X11 builds on darwin.
15582
15583 2002-12-30 Steven Tamm <steventamm@mac.com>
15584
15585 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
15586 to default to t.
15587
15588 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
15589
15590 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
15591
15592 2002-12-28 Steven Tamm <steventamm@mac.com>
15593
15594 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
15595 allow building in a different directory than source. Uses some
15596 GNU Make extensions, but there is no other make on Mac OS X.
15597
15598 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
15599
15600 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
15601 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
15602 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
15603 (Fstring_to_number): Mention the returned value in the doc strings.
15604
15605 2002-12-23 Richard M. Stallman <rms@gnu.org>
15606
15607 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
15608 <scroll-down-aggressively>: Doc fix.
15609
15610 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
15611 string as pane name, if there is one.
15612 (set_frame_menubar): Save menu_items_n_panes from each call to
15613 parse_single_submenu and use it when calling digest_single_submenu.
15614
15615 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
15616 Don't try to make last line fully visible if it is past end of window.
15617
15618 2002-12-22 Steven Tamm <steventamm@mac.com>
15619
15620 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
15621 (mac_menu_show): Add support for hierarchical popup menus.
15622 (add_menu_item): Remove indentation support.
15623 (fill_submenu, fill_menu): Create hierarchical menus
15624 instead of using indentation.
15625
15626 2002-12-22 Richard M. Stallman <rms@gnu.org>
15627
15628 * xdisp.c (try_cursor_movement): Don't call try_window here.
15629 (redisplay_window): Never redisplay minibuffer when inactive.
15630
15631 * window.c (select_window_1): Undo 9/21 change.
15632
15633 2002-12-22 Steven Tamm <steventamm@mac.com>
15634
15635 * macterm.c (XTread_socket): Call KeyTranslate for control and
15636 meta to deal correctly shifted non-alpha characters, like C-S-5
15637 being treated like C-%. Do not look for shift key to deal
15638 with masking off control-key with mac-reverse-ctrl-meta.
15639
15640 2002-12-21 Richard M. Stallman <rms@gnu.org>
15641
15642 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
15643 If it is non-nil, run timers. Use an unwind-protect to requeue
15644 the events that were read ahead.
15645 (popup_get_selection_unwind): New subroutine.
15646 (popup_get_selection_queue): File-scope variable now holds that queue.
15647 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
15648 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
15649 Use an unwind-protect to pop down the dialog box.
15650 (xdialog_show_unwind): New subroutine implements that.
15651
15652 * xdisp.c (row_containing_pos): Change exit test using last_y.
15653 (try_window_id): Abort if row_containing_pos returns null.
15654
15655 * lread.c (load_error_handler): New function.
15656 (Fload): Handle errors in Fsubstitute_in_file_name.
15657 Don't expect Fsignal to return.
15658
15659 * eval.c: Errors and throws work right with interrupt blocking.
15660 (struct catchtag): New elt interrupt_input_blocked.
15661 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
15662 (internal_catch, Fcondition_case, internal_condition_case)
15663 (internal_condition_case_1, internal_condition_case_2): Save it.
15664 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
15665
15666 * editfns.c (Fformat): Add parens.
15667
15668 * dired.c (file_name_completion): Fix that change.
15669 Delete special quit-handling code; just use QUIT.
15670
15671 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
15672
15673 * dired.c (file_name_completion): Close directory on error
15674 just as in directory_files_internal.
15675
15676 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
15677
15678 * window.c (Fset_window_configuration): Set old_point to correct
15679 value when new_current_buffer == current_buffer.
15680
15681 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
15682
15683 Revisited my earlier fix for the following entry in etc/PROBLEMS:
15684 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15685 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15686
15687 These changes were in part based upon suggestions made by Peter
15688 'Luna' Runestig [peter@runestig.com].
15689
15690 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
15691 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
15692 (g_b_init_get_sid_identifier_authority ): Add several static
15693 global variables.
15694
15695 * w32.c (globals_of_w32): New function. Used to initialize those
15696 global variables that must always be initialized on startup even
15697 when the global variable initialized is non zero. Its primary
15698 purpose at this time is to set the global variables
15699 g_b_init_is_windows_9x, g_b_init_open_process_token,
15700 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
15701 g_b_init_get_sid_identifier_authority to 0 on startup.
15702 Called from main.
15703
15704 * w32.c (is_windows_9x): Perform initialization only if
15705 g_b_init_is_windows_9x is equal to 0. On initialization set
15706 g_b_init_is_windows_9x equal to 1.
15707
15708 * w32.c (open_process_token): Perform initialization only if
15709 g_b_init_open_process_token is equal to 0. On initialization set
15710 g_b_init_open_process_token equal to 1.
15711
15712 * w32.c (get_token_information): Perform initialization only if
15713 g_b_init_get_token_information is equal to 0. On initialization
15714 set g_b_init_get_token_information equal to 1.
15715
15716 * w32.c (lookup_account_sid): Perform initialization only if
15717 g_b_init_lookup_account_sid is equal to 0. On initialization
15718 set g_b_init_lookup_account_sid equal to 1.
15719
15720 * w32.c (get_sid_identifier_authority): Perform initialization
15721 only if g_b_init_get_sid_identifier_authority is equal to 0.
15722 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
15723
15724 * w32fns.c (globals_of_w32fns): New function. Used to initialize
15725 those global variables that must always be initialized on startup
15726 even when the global variable initialized is non zero.
15727 Its primary purpose at this time is to initialize the global variable
15728 track_mouse_event_fn.
15729
15730 * w32fns.c (w32_wnd_proc): Remove initialization of
15731 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
15732
15733 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
15734
15735 * w32menu.c (globals_of_w32menu): New function. Used to
15736 initialize those global variables that must always be initialized
15737 on startup even when the global variable initialized is non zero.
15738 Its primary purpose at this time is to initialize the global
15739 variables get_menu_item_info and set_menu_item_info.
15740
15741 * w32menu.c (initialize_frame_menubar): Remove initialization of
15742 get_menu_item_info and set_menu_item_info.
15743
15744 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
15745
15746 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
15747 Declare them.
15748
15749 * emacs.c (main): Call globals_of_w32 prior to calling
15750 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
15751 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
15752 is defined.
15753
15754 * w32term.c (x_update_window_begin): Fix Windows API error
15755 detected by BoundsChecker. Test to determine if
15756 w32_system_caret_hwnd is NULL prior to attempting to use
15757 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
15758
15759 * w32term.c (x_update_window_end): Fix Windows API error
15760 detected by BoundsChecker. Test to determine if
15761 w32_system_caret_hwnd is NULL prior to attempting to use
15762 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
15763
15764 2002-12-17 Kenichi Handa <handa@m17n.org>
15765
15766 * coding.c (coding_system_require_warning): New variable.
15767 (syms_of_coding): DEFVAR it.
15768
15769 * coding.h (coding_system_require_warning): Extern it.
15770
15771 * fileio.c (choose_write_coding_system): Even if
15772 Vcoding_system_for_write is non-nil, if
15773 coding_system_require_warning is nonzero, call
15774 Vselect_safe_coding_system_function.
15775
15776 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
15777
15778 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
15779 (lisp): Add font-core.
15780
15781 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
15782
15783 * textprop.c (text_read_only): New arg `propval'.
15784 (get_char_property_and_overlay): Remove unused var `next_overlay'.
15785 (verify_interval_modification): Use text_read_only's new arg.
15786
15787 2002-12-13 Kenichi Handa <handa@m17n.org>
15788
15789 * coding.c (Funencodable_char_position): Set pend correctly.
15790
15791 2002-12-12 Jason Rumney <jasonr@gnu.org>
15792
15793 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
15794 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
15795 Be more careful about when help_events are generated.
15796
15797 2002-12-12 Steven Tamm <steventamm@mac.com>
15798
15799 * macterm.c (mac_check_for_quit_char): Correctly set the
15800 modifiers of the event to 0.
15801 * mac.c (sys_select): Duplicate rfds before calling select to
15802 ensure that rfds survive the while loop.
15803
15804 2002-12-11 Kim F. Storm <storm@cua.dk>
15805
15806 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
15807 row_containing_pos returned NULL.
15808
15809 2002-12-10 Steven Tamm <steventamm@mac.com>
15810
15811 * mac.c (sys_read): Fix sys_read to not call select if IO is
15812 non-blocking.
15813 (sys_select): Fix sys_select to not use a timeout larger than
15814 the one given.
15815
15816 2002-12-10 Juanma Barranquero <lektu@terra.es>
15817
15818 * editfns.c (Fformat): Use alloca, not _alloca.
15819
15820 2002-12-09 Richard M. Stallman <rms@gnu.org>
15821
15822 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
15823 as the last thing.
15824
15825 2002-12-09 Dave Love <fx@gnu.org>
15826
15827 * s/sol2-8.h: Removed. (Not necessary.)
15828
15829 2002-12-09 Matthew Swift <swift@alum.mit.edu>
15830
15831 * editfns.c (Fformat): Handle precision in string conversion
15832 specifiers like libc functions do (ie, print at most that many
15833 characters).
15834
15835 2002-12-08 Richard M. Stallman <rms@gnu.org>
15836
15837 * xdisp.c (row_containing_pos): Check more carefully
15838 whether charpos is really in the row before returning it.
15839
15840 2002-12-07 Steven Tamm <steventamm@mac.com>
15841
15842 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
15843
15844 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
15845 each stack frame. This may change as it could be time consuming.
15846
15847 * macterm.c (mac_check_for_quit_char, quit_char_comp)
15848 (init_quit_char_handler, mac_determine_quit_char_modifiers)
15849 (mac_initialize): Add code to check for pressing of quit_char
15850 in the OS event queue.
15851
15852 * mac.c (sys_select): Call mac_check_for_quit_char every second
15853 while blocking on select.
15854
15855 * mac.c (sys_read): Use sys_select to test for input first
15856 before calling read, to allow C-g to break.
15857
15858 2002-12-07 Richard M. Stallman <rms@gnu.org>
15859
15860 * minibuf.c (Fcompleting_read): Doc fix.
15861
15862 * lread.c (syms_of_lread) <load-history>: Doc fix.
15863
15864 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
15865
15866 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
15867 autoload.
15868
15869 * data.c (Fdefalias): Record in load-history redefining an autoload.
15870
15871 * alloca.c: Undo ifdef change accidentally made on 12-04.
15872
15873 2002-12-06 Francesco Potorti` <pot@gnu.org>
15874
15875 * xfns.c (png_load): Avoid double gamma correction for PNG images.
15876
15877 2002-12-04 Richard M. Stallman <rms@gnu.org>
15878
15879 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
15880
15881 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
15882
15883 * alloca.c: Don't use #error.
15884
15885 2002-12-03 Dave Love <fx@gnu.org>
15886
15887 * buffer.c (Qucs_set_table_for_input): New.
15888 (Fget_buffer_create): Use it.
15889 (Qset_buffer_major_mode_hook): Deleted.
15890 (Fset_buffer_major_mode): Revert previous change.
15891 (init_buffer_once): Intern ucs-set-table-for-input.
15892 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
15893 Add &Qucs_set_table_for_input.
15894
15895 2002-12-03 Andreas Schwab <schwab@suse.de>
15896
15897 * callint.c (Fcall_interactively): Use next_event only if less
15898 than key_count.
15899
15900 2002-12-02 Andrew Choi <akochoi@shaw.ca>
15901
15902 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
15903 names to 255 characters.
15904
15905 * macterm.c (XTread_socket): If all frames have been collapsed,
15906 expand the first one before handling drag-and-drop events.
15907
15908 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
15909 which is detected by autoconf.
15910
15911 2002-12-01 Steven Tamm <steventamm@mac.com>
15912
15913 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
15914 offset in two hints table to allow prebinding to be redone and
15915 allow the executable to be stripped.
15916
15917 2002-11-29 Dave Love <fx@gnu.org>
15918
15919 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
15920 already provided.
15921
15922 2002-11-29 Richard M. Stallman <rms@gnu.org>
15923
15924 * xdisp.c (start_display): Check more intelligently for
15925 whether the line is continued.
15926 (move_it_vertically_backward): Clear it->continuation_lines_width.
15927
15928 2002-11-28 Dave Love <fx@gnu.org>
15929
15930 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
15931 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
15932
15933 2002-11-27 Steven Tamm <steventamm@mac.com>
15934
15935 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
15936 more descriptive error output from lread.c:Fload upon most require
15937 cycles during boostrapping.
15938
15939 2002-11-27 Jason Rumney <jasonr@gnu.org>
15940
15941 * fileio.c (Finsert_file_contents): Give a more appropriate error
15942 for files bigger than 2Gb when off_t is 32 bit.
15943
15944 * dired.c (Ffile_attributes): Don't return negative file sizes for
15945 files bigger than 2Gb when off_t is 32 bit.
15946
15947 2002-11-27 Dave Love <fx@gnu.org>
15948
15949 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15950
15951 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15952 Test GETPGRP_VOID instead.
15953 [BSD_TERMIOS]: Remove definitions (never used).
15954
15955 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15956 Don't define.
15957 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15958
15959 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15960
15961 2002-11-25 Jason Rumney <jasonr@gnu.org>
15962
15963 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15964 supported.
15965
15966 2002-11-25 Dave Love <fx@gnu.org>
15967
15968 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15969
15970 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15971
15972 2002-11-25 Andreas Schwab <schwab@suse.de>
15973
15974 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15975
15976 2002-11-24 Steven Tamm <steventamm@mac.com>
15977
15978 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15979 determine the size of pointers alloced in unexed space instead
15980 of using possibly invalid emacs_zone pointers. This fixes the
15981 binary incompatibility problems caused by updates to libSystem.B.
15982
15983 2002-11-24 Richard M. Stallman <rms@gnu.org>
15984
15985 * search.c (Fstring_match): Doc fix.
15986
15987 * callint.c (Fcall_interactively): If a command fails because
15988 `*' detects a read-only buffer, but RECORD_FLAG is set,
15989 record it anyway if the args don't actually do tty input.
15990
15991 2002-11-22 Dave Love <fx@gnu.org>
15992
15993 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15994
15995 * keyboard.c (interrupt_signal): Provide forward declaration.
15996 (kbd_buffer_store_event): Don't declare interrupt_signal.
15997
15998 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15999
16000 2002-11-21 Richard M. Stallman <rms@gnu.org>
16001
16002 * eval.c (interactive_p): Skip any number of bytecode
16003 and special form frames, in any order.
16004
16005 2002-11-20 Jason Rumney <jasonr@gnu.org>
16006
16007 * w32fns.c (convert_mono_to_color_image): New function.
16008 (xbm_load, xbm_load_image): Use it when foreground or background
16009 is explicitly set.
16010
16011 2002-11-19 Dave Love <fx@gnu.org>
16012
16013 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
16014
16015 2002-11-18 Jason Rumney <jasonr@gnu.org>
16016
16017 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
16018 (XPutPixel): Swap blue and red.
16019 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
16020 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
16021 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
16022 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
16023
16024 2002-11-18 Dave Love <fx@gnu.org>
16025
16026 * m/orion105.h (HAVE_ALLOCA): Don't define.
16027
16028 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
16029
16030 * m/intel386.h: Don't include alloca.h or define alloca.
16031
16032 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
16033 malloc, realloc, calloc.
16034
16035 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
16036 (bcmp): Don't define.
16037
16038 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
16039
16040 * m/amdahl.h: Don't define LIB_STANDARD.
16041
16042 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
16043
16044 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
16045
16046 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
16047 Don't include alloca.h.
16048
16049 * s/aix3-2.h (HAVE_FSYNC): Don't define.
16050
16051 * regex.c (_GNU_SOURCE): Don't define.
16052
16053 * process.c (_GNU_SOURCE): Don't define.
16054
16055 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
16056
16057 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
16058
16059 * s/sol2-8.h: Include sol2-6.h.
16060
16061 2002-11-18 Miles Bader <miles@gnu.org>
16062
16063 * dispextern.h (struct face): Add `overstrike' field.
16064 * xterm.c (x_draw_glyph_string_foreground)
16065 (x_draw_composite_glyph_string_foreground): Implement overstriking.
16066 * xfaces.c (load_face_font): Set `face->overstrike' based on
16067 result from choose_face_font.
16068 (best_matching_font, choose_face_font): Add `needs_overstrike'
16069 argument, and use it to return whether overstriking is desirable
16070 for this face/font combo.
16071 (set_font_frame_param: Pass new argument to choose_face_font.
16072
16073 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
16074
16075 This change is my fix for the following entry in etc/PROBLEMS:
16076 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
16077 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
16078
16079 * w32.c: Added wrapper functions around the win32 API functions
16080 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
16081 GetSidIdentifierAuthority. These wrapper functions serve two
16082 purposes:
16083 1. They ensure that the wrapped function can never be called
16084 when Emacs is running on an operating system on which they are
16085 not supported (Microsoft Windows 95 / 98 / ME).
16086 2. They call the wrapped functions via function pointers rather
16087 than calling them directly. This avoids taking advantage of the
16088 undocumented fact that although these functions are not supported
16089 in the 9x branch of Microsoft Windows, the functions do exist in
16090 the version of advapi32.dll that is found in the 9x branch of
16091 Microsoft Windows.
16092
16093 * w32.c (init_user_info): Replace the calls to the win32 API
16094 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
16095 and GetSidIdentifierAuthority with calls to the newly added
16096 wrapper functions.
16097
16098 * w32.h: Added extern declarations for the following functions:
16099 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
16100 syms_of_w32menu, and void syms_of_fontset.
16101
16102 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
16103 function pointer track_mouse_event_fn in the handler for the
16104 WM_SETFOCUS message.
16105
16106 * w32menu.c (initialize_frame_menubar): Add code to
16107 reinitialize the function pointers set_menu_item_info and
16108 get_menu_item_info.
16109
16110 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
16111
16112 * sound.c: Added a partial implementation of play-sound-internal
16113 for Microsoft Windows. Added various #ifdef / #else / #endif
16114 code blocks to separate the code that will compile under
16115 Microsoft Windows from the code that is specific to GNU/Linux.
16116 Moved several blocks of code around to make this separation of code
16117 into Windows compatible and GNU/Linux compatible code blocks easier.
16118
16119 * makefile.w32-in: Include sound.c and link with WinMM.lib.
16120
16121 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
16122 added support for play-sound-internal under Windows would be
16123 included in the build of Emacs.
16124
16125 2002-11-16 Jason Rumney <jasonr@gnu.org>
16126
16127 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
16128
16129 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
16130
16131 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
16132
16133 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
16134 (adjust_point_for_property): Move out of display and invisible even if
16135 we were already inside before (in case a property was added while
16136 we weren't looking). Be more careful when handling invisible props.
16137 Skip invisible text as if it really wasn't there at all.
16138
16139 2002-11-15 Jason Rumney <jasonr@gnu.org>
16140
16141 * w32term.c (x_draw_image_foreground)
16142 (w32_draw_image_foreground_1): Use standard copy and invert
16143 operations to draw images.
16144
16145 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
16146 depth of 1.
16147 (xbm_read_bitmap_data): Invert bits as xbm is read in.
16148 (XPutPixel): Don't invert bits here.
16149
16150 2002-11-15 Jason Rumney <jasonr@gnu.org>
16151
16152 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
16153 (w32_draw_image_foreground_1): Handle image masks.
16154 (x_draw_image_glyph_string): Don't BitBlt transparently.
16155
16156 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
16157 (x_from_xcolors): Adjust RGB values for W32.
16158 (image_background, image_background_transparent)
16159 (postprocess_image, x_to_xcolors, x_disable_image)
16160 (x_build_heuristic_mask): Adapt for W32 and enable.
16161 (x_create_x_image_and_pixmap): Mark images with palettes as such.
16162 (xbm_load): Remove unused variable.
16163
16164 2002-11-14 Richard M. Stallman <rms@gnu.org>
16165
16166 * buffer.c (syms_of_buffer): Doc fix.
16167
16168 2002-11-14 Dave Love <fx@gnu.org>
16169
16170 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
16171
16172 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
16173 * xmenu.c (unuse_menu_items, digest_single_submenu):
16174 * xfns.c (x_put_x_image):
16175 * xdisp.c (message2_nolog, set_message):
16176 * undo.c (record_point):
16177 * terminfo.c (tparam):
16178 * syntax.c (scan_sexps_forward):
16179 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
16180 * composite.c (update_compositions):
16181 * cm.c (calccost, cmgoto):
16182 * charset.c (c_string_width): Declare all args (per C99).
16183
16184 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
16185
16186 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
16187 Don't declare.
16188
16189 * emacs.c (main) [!VMS]: Avoid third arg.
16190
16191 * fns.c (Fcopy_sequence): Doc fix.
16192 (Fmap_char_table): Cast `call2'.
16193
16194 2002-11-14 Francesco Potorti` <pot@gnu.org>
16195
16196 * s/sol2-8.h: New file.
16197
16198 2002-11-14 Kim F. Storm <storm@cua.dk>
16199
16200 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
16201 dependency on `risky-local-variable' and the :propertize form.
16202
16203 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
16204
16205 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
16206
16207 * syntax.c (scan_sexps_forward): Undo last patch.
16208 Use a more obvious fix: check eob before updating the syntax table.
16209
16210 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
16211
16212 * syntax.c (scan_sexps_forward): Update syntax table before reading
16213 a char rather than after so we don't update the table past eob.
16214
16215 2002-11-09 Dave Love <fx@gnu.org>
16216
16217 * buffer.c (Fset_buffer_major_mode): Fix last change.
16218
16219 * regex.c (regexec): Fix pmatch declaration.
16220
16221 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
16222
16223 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
16224 to self-inserting characters.
16225 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
16226
16227 * coding.c (Vtranslation_table_for_input): New.
16228 (syms_of_coding): DEFVAR it.
16229
16230 2002-11-08 Juanma Barranquero <lektu@terra.es>
16231
16232 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
16233 window.
16234
16235 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
16236
16237 * process.c (Fformat_network_address): Remove unused locals p,
16238 cp, and i.
16239
16240 2002-11-06 Dave Love <fx@gnu.org>
16241
16242 * buffer.c (Qset_buffer_major_mode_hook): New.
16243 (Fset_buffer_major_mode): Use it.
16244
16245 2002-11-06 Richard M. Stallman <rms@gnu.org>
16246
16247 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
16248 and stop_polling.
16249
16250 * process.c (wait_reading_process_input):
16251 Test POLLING_PROBLEM_IN_SELECT, not hpux.
16252 Avoid initialization for auto Lisp_Object var.
16253
16254 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
16255
16256 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
16257
16258 2002-11-05 Richard M. Stallman <rms@gnu.org>
16259
16260 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
16261
16262 * callint.c (Fcall_interactively): New local filter_specs.
16263 (Fcall_interactively): Check for progn as well as let.
16264 Add a gcpro.
16265 (Qprogn): New variable.
16266 (syms_of_callint): Staticpro and init Qprogn.
16267
16268 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
16269
16270 * lread.c (Feval_buffer): Doc fix.
16271
16272 2002-11-04 Dave Love <fx@gnu.org>
16273
16274 * keyboard.c (read_char): Always translate iff
16275 Vkeyboard_translate_table is a char table and c is valid.
16276
16277 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
16278 and fix C types.
16279
16280 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
16281
16282 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
16283
16284 * editfns.c (get_pos_property): Don't hardcode Qfield.
16285
16286 * keyboard.c (adjust_point_for_property): Handle `display' prop on
16287 overlays. Also handle `invisible' prop.
16288
16289 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
16290
16291 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
16292 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
16293
16294 2002-11-01 Andreas Schwab <schwab@suse.de>
16295
16296 * editfns.c (Fmessage): Revert last change to properly handle %%.
16297
16298 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
16299
16300 * xmenu.c (unuse_menu_items): New fun.
16301 (menu_items_inuse): New var.
16302 (syms_of_xmenu): Initialize it.
16303 (init_menu_items): Use it to detect re-entrance.
16304 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
16305 (Fx_popup_menu): Remove spurious XSETFRAME.
16306
16307 * editfns.c (find_field): Make an exception for nil fields.
16308
16309 2002-11-01 Dave Love <fx@gnu.org>
16310
16311 * m/gec63.h: Deleted.
16312
16313 2002-10-31 Dave Love <fx@gnu.org>
16314
16315 * xterm.c (XTread_socket): Fix last change.
16316 (xaw_scroll_callback): Cast call_data to long to avoid warning.
16317
16318 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
16319
16320 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
16321
16322 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
16323
16324 * editfns.c (overlays_around, get_pos_property): New funs.
16325 (find_field): Use them.
16326 Also be careful not to modify POS before its last use.
16327 (Fmessage): Don't Fformat if there's nothing to format.
16328
16329 2002-10-30 Dave Love <fx@gnu.org>
16330
16331 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
16332 [HAVE_PTY_H]; Include pty.h.
16333
16334 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
16335
16336 * xterm.c (Qeql): Declare.
16337 (Vx_keysym_table): New.
16338 (syms_of_xterm): Initialize it.
16339 (XTread_socket): Use it. Deal with ASCII keysyms.
16340 (XSetIMValues) [HAVE_X11R6]: Prototype.
16341
16342 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
16343 (lispy_kana_keys): Comment out.
16344 (make_lispy_event) [XK_kana_A]: Comment out.
16345 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
16346 Fix sprintf call.
16347
16348 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
16349 regexp.h change).
16350 (TERMINFO, LIBS_TERMCAP): Define.
16351
16352 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
16353 (bcmp): Define conditional on HAVE_BCMP.
16354 (NO_SIOCTL_H): Don't define.
16355 (TIOCSIGSEND): Don't make conditional on IRIX6.
16356
16357 * s/sol2-5.h: Don't include strings.h.
16358 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
16359
16360 * s/irix6-0.h (IRIX6): Don't define.
16361 (bcopy, bcmp, bzero): Don't undef.
16362
16363 * s/irix6-5.h: Don't include strings.h.
16364 (IRIX6): Don't define.
16365 (bcopy, bcmp, bzero): Don't undef.
16366
16367 * syntax.c (Fforward_comment): Doc fix.
16368
16369 2002-10-29 Kim F. Storm <storm@cua.dk>
16370
16371 * process.c (Fsignal_process): Allow PROCESS to be specified by
16372 name in addition to pid (as integer or string).
16373
16374 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
16375
16376 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
16377 environments.
16378
16379 2002-10-27 Kim F. Storm <storm@cua.dk>
16380
16381 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
16382
16383 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
16384
16385 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
16386
16387 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
16388
16389 2002-10-26 Richard M. Stallman <rms@gnu.org>
16390
16391 * editfns.c (Fformat): Detect invalid format letters for floats.
16392
16393 2002-10-25 Kenichi Handa <handa@m17n.org>
16394
16395 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
16396 (x_set_title): Likewise.
16397
16398 2002-10-25 Juanma Barranquero <lektu@terra.es>
16399
16400 * macgui.h:
16401 * w32gui.h: Remove definition of XColor.
16402
16403 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
16404
16405 2002-10-24 Kim F. Storm <storm@cua.dk>
16406
16407 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
16408 Callers changed (supply dummy arg).
16409
16410 * lisp.h (get_window_cursor_type): Update prototype.
16411
16412 * w32term.c (x_display_and_set_cursor): Get active_cursor from
16413 get_window_cursor_type to track system caret.
16414
16415 2002-10-24 Kim F. Storm <storm@cua.dk>
16416
16417 * process.c (Fformat_network_address): New function.
16418 (syms_of_process): Defsubr it.
16419 (list_processes_1): Use it to format :local/:remote address if
16420 service/host is not set; before Emacs would crash in that case.
16421 (Fmake_network_process): Don't use Ffind_operation_coding_system
16422 to setup coding system if host or service is not set.
16423
16424 2002-10-23 Juanma Barranquero <lektu@terra.es>
16425
16426 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
16427
16428 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
16429 COLORREF.
16430
16431 * macgui.h:
16432 * w32gui.h: Add definition of XColor.
16433
16434 * macfns.c:
16435 * w32fns.c:
16436 * xfaces.c: Remove definition of XColor.
16437
16438 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
16439
16440 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
16441
16442 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
16443 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
16444 window if it is dedicated.
16445 (Fshrink_window): Add preserve_before as was done for enlarge_window.
16446 (Vspecial_display_function): Update docstring.
16447
16448 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
16449 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
16450 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
16451
16452 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
16453
16454 * casefiddle.c (casify_region): Don't treat a prefix char as part
16455 of a word when at the beginning.
16456
16457 2002-10-17 Juanma Barranquero <lektu@terra.es>
16458
16459 * lread.c (syms_of_lread): Fix typos.
16460
16461 2002-10-17 Dave Love <fx@gnu.org>
16462
16463 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
16464
16465 2002-10-16 Richard M. Stallman <rms@gnu.org>
16466
16467 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
16468
16469 2002-10-14 Juanma Barranquero <lektu@terra.es>
16470
16471 * w16select.c (syms_of_win16select): Fix docstring for
16472 `selection-coding-system'.
16473
16474 * w32select.c (syms_of_w32select): Likewise.
16475
16476 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
16477
16478 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
16479 a backslash-quoted char.
16480 (scan_lists, scan_sexps_forward): Pacify the compiler.
16481
16482 2002-10-13 Richard M. Stallman <rms@gnu.org>
16483
16484 * window.c (window_scroll): Set immediate_quit.
16485
16486 * print.c (print): When backquote form is the car of a list,
16487 output in old style. Use old_backquote_output to output all
16488 comma forms inside it in old style too.
16489
16490 * buffer.h (struct buffer): Move `undo_list' down below `name'.
16491
16492 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
16493
16494 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
16495 batch mode).
16496
16497 * lread.c (Fload): Doc fix (load-suffixes).
16498
16499 2002-10-10 Steven Tamm <steventamm@mac.com>
16500
16501 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
16502 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
16503 Also switch the default to Qnil from Qt.
16504
16505 2002-10-08 Kenichi Handa <handa@m17n.org>
16506
16507 * coding.c (code_convert_region): When we need more GAP for
16508 conversion, pay attention to the case that coding->produced is not
16509 greater than coding->consumed.
16510
16511 2002-10-07 Richard M. Stallman <rms@gnu.org>
16512
16513 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
16514
16515 2002-10-06 Andrew Choi <akochoi@shaw.ca>
16516
16517 * macmenu.c (mac_menu_show): Add j to count menu items; match
16518 menu_item_selection to it to find selected item.
16519
16520 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16521
16522 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
16523 cases. The correct fix is to pass ReparentNotify to Xt.
16524 The shell widget interprets ConfigureNotify differently depending
16525 on if it has been reparented or not.
16526
16527 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
16528
16529 * editfns.c (Fformat_time_string): Doc fix.
16530
16531 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
16532
16533 * fns.c (Flength): Doc fix.
16534
16535 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
16536
16537 * keyboard.c (keyremap): New struct.
16538 (read_key_sequence): Use it: globally replace keytran_foo with
16539 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
16540 keytran_next and fkey_next to just `next'.
16541
16542 2002-10-04 Steven Tamm <steventamm@mac.com>
16543
16544 * macterm.c (keycode_to_xkeysym_table): Change return to be
16545 treated like an X keysym.
16546
16547 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16548
16549 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
16550 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
16551 This is to also handle x/y changes that occur because of a resize.
16552
16553 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
16554
16555 * frame.c (Vdelete_frame_functions): New variable.
16556 (syms_of_frame): Initialize and defvar it.
16557 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
16558 it when frame's `tooltip' parameter is non-nil.
16559
16560 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
16561
16562 * w32fns.c (x_create_tip_frame): Likewise.
16563
16564 * macfns.c (x_create_tip_frame): Likewise.
16565
16566 2002-09-30 Kenichi Handa <handa@m17n.org>
16567
16568 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
16569 -1 before calling ccl_driver.
16570
16571 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
16572 Only when it is non-nil, handle composition sequence.
16573 (setup_coding_system) <0>: Don't force composition handling.
16574
16575 * Makefile.in (lisp, shortlisp): Add utf-16.elc
16576
16577 2002-09-29 Richard M. Stallman <rms@gnu.org>
16578
16579 * search.c (Freplace_match): Adjust match data for the substitution
16580 just made in the buffer.
16581
16582 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
16583 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
16584
16585 2002-09-27 Richard M. Stallman <rms@gnu.org>
16586
16587 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
16588 (read_char): Use them. Do all exits thru the end of the function.
16589
16590 2002-09-27 Kenichi Handa <handa@etl.go.jp>
16591
16592 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
16593 is nil.
16594
16595 2002-09-26 Richard M. Stallman <rms@gnu.org>
16596
16597 * regex.h (__restrict_arr): Don't define if already defined.
16598
16599 * coding.c (run_pre_post_conversion_on_str):
16600 Save and restore Vdeactivate_mark.
16601
16602 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
16603
16604 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
16605
16606 2002-09-26 Kenichi Handa <handa@etl.go.jp>
16607
16608 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
16609 nonzero, try face's family at first. Otherwise try FAMILY at first.
16610 (choose_face_font): If C is a single byte char or latin-1, call
16611 try_font_list with PREFER_FACE_FAMILY 1.
16612
16613 2002-09-21 Richard M. Stallman <rms@gnu.org>
16614
16615 * window.c (select_window_1): Don't select frame.
16616 Set frame's selected window only when frame itself is selected.
16617 (Fselect_window): Doc fix.
16618
16619 2002-09-18 Kim F. Storm <storm@cua.dk>
16620
16621 * process.c (make-network-process): Doc fix (there is no
16622 network-server-log-function hook).
16623
16624 2002-09-18 Richard M. Stallman <rms@gnu.org>
16625
16626 * print.c (print): Clear out the unused parts of Vprint_number_table.
16627 (syms_of_print): Doc fix for `print-number-table'.
16628
16629 * unexelf.c (unexec): Undo previous change.
16630
16631 2002-09-17 Andreas Schwab <schwab@suse.de>
16632
16633 * m/alpha.h [LINUX]: Don't define DATA_START.
16634
16635 2002-09-16 Dave Love <fx@gnu.org>
16636
16637 * unexelf.c (unexec): Deal with .got, reinstating change from
16638 25-08-1999.
16639
16640 2002-09-13 Richard M. Stallman <rms@gnu.org>
16641
16642 * s/sol2-6.h (UNEXEC): Comment out definition.
16643
16644 * unexsol.c (unexec): Don't downcase first letter of error msg.
16645
16646 * xfaces.c (Fcolor_supported_p): Just one arg is required.
16647
16648 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
16649
16650 * unexsol.c: Include buffer.h, charset.h, coding.h.
16651
16652 2002-09-11 Richard M. Stallman <rms@gnu.org>
16653
16654 * unexsol.c: Don't use report_file_error; do it by hand
16655 using dlerror.
16656
16657 * process.c (wait_reading_process_input, both versions):
16658 Before calling turn_on_atimers, call stop_polling.
16659
16660 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
16661
16662 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
16663 we go to too_near_end, call clear_glyph_matrix.
16664 (redisplay_window): After make_cursor_line_fully_visible,
16665 call clear_glyph_matrix and bypass `goto done'.
16666
16667 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
16668 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
16669
16670 2002-09-10 Richard M. Stallman <rms@gnu.org>
16671
16672 * fileio.c (Fdo_auto_save): Catch error making directory.
16673 Only call push_message if we need to.
16674 At the same time, make an unwind-protect to pop it.
16675 Rename local message_p to old_message_p.
16676 (do_auto_save_make_dir, do_auto_save_eh): New functions.
16677 (do_auto_save_unwind): Don't call pop_message.
16678
16679 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
16680
16681 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
16682
16683 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
16684
16685 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
16686
16687 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
16688
16689 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
16690 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
16691 (re_match_2_internal): Be more careful with infinite loops.
16692
16693 2002-09-10 Kim F. Storm <storm@cua.dk>
16694
16695 * macros.c (end_kbd_macro): New function.
16696 (Fend_kbd_macro): Use it.
16697
16698 * macros.h (end_kbd_macro): Declare extern.
16699
16700 * keyboard.c (Fdiscard_input): If defining keyboard macro,
16701 end and save it instead of discarding it.
16702
16703 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
16704
16705 * s/sol2-6.h: Fix typo. Add comment.
16706
16707 2002-09-09 Richard M. Stallman <rms@gnu.org>
16708
16709 * regex.c (regnum_t): Use signed int, not unsigned int.
16710
16711 * s/sol2-6.h: New file.
16712
16713 * s/sol2-5.h (UNEXEC): Definition deleted.
16714
16715 2002-09-08 Kim F. Storm <storm@cua.dk>
16716
16717 * macros.c (executing_macro_index): Change type to EMACS_INT.
16718 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
16719
16720 * macros.h (executing_macro_index): Change type to EMACS_INT.
16721
16722 2002-09-06 Richard M. Stallman <rms@gnu.org>
16723
16724 * casetab.c (set_case_table): Make canon table point to eqv table.
16725
16726 2002-09-06 Juanma Barranquero <lektu@terra.es>
16727
16728 * coding.c (syms_of_coding): Fix spacing.
16729
16730 * composite.c (Fcompose_region_internal)
16731 (Fcompose_string_internal): Likewise.
16732
16733 * data.c (Flsh): Likewise.
16734
16735 * fontset.c (Fset_fontset_font): Likewise.
16736
16737 * macfns.c (Fx_server_max_request_size): Likewise.
16738
16739 * w16select.c (syms_of_win16select): Likewise.
16740
16741 * w32select.c (syms_of_w32select): Likewise.
16742
16743 * xselect.c (syms_of_xselect): Likewise.
16744
16745 2002-09-05 Richard M. Stallman <rms@gnu.org>
16746
16747 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
16748 call EXTEND_RANGE_TABLE and return a proper value.
16749 (set_image_of_range): Don't call set_image_of_range_1
16750 if no TRANSLATE or if range includes all of Latin-1.
16751 Only call it for the Latin-1 part of the range.
16752 For other cases, make two separate ranges,
16753 one for the original specified characters and one for
16754 their case-conversions.
16755
16756 2002-09-04 Richard M. Stallman <rms@gnu.org>
16757
16758 * s/sol2-5.h (UNEXEC): Use unexsol.o.
16759
16760 * window.c (displayed_window_lines): Correct for one-off bug
16761 in HEIGHT on non-window displays.
16762
16763 * regex.c (set_image_of_range_1): New function.
16764 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
16765 Return a value to indicate running out of memory.
16766 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
16767 (extend_range_table_work_area): New subroutine.
16768 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
16769 Different calling conventions, and used from set_image_of_range{,_1}.
16770 (IMMEDIATE_QUIT_CHECK): Definitions moved.
16771
16772 2002-09-04 Juanma Barranquero <lektu@terra.es>
16773
16774 * makefile.w32-in: All dependencies updated.
16775
16776 2002-09-01 Richard M. Stallman <rms@gnu.org>
16777
16778 * unexsol.c: New file.
16779
16780 * xfns.c (Qbox): Declare external, don't define.
16781
16782 * xdisp.c (redisplay_window) <force-start case>:
16783 If point is on semi-visible last line, reposition
16784 it at previous line.
16785
16786 * alloc.c (display_malloc_warning): Use display-warning.
16787 (malloc_warning_1): Function deleted.
16788
16789 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
16790
16791 * lread.c (read1): Handle #! by skipping the line.
16792
16793 2002-08-31 Richard M. Stallman <rms@gnu.org>
16794
16795 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
16796 Don't include LDFLAGS.
16797 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
16798
16799 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
16800
16801 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
16802 member of x_display_info unless we compile for some window system.
16803
16804 2002-08-31 Kim F. Storm <storm@cua.dk>
16805
16806 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
16807 (get_window_cursor_type): Don't use them.
16808 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
16809
16810 2002-08-30 Kenichi Handa <handa@etl.go.jp>
16811
16812 * xdisp.c (get_next_display_element): Fix previous change.
16813
16814 2002-08-30 Andrew Choi <akochoi@shaw.ca>
16815
16816 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
16817 (expose_window): Use it to fix the display of overlapping
16818 rows (merge code from xterm.c).
16819
16820 * macfns.c (Qbox): Add extern declaration.
16821
16822 2002-08-30 Juanma Barranquero <lektu@terra.es>
16823
16824 * w32fns.c (Qbox): Make extern.
16825 (syms_of_w32fns): Remove initialization of Qbox.
16826
16827 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
16828
16829 * xfns.c (Fx_open_connection): Fix error message.
16830
16831 2002-08-30 Kim F. Storm <storm@cua.dk>
16832
16833 The following changes consolidates the handling of the cursor
16834 type in xdisp.c, moving duplicate code and functionality from
16835 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
16836
16837 * frame.h (enum text_cursor_kinds): Consolidated here.
16838 Added DEFAULT_CURSOR value.
16839 (struct frame) <desired_cursor, cursor_width>
16840 <blink_off_cursor, blink_off_cursor_width>: New fields.
16841 Consolidated from output_x, output_w32 and output_mac structs.
16842 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16843 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
16844
16845 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
16846 Variables consolidated here.
16847 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
16848 (Vcursor_in_non_selected_windows): Renamed from
16849 cursor_in_non_selected_windows and changed to Lisp_Object.
16850 (syms_of_xdisp): Define and staticpro new and moved variables.
16851 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
16852 consolidated here. Recognize Qhollow setting.
16853 (set_frame_cursor_types): New function to set frame cursor types
16854 based on the frame parameters.
16855 (get_window_cursor_type): New function to calculate new cursor
16856 type and width for the specified window. Based on duplicated
16857 code consolidated here.
16858 Enhancements: cursor-in-non-selected-windows may be a cursor type,
16859 check buffer-local alternate-cursor-type and blink-cursor-alist
16860 before using built-in blink off methods.
16861
16862 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
16863
16864 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
16865 (get_specified_cursor_type, get_window_cursor_type)
16866 (set_frame_cursor_types): Added prototypes.
16867
16868 * macfns.c (x_specified_cursor_type): Removed.
16869 (x_set_cursor_type): Use set_frame_cursor_types.
16870 (Qbar, Qbox): Removed.
16871 (syms_of_macfns): Don't intern or staticpro them.
16872
16873 * macterm.c (x_specified_cursor_type): Remove prototype.
16874 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16875 (x_display_and_set_cursor): Use get_window_cursor_type.
16876 Remove unused local variables cursor_non_selected, active_cursor.
16877 Redraw cursor if hbar cursor width changes.
16878 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
16879
16880 * macterm.h (enum text_cursor_kinds): Removed.
16881 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
16882 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16883 (FRAME_DESIRED_CURSOR): Macro removed.
16884
16885 * w32fns.c (Vblink_cursor_alist): Removed.
16886 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16887 (syms_of_w32fns): Don't intern, staticpro, or define them.
16888 (x_specified_cursor_type): Removed.
16889 (x_set_cursor_type): Use set_frame_cursor_types.
16890
16891 * w32term.c (x_specified_cursor_type): Remove prototype.
16892 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16893 (x_display_and_set_cursor): Use get_window_cursor_type.
16894 Remove unused local variables cursor_off_state.
16895 Redraw cursor if hbar cursor width changes.
16896 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
16897
16898 * w32term.h (enum text_cursor_kinds): Removed.
16899 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
16900 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16901 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16902 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16903 (struct w32_display_info) <x_highlight_frame>: Renamed member from
16904 w32_highlight_frame.
16905
16906 * xfns.c (Vblink_cursor_alist): Removed.
16907 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16908 (syms_of_xfns): Don't intern, staticpro, or define them.
16909 (x_specified_cursor_type): Removed.
16910 (x_set_cursor_type): Use set_frame_cursor_types.
16911
16912 * xterm.c (x_specified_cursor_type): Remove prototype.
16913 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16914 (x_display_and_set_cursor): Use get_window_cursor_type.
16915 Remove unused local variables cursor_off_state.
16916 Redraw cursor if hbar cursor width changes.
16917
16918 * xterm.h (enum text_cursor_kinds): Removed.
16919 (struct output_x) <current_cursor, desired_cursor, cursor_width>
16920 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16921 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16922 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16923 (x_specified_cursor_type): Remove prototype.
16924
16925 2002-08-28 Richard M. Stallman <rms@gnu.org>
16926
16927 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16928 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16929 (Vblink_cursor_alist): New variable.
16930 (syms_of_w32fns): Initialize and defvar it.
16931 (x_specified_cursor_type): Recognize Qbox for filled box.
16932 Exceptions are hollow boxes.
16933 (Qbox, Qhollow): New variables.
16934 (syms_of_w32fns): Initialize and staticpro them.
16935
16936 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16937 New macros.
16938 (struct w32_output): New fields blink_off_cursor,
16939 blink_off_cursor_width.
16940 (FRAME_CURSOR_WIDTH): New macro.
16941
16942 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16943 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16944
16945 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16946 for bar cursor.
16947
16948 * w32term.c (expose_overlaps): New function.
16949 (expose_window): Use it to fix the display of overlapping rows.
16950
16951 2002-08-28 Simon Josefsson <jas@extundo.com>
16952
16953 * xfns.c (Fx_open_connection): Improve help when X connection
16954 fails, xhost is insecure and xauth is better.
16955
16956 2002-08-28 Juanma Barranquero <lektu@terra.es>
16957
16958 * makefile.w32-in: Add missing dependencies on w32term.h and
16959 composite.h.
16960
16961 * emacs.c (USAGE1): Add missing newline.
16962
16963 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16964
16965 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16966
16967 2002-08-27 Richard M. Stallman <rms@gnu.org>
16968
16969 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16970 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16971 (Vblink_cursor_alist): New variable.
16972 (syms_of_xfns): Initialize and defvar it.
16973 (x_specified_cursor_type): Recognize Qbox for filled box.
16974 Exceptions are hollow boxes.
16975 (Qbox, Qhollow): New variables.
16976 (syms_of_xfns): Initialize and staticpro them.
16977
16978 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16979 New macros.
16980 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16981
16982 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16983 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16984
16985 * emacs.c (main): Handle --script.
16986 (USAGE1): Mention --script.
16987 (standard_args): Define sort order for --script.
16988
16989 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16990
16991 * xdisp.c (redisplay_updating_p): Variable removed.
16992 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16993 New variables.
16994 (init_iterator): Don't free realized faces if
16995 inhibit_free_realized_faces is set.
16996 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16997 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16998 initialize Qinhibit_free_realized_faces.
16999
17000 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
17001 when iterator is adding glyphs to a glyph matrix.
17002
17003 2002-08-27 Kenichi Handa <handa@etl.go.jp>
17004
17005 * xdisp.c (get_next_display_element): In unibyte case, don't use
17006 octal form for such eight-bit characters that can be converted to
17007 multibyte char.
17008
17009 2002-08-26 Kim F. Storm <storm@cua.dk>
17010
17011 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
17012 foreground and background colors. From Joe Buehler.
17013
17014 2002-08-26 Miles Bader <miles@gnu.org>
17015
17016 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
17017
17018 2002-08-25 Andrew Choi <akochoi@shaw.ca>
17019
17020 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
17021 defined instead of MAC_OSX.
17022
17023 * s/darwin.h (select): Define select to sys_select only if
17024 HAVE_CARBON is defined.
17025 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
17026 (DONT_REOPEN_PTY): #def it.
17027
17028 * macterm.c (XTread_socket): Remove code to call
17029 SendEventToEventTarget for keys with command modifiers when
17030 mac_command_key_is_meta is nil.
17031
17032 2002-08-24 Andreas Schwab <schwab@suse.de>
17033
17034 * eval.c (Fdefvar): Fix last change.
17035
17036 2002-08-23 Richard M. Stallman <rms@gnu.org>
17037
17038 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
17039 Record variables in load history as (defvar . VAR).
17040 (Fdefvar): Don't record in load history if no initial value.
17041 (Qdefvar): New variable.
17042 (syms_of_eval): Init and staticpro it.
17043
17044 * lread.c (syms_of_lread): Doc fix.
17045 (build_load_history): Use Fmember to see if a definition
17046 is already in the Vload_history element.
17047
17048 * process.c (Fstart_process): Remove /: from program name.
17049
17050 * emacs.c (decode_env_path): Don't add /: if file name handler
17051 has a `safe-magic' property.
17052
17053 * callproc.c (Fcall_process): Remove /: from program name.
17054
17055 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
17056
17057 * regex.c (PATFETCH): Remove the translating fetch.
17058 (PATFETCH_RAW): Rename to PATFETCH.
17059 (set_image_of_range): New fun.
17060 (SET_RANGE_TABLE_WORK_AREA): Use it.
17061 (regex_compile): Don't translate the pattern chars so eagerly.
17062 Only do it when inserting an `exactn' bytecode or when handling
17063 a char-range.
17064 (mutually_exclusive_p): Avoid empty statement.
17065
17066 2002-08-22 Kim F. Storm <storm@cua.dk>
17067
17068 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
17069 end up on a partially visible line; this reverts a specific part
17070 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
17071 display error which has been reported several times now.
17072 However it introduces the problem that changes was supposed to fix.
17073 See my comments in the source if you want to debug this further.
17074
17075 2002-08-20 Kenichi Handa <handa@etl.go.jp>
17076
17077 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
17078
17079 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
17080
17081 * msdos.c (croak): Add `void' to definition.
17082
17083 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
17084 Don't define them, they are defined in msdos.c.
17085
17086 * mem-limits.h [MSDOS]: Declare etext.
17087
17088 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
17089 `const' since CORRECT_DIR_SEPS modifies its target.
17090
17091 2002-08-19 Kim F. Storm <storm@cua.dk>
17092
17093 * keyboard.c (Fclear_this_command_keys): Add optional arg
17094 KEEP-RECORD to avoid clearing lossage when we just want to clear
17095 the current key sequence (kmacro needs this).
17096
17097 2002-08-19 Kenichi Handa <handa@localhost>
17098
17099 * composite.c (run_composition_function): Call FUNC if it is fboundp.
17100
17101 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
17102 cons, return Qnil.
17103
17104 2002-08-17 Richard M. Stallman <rms@gnu.org>
17105
17106 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
17107
17108 * sysdep.c [!VMS]: Include sys/files.h.
17109
17110 * editfns.c (save_restriction_restore): Defend from unchained marker.
17111
17112 * buffer.c (overlays_at): Handle extending vec uniformly.
17113 (overlays_in): Handle extending vec from length 0 as in overlays_at.
17114
17115 2002-08-15 Andrew Choi <akochoi@shaw.ca>
17116
17117 * mac.c (init_mac_osx_environment): New function.
17118
17119 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
17120
17121 2002-08-14 Kim F. Storm <storm@cua.dk>
17122
17123 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
17124 executing macro before appending to it (when used from Lisp).
17125 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
17126 which is called prior to each iteration of macro (for kmacro.el).
17127 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
17128
17129 * lisp.h (Fexecute_kbd_macro): Update prototype.
17130
17131 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
17132
17133 2002-08-14 Kenichi Handa <handa@etl.go.jp>
17134
17135 * xselect.c (QUTF8_STRING): New variable.
17136 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
17137 (x_atom_to_symbol): Likewise.
17138 (x_get_local_selection): New argument local_request. If it is
17139 nonzero, call handler_fn with the second arg nil.
17140 (x_handle_selection_request): Call x_get_local_selection with
17141 local_request 0.
17142 (lisp_data_to_selection_data): Don't encode the string here.
17143 (Fx_get_selection_internal): Call x_get_local_selection with
17144 local_request 1.
17145 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
17146
17147 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
17148
17149 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
17150
17151 2002-08-13 Richard M. Stallman <rms@gnu.org>
17152
17153 * minibuf.c (Fminibufferp): New function.
17154 (syms_of_minibuf): Defsubr it.
17155 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
17156
17157 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
17158
17159 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
17160
17161 2002-08-12 Richard M. Stallman <rms@gnu.org>
17162
17163 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
17164 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
17165 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
17166 already.
17167
17168 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
17169
17170 2002-08-11 Andrew Choi <akochoi@shaw.ca>
17171
17172 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
17173 (Vmac_pass_command_to_system): New variable.
17174 (Vmac_pass_control_to_system): New variable.
17175 (do_mouse_moved): Check wp with is_emacs_window.
17176 (XTread_socket): Check window_ptr with is_emacs_window.
17177 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
17178 events back to Mac Toolbox for processing, depending on values of
17179 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
17180 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
17181 Vmac_pass_control_to_system.
17182
17183 2002-08-10 Kenichi Handa <handa@etl.go.jp>
17184
17185 * coding.c (unencodable_char_position): New function.
17186 (Funencodable_char_position): New function.
17187 (syms_of_coding): Defsubr Funencodable_char_position.
17188
17189 2002-08-10 Andrew Choi <akochoi@shaw.ca>
17190
17191 * mac.c (sys_select) [MAC_OSX]: New function.
17192
17193 * macterm.c (MakeMeTheFrontProcess): New function.
17194 (mac_initialize): Call MakeMeTheFrontProcess.
17195
17196 * s/darwin.h: Define select to sys_select.
17197
17198 2002-08-09 Richard M. Stallman <rms@gnu.org>
17199
17200 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
17201
17202 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
17203
17204 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
17205 end of the buffer.
17206
17207 2002-08-08 Ken Raeburn <raeburn@gnu.org>
17208
17209 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
17210
17211 * puresize.h (BASE_PURESIZE): Increase to 910000.
17212
17213 2002-08-08 Kenichi Handa <handa@etl.go.jp>
17214
17215 * coding.c (Ffind_operation_coding_system): For write-region, if
17216 VISIT is a filename, make it the target.
17217
17218 2002-08-07 Richard M. Stallman <rms@gnu.org>
17219
17220 * alloc.c (mark_object): Detect long lists for debugging.
17221 (mark_object_loop_halt): New variable.
17222
17223 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
17224
17225 * data.c (Fmake_variable_frame_local): Doc fix.
17226
17227 2002-08-01 David Ponce <david@dponce.com>
17228
17229 * w32menu.c (local_heap, local_alloc, local_free): New macros.
17230 (malloc_widget_value, free_widget_value)
17231 (w32_free_submenu_strings): Use them.
17232
17233 (push_submenu_start, push_submenu_end, push_left_right_boundary)
17234 (push_menu_pane, push_menu_item, single_keymap_panes)
17235 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
17236 (single_submenu, set_frame_menubar)
17237 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
17238
17239 (Fx_popup_menu): Don't show pop up menu until preceding one is
17240 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
17241
17242 * w32menu.c: Changes adapted from xmenu.c
17243 (set_frame_menubar): First parse all submenus,
17244 then make widget_value trees from them.
17245 Don't allocate any widget_value objects
17246 until we are done with the parsing.
17247 (parse_single_submenu): New function.
17248 (digest_single_submenu): New function.
17249 (single_submenu): Function deleted, replaced by those two.
17250
17251 2002-08-04 Andrew Choi <akochoi@shaw.ca>
17252
17253 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
17254 returns a valid window pointer before proceeding for keyDown and
17255 autoKey events.
17256
17257 2002-08-03 Andrew Choi <akochoi@shaw.ca>
17258
17259 * macterm.c (USE_CARBON_EVENTS): New macro.
17260 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
17261 (x_iconify_frame): Call CollapseWindow.
17262 (Vmac_reverse_ctrl_meta): New variable.
17263 (Vmac_wheel_button_is_mouse_2): New variable.
17264 (init_mac_drag_n_drop): New function.
17265 (mac_do_receive_drag): New function.
17266 (mac_handle_service_event): New function.
17267 (init_service_handler): New function.
17268 (mac_to_emacs_modifiers): New function.
17269 (mac_event_to_emacs_modifiers): New function.
17270 (mac_get_mouse_btn): New function.
17271 (mac_convert_event_ref): New function.
17272 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
17273 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
17274 mac_get_mouse_btn.
17275 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
17276
17277 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
17278 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
17279 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
17280 TOOL_BAR_EVENT for MAC_OS as well.
17281 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
17282 as for WINDOWS_NT.
17283 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
17284
17285 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
17286
17287 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
17288
17289 * xdisp.c (forward_to_next_line_start): Fix a condition that
17290 lead to a newline being skipped.
17291
17292 2002-08-02 Andrew Choi <akochoi@shaw.ca>
17293
17294 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
17295
17296 2002-08-01 Richard M. Stallman <rms@gnu.org>
17297
17298 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
17299
17300 2002-07-31 Andrew Choi <akochoi@shaw.ca>
17301
17302 * macfns.c: #undef init_process before #define-ing it.
17303
17304 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
17305 HAVE_CARBON is defined.
17306
17307 2002-07-31 Richard M. Stallman <rms@gnu.org>
17308
17309 * xmenu.c (set_frame_menubar): First parse all submenus,
17310 then make widget_value trees from them.
17311 Don't allocate any widget_value objects
17312 until we are done with the parsing.
17313 (parse_single_submenu): New function.
17314 (digest_single_submenu): New function.
17315 (single_submenu): Function deleted, replaced by those two.
17316
17317 2002-07-30 Juanma Barranquero <lektu@terra.es>
17318
17319 * w32proc.c (syms_of_ntproc): Fix docstring of
17320 `w32-get-true-file-attributes'.
17321
17322 2002-07-28 Richard M. Stallman <rms@gnu.org>
17323
17324 * s/hpux8.h (HPUX8): Define this before including hpux.h.
17325 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
17326
17327 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
17328
17329 * keyboard.c (make_lispy_event):
17330 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
17331 Explicitly clear up_modifier in event->modifiers.
17332
17333 2002-07-27 Richard M. Stallman <rms@gnu.org>
17334
17335 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
17336
17337 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
17338 for bar cursor.
17339
17340 2002-07-26 Kenichi Handa <handa@etl.go.jp>
17341
17342 * coding.c (detect_coding_iso2022): While checking a byte sequence
17343 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
17344 it in the normal loop.
17345
17346 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
17347
17348 * xterm.c (expose_overlaps): New function.
17349 (expose_window): Use it to fix the display of overlapping rows.
17350
17351 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
17352
17353 2002-07-23 Ken Raeburn <raeburn@gnu.org>
17354
17355 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
17356 since it only depends on XUINT.
17357
17358 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
17359 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
17360 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
17361 Macros deleted.
17362
17363 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
17364 its value over other approaches.
17365 * sysdep.c (start_of_data): Don't define the function if a macro
17366 form has been defined.
17367
17368 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
17369
17370 * xdisp.c (redisplay_updating_p): New variable.
17371 (init_iterator): Don't free realized faces when
17372 redisplay_updating_p is set.
17373 (redisplay_internal): Set redisplay_updating_p while updating
17374 the display.
17375
17376 2002-07-23 Richard M. Stallman <rms@gnu.org>
17377
17378 * editfns.c (Fmessage): Treat "" like nil.
17379
17380 2002-07-23 Kenichi Handa <handa@etl.go.jp>
17381
17382 * xdisp.c (face_before_or_after_it_pos):
17383 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
17384
17385 2002-07-22 Juanma Barranquero <lektu@terra.es>
17386
17387 * callproc.c (init_callproc) [DOS_NT]:
17388 Initialize Vshared_game_score_directory to nil.
17389 (syms_of_callproc) [DOS_NT]: Likewise.
17390
17391 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
17392
17393 * xdisp.c (display_line): Replace an abort with xassert.
17394
17395 2002-07-21 Richard M. Stallman <rms@gnu.org>
17396
17397 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
17398 and END_UNCHANGED when setting buffer_unchanged_p.
17399 Use current_matrix_up_to_date_p to decide whether to use
17400 try_cursor_movement.
17401
17402 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
17403
17404 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
17405
17406 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
17407 Set to nil if dir does not exist.
17408 (syms_of_callproc): Init unconditionally and simply.
17409
17410 * buffer.c (Fbuffer_list): Doc fix.
17411
17412 2002-07-21 Ken Raeburn <raeburn@gnu.org>
17413
17414 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
17415
17416 * buffer.c (mmap_realloc): When shrinking, make sure number of
17417 pages to unmap is rounded towards zero.
17418
17419 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
17420 (XSETINT): Deleted.
17421
17422 * m/att3b.h (XINT): Don't define.
17423 (VALBITS, VALMASK, XTYPE): Deleted.
17424 (DATA_SEG_BITS): Define.
17425 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
17426 ARRAY_MARK_FLAG): Deleted.
17427 (DATA_SEG_BITS): Define.
17428 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
17429 (DATA_SEG_BITS): Define.
17430
17431 2002-07-20 Richard M. Stallman <rms@gnu.org>
17432
17433 * print.c (print_error_message): New args CONTEXT and CALLER.
17434 Calls changed.
17435
17436 * lisp.h (print_error_message): Declare new args.
17437
17438 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
17439 and CONTEXT to print_error_message, don't print them here.
17440 For a Quit, don't use Vsignaling_function.
17441 Call message_log_maybe_newline.
17442
17443 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
17444
17445 2002-07-20 Kim F. Storm <storm@cua.dk>
17446
17447 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
17448
17449 2002-07-19 Ken Raeburn <raeburn@gnu.org>
17450
17451 * bytecode.c (struct byte_stack): Pointers into byte string now
17452 point to const.
17453 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
17454 const.
17455 * charset.h (BCOPY_SHORT): Source pointer now points to const.
17456 * coding.c (encode_eol, detect_coding, detect_eol):
17457 (decode_coding, encode_coding, detect_coding_system):
17458 Source strings now treated as const.
17459 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
17460 modify Lisp string contents.
17461 * coding.h (decode_coding, encode_coding, detect_coding,
17462 detect_eol): Declarations updated.
17463 * composite.c (compose_chars_in_text): Treat Lisp string contents
17464 as const.
17465 * dispnew.c (safe_bcopy): Source pointer now points to const.
17466 * lisp.h (STRING_COPYIN): New macro.
17467 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
17468 (internal_with_output_to_temp_buffer): Declarations updated.
17469 * print.c (temp_output_buffer_setup):
17470 (internal_with_output_to_temp_buffer): Buffer name argument is now
17471 pointer to const.
17472 * sound.c (struct sound_device): Function pointer field "write"
17473 buffer argument now points to const.
17474 (vox_write): Buffer argument points to const.
17475 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
17476 contents as const.
17477 * sysdep.c (emacs_write): Buffer pointer now const.
17478 * term.c (encode_terminal_code): Buffer pointer now const.
17479 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
17480 (x_face_list_fonts, x_update_menu_appearance):
17481 (hash_string_case_insensitive): Treat Lisp string contents as const.
17482
17483 2002-07-19 Juanma Barranquero <lektu@terra.es>
17484
17485 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
17486
17487 * fileio.c (syms_of_fileio): Likewise.
17488 (Ffile_name_as_directory): Fix argument name in docstring.
17489 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
17490
17491 2002-07-18 Richard M. Stallman <rms@gnu.org>
17492
17493 * data.c (Fdefalias): Doc fix.
17494
17495 2002-07-17 Dave Love <fx@gnu.org>
17496
17497 * intervals.h (text_property_stickiness): Use P_.
17498
17499 * ccl.c: Remove `emacs' conditionals.
17500 (ccl_backtrace_table): Fix size spec.
17501 (ccl_driver): Fix type errors.
17502
17503 2002-07-16 Ken Raeburn <raeburn@gnu.org>
17504
17505 * alloc.c (xstrdup, make_string, make_unibyte_string)
17506 (make_multibyte_string, build_string): String pointer args now
17507 point to const.
17508 * charset.c (find_charset_in_text, c_string_width):
17509 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
17510 * fileio.c (report_file_error):
17511 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
17512 (count_combining_before, count_combining_after, insert_1_both):
17513 (insert, insert_and_inherit, insert_string):
17514 (insert_before_markers, insert_before_markers_and_inherit):
17515 * lread.c (intern, oblookup, hash_string):
17516 * minibuf.c (temp_echo_area_glyphs):
17517 * search.c (fast_c_string_match_ignore_case):
17518 * sysdep.c (emacs_open, set_file_times):
17519 * xfaces.c (xstricmp):
17520 * xdisp.c (store_frame_title, string_char_and_length):
17521 (message_dolog, message2, message2_nolog, set_message): Likewise.
17522 (set_message_1): Cast message string argument to const pointer.
17523 * editfns.c (general_insert_function): Insertion function now
17524 takes pointer to const for input data.
17525 * charset.h (find_charset_in_text, c_string_width):
17526 (parse_str_as_multibyte): Declarations updated.
17527 * dispextern.h (xstricmp): Declaration updated.
17528 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
17529 (count_size_as_multibyte, count_combining_before):
17530 (count_combining_after, insert_1, insert_1_both, message_dolog):
17531 (insert, insert_and_inherit, insert_before_markers)
17532 (insert_before_markers_and_inherit, set_message, message2):
17533 (message2_dolog, build_string, make_string, make_unibyte_string):
17534 (make_multibyte_string, intern, oblookup, report_file_error):
17535 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
17536 (emacs_open, xstrdup): Declarations updated.
17537 * systime.h (set_file_times): Declaration updated.
17538
17539 * charset.c (find_charset_in_text, lisp_string_width): Use const
17540 for pointer to lisp string data.
17541 * charset.h (FETCH_STRING_CHAR_ADVANCE):
17542 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
17543 * coding.c (Ffind_coding_systems_region_interval):
17544 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
17545 (Fmake_directory_internal, Fdelete_directory):
17546 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
17547 * fontset.c (font_family_registry, fs_query_fontset):
17548 (list_fontsets):
17549 * frame.c (Fframe_parameter):
17550 * keyboard.c (cmd_error_internal):
17551 * keymap.c (Fdescribe_buffer_bindings):
17552 * lread.c (complete_filename_p, openp):
17553 * minibuf.c (Fminibuffer_complete_word):
17554 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
17555 (face_before_or_after_it_pos, next_element_from_string):
17556 (get_overlay_arrow_glyph_row, display_mode_element):
17557 (decode_mode_spec_coding):
17558 * xterm.c (same_x_server): Likewise.
17559
17560 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
17561 settings of non-existent fields.
17562
17563 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
17564 copy a lisp value.
17565
17566 * lread.c (Fintern_soft): Use string macros instead of
17567 Lisp_String fields.
17568 * keyboard.c (echo_char, parse_modifiers_uncached):
17569 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
17570 * textprop.c (validate_interval_range, interval_of): Likewise.
17571
17572 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
17573
17574 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17575 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
17576 XSTRING()->size_byte.
17577
17578 * lisp.h (SDATA, SREF): Produce rvalue.
17579 (SSET): New macro.
17580 * alloc.c (make_event_array): Use SSET for storing into a string.
17581 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
17582 a string.
17583 * casefiddle.c (casify_object): Use SSET.
17584 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17585 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
17586 address of string contents.
17587 * data.c (Faref): Use SDATA.
17588 (Faset): Use SDATA, SSET.
17589 * dired.c (directory_files_internal): Use SSET.
17590 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
17591 (Fread_file_name): Use SREF, SSET.
17592 * fns.c (concat): Use SSET.
17593 (concat, Fdelete): Use SDATA.
17594 * insdel.c (insert_from_string_1): Use SDATA.
17595 * keyboard.c (Fevent_convert_list): Use SREF.
17596 * lread.c (Fload): Use SDATA, SSET.
17597 * macfns.c (validate_x_resource_name): Use SSET.
17598 * process.c (status_message): Use SSET.
17599 * search.c (wordify): Use SDATA.
17600 (Freplace_match): Use SREF.
17601 * w32fns.c (validate_x_resource_name): Use SSET.
17602 * xfns.c (validate_x_resource_name): Use SSET.
17603 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
17604
17605 2002-07-16 Richard M. Stallman <rms@gnu.org>
17606
17607 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
17608
17609 * xdisp.c (reconsider_clip_changes):
17610 Don't test prevent_redisplay_optimizations_p.
17611 (redisplay_internal): Test prevent_redisplay_optimizations_p
17612 along with clip_changed in some cases.
17613 (try_window_id): Likewise.
17614 (redisplay_window): New local var buffer_unchanged_p.
17615
17616 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
17617
17618 * process.c (create_process): Test USG_SUBTTY_WORKS.
17619 (process_send_signal): Clean up handling of GID.
17620 Detect errors in ioctls meant to set GID.
17621
17622 * window.c (temp_output_buffer_show):
17623 Don't set prevent_redisplay_optimizations_p.
17624
17625 2002-07-15 Juanma Barranquero <lektu@terra.es>
17626
17627 * eval.c (Fdefvaralias): Add docstring argument.
17628
17629 2002-07-15 Ken Raeburn <raeburn@gnu.org>
17630
17631 * lisp.h (STRING_INTERVALS): Produce rvalue.
17632 (STRING_SET_INTERVALS): New macro.
17633 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
17634 * fns.c (Fstring_as_multibyte): Likewise.
17635 * intervals.c (balance_possible_root_interval, delete_interval)
17636 (create_root_interval, copy_intervals_to_string): Likewise.
17637 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
17638 instead of 0.
17639
17640 2002-07-14 Ken Raeburn <raeburn@gnu.org>
17641
17642 * lisp.h (STRING_SET_CHARS): New macro.
17643 (SCHARS, SBYTES): Produce rvalues.
17644 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
17645 * fns.c (concat): Likewise.
17646 * lread.c (read_vector): Likewise.
17647
17648 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
17649 (STRING_SET_UNIBYTE): New macro.
17650 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
17651 length of -1) changed to use STRING_SET_UNIBYTE.
17652 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
17653 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
17654 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
17655 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
17656 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
17657 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
17658 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
17659 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
17660 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
17661 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
17662 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
17663 STRING_BYTES or indirection changed to SCHARS, SBYTES,
17664 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
17665 unchanged for now.
17666
17667 2002-07-13 Kim F. Storm <storm@cua.dk>
17668
17669 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
17670
17671 2002-07-12 Richard M. Stallman <rms@gnu.org>
17672
17673 * fileio.c (Fwrite_region): Doc fix.
17674
17675 * print.c (print_error_message): Don't handle Vsignaling_function here.
17676
17677 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
17678 (command_loop_1): Avoid certain actions after memory-full error.
17679
17680 * eval.c (Fsignal): Don't call cancel_hourglass.
17681 For a memory-full error, don't call Vsignal_hook_function
17682 and don't set Vsignaling_function.
17683
17684 * process.c (process_send_signal): Add abort call.
17685
17686 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
17687
17688 * keymap.c (Fkey_binding): Fix typo.
17689
17690 2002-07-11 Richard M. Stallman <rms@gnu.org>
17691
17692 * alloc.c (Vmemory_full): New variable.
17693 (Vmemory_signal_data): Rename from memory_signal_data.
17694 Uses changed.
17695 (syms_of_alloc): Defvar them.
17696 (memory_full, buffer_memory_full): Set Vmemory_full.
17697
17698 * lisp.h (Vmemory_full): Add declaration.
17699 (current_column, indented_beyond_p): Change declaration.
17700
17701 * indent.c (last_known_column): Declare as double, not float.
17702 (current_column, current_column_1, string_display_width)
17703 (position_indentation): Return `double'.
17704 (indented_beyond_p): Arg `column' is `double'. Callers changed.
17705
17706 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
17707 (back_to_previous_visible_line_start)
17708 (reseat_at_next_visible_line_start, next_element_from_buffer):
17709 Use `double', not `float', when calling indented_beyond_p.
17710
17711 * s/hpux11.h (BROKEN_SA_RESTART): Define.
17712
17713 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
17714
17715 2002-07-11 Juanma Barranquero <lektu@terra.es>
17716
17717 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
17718 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
17719 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
17720 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
17721 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
17722 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
17723
17724 2002-07-10 Juanma Barranquero <lektu@terra.es>
17725
17726 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
17727 All callers changed.
17728
17729 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
17730
17731 * data.c (Fdefalias): Add an optional `docstring' argument.
17732 (set_internal, Fsetq_default): Use XCAR/XCDR.
17733
17734 * composite.c (HASH_VALUE, HASH_KEY):
17735 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
17736
17737 2002-07-09 Kenichi Handa <handa@etl.go.jp>
17738
17739 * callproc.c (Fcall_process): Fix previous change.
17740
17741 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
17742
17743 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
17744 Add support for hash-tables.
17745 (Ftry_completion): Return t even if the string appears multiple times.
17746
17747 * fns.c (Fnconc): Use XCDR.
17748 (Fprovide): Use CONSP and XCDR.
17749 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17750 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
17751 (Fmake_hash_table): Accept `:size nil'.
17752 (Fmakehash): Delete: moved to subr.el.
17753 (syms_of_fns): Don't defsubr makehash.
17754
17755 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17756 (HASH_TABLE_SIZE): Move from fns.c.
17757
17758 2002-07-07 Richard M. Stallman <rms@gnu.org>
17759
17760 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
17761 Instead just return 0 when there is something to be done.
17762 (try_scrolling): If make_cursor_line_fully_visible returns 0,
17763 retry scrolling as if cursor were off the bottom.
17764 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
17765 return CURSOR_MOVEMENT_MUST_SCROLL.
17766 (redisplay_window): If make_cursor_line_fully_visible returns 0,
17767 go to try_to_scroll.
17768
17769 * buffer.c (Fbuffer_local_value): Store current value into its binding
17770 so we get the up-to-date value for the binding that is loaded.
17771
17772 * eval.c (Fdefmacro): Doc fix.
17773
17774 2002-07-05 Dave Love <fx@gnu.org>
17775
17776 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
17777 correctly.
17778
17779 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
17780 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
17781 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
17782 CCL_LookupCharConstTbl.
17783 (syms_of_ccl): Defvar translation-hash-table-vector.
17784
17785 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17786
17787 * xdisp.c: Remove unused variable `face'.
17788
17789 2002-07-04 Juanma Barranquero <lektu@terra.es>
17790
17791 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
17792 obsolescence information.
17793
17794 2002-07-03 Andrew Choi <akochoi@shaw.ca>
17795
17796 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
17797 pattern. Search cache first.
17798 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
17799 for Japanese font.
17800 (XLoadQueryFont): Use it.
17801
17802 2002-07-02 Richard M. Stallman <rms@gnu.org>
17803
17804 * keymap.c (Fdefine_key): Doc fix.
17805
17806 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
17807
17808 2002-07-02 Juanma Barranquero <lektu@terra.es>
17809
17810 * keymap.c (syms_of_keymap): Fix typo.
17811
17812 2002-07-01 Andrew Choi <akochoi@shaw.ca>
17813
17814 * s/darwin.h: Define POSIX_SIGNALS.
17815
17816 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
17817 and FSRefMakePath to convert FSSpec returned with Apple Event to
17818 Posix pathname.
17819 (mac_initialize) [TARGET_API_MAC_CARBON]:
17820 Call init_required_apple_events and disable the `Quit' menu item
17821 provided automatically by the Carbon Toolbox.
17822
17823 2002-07-01 Dave Love <fx@gnu.org>
17824
17825 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
17826 for K&R.
17827
17828 * xterm.c: Fix prototype for K&R.
17829
17830 * term.c (costs_set): Declare static, non-initialized for pcc.
17831
17832 2002-07-01 Richard M. Stallman <rms@gnu.org>
17833
17834 * keyboard.c (timer_last_idleness_start_time): New variable.
17835 (timer_start_idle): Set that.
17836 (read_key_sequence): Use that to reset timer_idleness_start_time
17837 to previous value.
17838
17839 * window.c (Frecenter): With arg, set optional_new_start.
17840
17841 * xdisp.c (redisplay_internal): Make optional_new_start really work.
17842
17843 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
17844 buffer for completion.
17845
17846 2002-06-29 Ken Raeburn <raeburn@gnu.org>
17847
17848 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
17849
17850 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17851
17852 * keyboard.c (readable_filtered_events): New function that filters
17853 FOCUS_IN_EVENT depending on parameter.
17854 (readable_events): Calls readable_filtered_events, not filtering
17855 FOCUS_IN_EVENT.
17856 (get_filtered_input_pending): New function, filtering parameter passed
17857 to readable_filtered_events.
17858 (get_input_pending): Calls get_filtered_input_pending, not filtering
17859 FOCUS_IN_EVENT.
17860 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
17861 FOCUS_IN_EVENT.
17862
17863 * xterm.h (struct x_output): Add focus_state.
17864
17865 * xterm.c (x_focus_changed): New function.
17866 (x_detect_focus_change): New function.
17867 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
17868 EnterNotify and LeaveNotify to track X focus changes.
17869
17870 2002-06-28 Andreas Schwab <schwab@suse.de>
17871
17872 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
17873
17874 2002-06-27 Kim F. Storm <storm@cua.dk>
17875
17876 * xdisp.c (mode_line_string_list, mode_line_string_face)
17877 (mode_line_string_face_prop): New variables.
17878 (store_mode_line_string): New function.
17879 (display_mode_element): Use store_mode_line_string to
17880 add mode-line string elements to mode_line_string_list
17881 when mode_line_string_list is non-nil.
17882 (Fformat_mode_line): Now returns propertized string by
17883 default. New arg NO-PROPS to ignore properties.
17884 (decode_mode_spec): Only add two dashes for %- in propertized
17885 mode-line string.
17886 (syms_of_xdisp): Init and staticpro mode_line_string_list.
17887
17888 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
17889
17890 * minibuf.c (minibuffer_completion_contents): Add return type.
17891
17892 2002-06-27 Juanma Barranquero <lektu@terra.es>
17893
17894 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
17895
17896 2002-06-26 Juanma Barranquero <lektu@terra.es>
17897
17898 * fileio.c (read_file_name_cleanup): Add missing return.
17899
17900 2002-06-26 Richard M. Stallman <rms@gnu.org>
17901
17902 * window.c (Frecenter): Don't set force_start flag.
17903
17904 * minibuf.c (do_completion, Fminibuffer_complete_word)
17905 (Fminibuffer_completion_help): Complete just the text before point.
17906 (minibuffer_completion_contents): New function.
17907
17908 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
17909
17910 * frame.c (frames_bury_buffer): Function deleted.
17911
17912 2002-06-25 Miles Bader <miles@gnu.org>
17913
17914 * callint.c (Fcall_interactively): When checking to see if doprnt hit
17915 the end of callint_message, allow for a terminating '\0'.
17916
17917 2002-06-24 Juanma Barranquero <lektu@terra.es>
17918
17919 * w32select.c: Include composite.h.
17920
17921 * w16select.c: Likewise.
17922
17923 2002-06-24 Kenichi Handa <handa@etl.go.jp>
17924
17925 * callproc.c (Fcall_process): If code detection is necessary,
17926 call detect_coding directly here.
17927
17928 * coding.c (detect_eol): Preserve coding->cmp_data.
17929
17930 * w16select.c (Fw16_get_clipboard_data):
17931 * w32fns.c (w32_to_x_font):
17932 * w32select.c (Fw32_get_clipboard_data):
17933 * xselect.c (selection_data_to_lisp_data):
17934 * xterm.c (XTread_socket): Disable composition handling.
17935
17936 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
17937
17938 * print.c (temp_output_buffer_setup): Kill all local variables.
17939
17940 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17941
17942 * lread.c (Fread): Remove redundant and imprecise declaration.
17943
17944 * xfns.c (check_x_display_info): Use check_x_frame.
17945
17946 * .gdbinit (xprintsym): Use the new `xname' field.
17947 (xsymbol): Use it.
17948
17949 2002-06-22 Jason Rumney <jasonr@gnu.org>
17950
17951 * w32fns.c (file_dialog_callback): New function.
17952 (Fx_file_dialog): Allow selecting directories as well as files.
17953
17954 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17955
17956 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17957 OpenBSD. Add support for mipseb-*-netbsd* machines.
17958
17959 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17960
17961 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17962 black and white before scrolling. Restore frame background and
17963 foreground color after scrolling.
17964 (do_window_update): Call XClearWindow before calling expose_frame.
17965 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17966 FRAME_FOREGROUND_PIXEL of frame.
17967
17968 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17969 test Mac command key as <ALT> key.
17970
17971 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17972
17973 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17974
17975 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17976 Lookup keys in function-key-map immediately so that key-translation-map
17977 can be applied earlier.
17978 Remove function_key_possible and key_translation_possible, replaced
17979 by checking `keytran_start < t'.
17980
17981 * .gdbinit (xsymbol): Use the new `xname' field.
17982
17983 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17984
17985 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17986 test Mac command key as <ALT> key.
17987
17988 * mac.c (do_applescript): Call initialize_applescript if necessary
17989 when first called. Dispose of result_desc only when there is no error.
17990 (Fdo_applescript): Use %d format specifier instead of %ld.
17991
17992 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17993
17994 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17995 of FrontWindow for cases keyDown and autoKey.
17996
17997 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17998 Vdefault_fontset to Monaco with mac-roman coding.
17999
18000 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
18001 init_process before and after inclusion of Carbon/Carbon.h, resp.
18002
18003 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
18004 cursor_gc.
18005 (add_font_name_table_entry): New function.
18006 (init_font_name_table): Use add_font_name_table_entry; add italic,
18007 bold, and bold-italic entries for truetype fonts.
18008
18009 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
18010 for Mac too.
18011 (try_font_list) [MAC_OS]: If no font matches given registry, try
18012 fonts with any registry matching face_family.
18013 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
18014
18015 * s/darwin.h: If autoconf detects the Ncurses library, define
18016 LIBS_TERMCAP to -lncurses to use it.
18017
18018 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
18019
18020 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
18021
18022 2002-06-15 Richard M. Stallman <rms@gnu.org>
18023
18024 * window.c (Fset_window_configuration): Explicitly preserve
18025 the point value that new_current_buffer had at the start.
18026
18027 2002-06-14 Juanma Barranquero <lektu@terra.es>
18028
18029 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
18030 Fix typos.
18031
18032 2002-06-14 Kim F. Storm <storm@cua.dk>
18033
18034 * insdel.c (insert_1_both, insert_from_string_1)
18035 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
18036 insert happened in the end_unchanged region. Otherwise, the
18037 redisplay may be confused and duplicate the last line in the
18038 buffer [seen after save-buffer when require-final-newline==t].
18039
18040 2002-06-13 Jason Rumney <jasonr@gnu.org>
18041
18042 * w32.c (init_environment): Remove EMACSLOCKDIR.
18043 (stat): Swap _S_IFDIR and _S_IFREG.
18044
18045 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18046
18047 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
18048 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
18049 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
18050 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
18051 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
18052 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
18053 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
18054 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
18055 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
18056 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
18057 SELECTION_REQUEST_EVENT, selection_clear_event to
18058 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
18059 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
18060 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
18061 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
18062 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
18063 no_event to NO_EVENT.
18064
18065 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18066
18067 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
18068
18069 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
18070
18071 * intervals.c (textget): Don't forget to `return'.
18072 (lookup_char_property): Use XCAR/XCDR.
18073
18074 2002-06-12 Juanma Barranquero <lektu@terra.es>
18075
18076 * xdisp.c (Fformat_mode_line): Fix typo.
18077
18078 2002-06-12 Kim F. Storm <storm@cua.dk>
18079
18080 * xdisp.c (Fformat_mode_line): New function.
18081 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
18082 (store_frame_title_char, store_frame_title): Use unconditionally.
18083 (init_xdisp): Defsubr Fformat_mode_line.
18084 Initialize frame_title_buf etc. unconditionally.
18085
18086 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
18087
18088 * keyboard.c (read_key_sequence):
18089 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
18090 things through those maps after downcasing events.
18091 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
18092 applies after function-key-map.
18093 Make sure that keytran can be done in the middle in the sequence.
18094 Be careful not to throw away events past the one we downcase.
18095
18096 * lread.c (read_integer): Remove unused var `tem'.
18097 (read1): Fix int/Lisp_Object mixup.
18098
18099 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
18100
18101 2002-06-11 Richard M. Stallman <rms@gnu.org>
18102
18103 * keyboard.c (readable_events): Ignore any number of
18104 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
18105
18106 2002-06-09 Miles Bader <miles@gnu.org>
18107
18108 * xfaces.c (Ftty_supports_face_attributes_p): New function.
18109 (parse_rgb_list, tty_lookup_color): New functions.
18110 (tty_defined_color): Use `tty_lookup_color' to do all the work.
18111 (color_distance, Fcolor_distance): New functions.
18112 (TTY_SAME_COLOR_THRESHOLD): New macro.
18113 (Qtty_color_standard_values): New variable.
18114 (syms_of_xfaces): Initialize new vars & functions.
18115
18116 2002-06-08 Colin Walters <walters@verbum.org>
18117
18118 * textprop.c (Vchar_property_alias_alist): New variable.
18119 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
18120
18121 * intervals.c (lookup_char_property): New function for looking up
18122 overlay and text properties, created from textget.
18123 (textget): Use it.
18124
18125 * intervals.h (lookup_char_property): Declare.
18126 (Vchar_property_alias_alist): Declare.
18127
18128 * buffer.c (Foverlay_get): Use lookup_char_property.
18129
18130 2002-06-07 Sam Steingold <sds@gnu.org>
18131
18132 * xselect.c (lisp_data_to_selection_data): Fix last change:
18133 *data_ret is not a Lisp string, while unibyte_string is.
18134
18135 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
18136
18137 * xselect.c (lisp_data_to_selection_data): Fix last change:
18138 set size_ret.
18139
18140 2002-06-07 Andreas Schwab <schwab@suse.de>
18141
18142 * m/amdx86-64.h: New file.
18143
18144 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
18145
18146 * fns.c (Fstring_make_unibyte): Doc fix.
18147
18148 * xselect.c (lisp_data_to_selection_data): If the requested type
18149 is STRING, call string_make_unibyte to encode the selected text
18150 as a string.
18151
18152 * window.c (Fset_window_hscroll): Doc fix.
18153
18154 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18155
18156 * fileio.c (choose_write_coding_system):
18157 Call select-safe-coding-system properly.
18158
18159 2002-06-03 Richard M. Stallman <rms@gnu.org>
18160
18161 * xdisp.c (message_with_string): Error if STRING is not a string.
18162
18163 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
18164
18165 * fileio.c (choose_write_coding_system): Pass FILE arg to
18166 Vselect_safe_coding_system_function.
18167
18168 2002-06-03 Ken Raeburn <raeburn@gnu.org>
18169
18170 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
18171
18172 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
18173
18174 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
18175 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
18176 * keymap.c (describe_command): Likewise.
18177 * minibuf.c (read_minibuf): Likewise.
18178
18179 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
18180 Cast `current_column' return value to int.
18181 (back_to_previous_visible_line_start)
18182 (reseat_at_next_visible_line_start, next_element_from_buffer):
18183 Cast `indented_beyond_p' 3rd arg to float.
18184
18185 * indent.c (last_known_column): Now a float.
18186 (current_column_1, position_indentation, current_column)
18187 (string_display_width): Return float.
18188 (Fcurrent_column): Cast `current_column' return value to int.
18189 (Fcurrent_indentation): Cast `position_indentation' retval to int.
18190 (indented_beyond_p): Third arg now a float.
18191 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
18192
18193 * lisp.h (current_column): Now returns float.
18194 (indented_beyond_p): 3rd arg now a float.
18195
18196 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
18197
18198 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
18199 is Qcompound_text_with_extensions.
18200
18201 * xselect.c (lisp_data_to_selection_data): Always set selection
18202 type as string if x_encode_text returns streingp non-NULL.
18203
18204 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
18205
18206 2002-05-30 Richard M. Stallman <rms@gnu.org>
18207
18208 * window.c (Fset_window_configuration): Correct the handling
18209 of point in current buffer, to work with multiple windows.
18210
18211 2002-05-29 Colin Walters <walters@verbum.org>
18212
18213 * lread.c (Fread_from_string): Don't depend on order of evaluation
18214 for C function parameters.
18215
18216 2002-05-28 Richard M. Stallman <rms@gnu.org>
18217
18218 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
18219 way for blinked-off state and for a nonselected window.
18220
18221 * window.c (window_scroll_pixel_based): Don't call Fbolp;
18222 instead, see if the new start pos is at beginning of line.
18223
18224 * fileio.c (Fwrite_region): If START is a string, don't
18225 make any annotations.
18226
18227 * eval.c (syms_of_eval): Doc fix.
18228
18229 2002-05-28 Colin Walters <walters@debian.org>
18230
18231 * emacs.c (USAGE1): Add --no-splash.
18232 (standard_args): Ditto.
18233
18234 2002-05-28 Colin Walters <walters@gnu.org>
18235
18236 * lread.c (readchar_count): New variable.
18237 (readchar): Increment it.
18238 (unreadchar): Decrement it.
18239 (read_multibyte): Decrement it.
18240 (Vread_with_symbol_positions): New variable.
18241 (Vread_symbol_positions_list): New variable.
18242 (read_internal_start): New function, created from Fread and
18243 Fread_from_string. Handle Vread_symbol_positions_list and
18244 Vread_with_symbol_positions.
18245 (readevalloop, Fread, Fread_from_string): Use it.
18246 (read1): Use readchar_count to add symbol positions to
18247 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
18248 (syms_of_lread): DEFVAR_LISP and initialize them.
18249
18250 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
18251 (substitute_object_recurse, substitute_object_in_subtree)
18252 (substitute_in_interval): Prototype.
18253 (read_multibyte): Return c if it's less than zero.
18254
18255 2002-05-28 Kim F. Storm <storm@cua.dk>
18256
18257 * fileio.c (Fread_file_name_internal): Added brute-force
18258 speed up for using predicate file-directory-p.
18259
18260 2002-05-28 Kim F. Storm <storm@cua.dk>
18261
18262 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
18263 New variables.
18264 (syms_of_fileio): DEFVAR_LISP them.
18265 (read_file_name_cleanup): New unwind function.
18266 (Fread_file_name_internal): Only return completions satifying
18267 Vread_file_name_predicate. Temporarily unwind protect and rebind
18268 default-directory while checking completions against the predicate.
18269 (Fread_file_name): Added PREDICATE argument. Specbind it to
18270 Vread_file_name_predicate during completion.
18271 Call Vread_file_name_function to read the file name if non-nil.
18272
18273 * lisp.h (Fread_file_name): Now has 6 args.
18274
18275 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
18276 predicate for Fread_file_name when reading directory name.
18277 Supply Qnil for predicate in other calls to Fread_file_name.
18278
18279 2002-05-26 Miles Bader <miles@gnu.org>
18280
18281 * term.c (tty_capable_p): New function.
18282 * dispextern.h (tty_capable_p): New function declaration.
18283 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
18284 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
18285
18286 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
18287
18288 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
18289 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
18290 (Vwrite_region_annotate_functions): Docstring fix.
18291
18292 2002-05-23 Kim F. Storm <storm@cua.dk>
18293
18294 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
18295 phys_cursor's hpos is overwritten. This is still not completely
18296 correct, as it doesn't really make sense to use hpos at all to
18297 get the cursor glyph (as that is relative to the width of the
18298 characters on the line, which may have changed during the update).
18299
18300 2002-05-22 Jason Rumney <jasonr@gnu.org>
18301
18302 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
18303 Lisp_Object.
18304 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
18305 Use modified enumfont_t struct.
18306
18307 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
18308
18309 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
18310 Handle the `hbar' cursor type.
18311 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
18312
18313 * w32fns.c (Qhbar): New variable.
18314 (x_specified_cursor_type): Use it.
18315
18316 2002-05-21 Ken Raeburn <raeburn@gnu.org>
18317
18318 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
18319 now, when the address is needed.
18320
18321 2002-05-21 Colin Walters <walters@gnu.org>
18322
18323 * Makefile.in (shortlisp): Add font-core.el.
18324
18325 2002-05-20 Richard M. Stallman <rms@gnu.org>
18326
18327 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
18328
18329 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
18330 equivalent key bindings here.
18331
18332 2002-05-20 Ken Raeburn <raeburn@gnu.org>
18333
18334 Change symbol structure to contain a lisp object for the symbol
18335 name:
18336 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
18337 object field named "xname".
18338 (SYMBOL_NAME): New macro.
18339 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
18340 name field.
18341 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
18342 (mark_object, gc_sweep): Use symbol xname field and XSTRING
18343 instead of name field.
18344 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
18345 SYMBOL_NAME instead of XSYMBOL and name field.
18346 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
18347 instead of XSYMBOL and name field.
18348 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
18349 and SYMBOL_NAME instead of XSYMBOL and name field.
18350 * coding.c (Fread_coding_system, code_convert_region1)
18351 (code_convert_string1, code_convert_string_norecord)
18352 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
18353 XSYMBOL and name field.
18354 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
18355 (Fmake_variable_buffer_local, Fmake_local_variable)
18356 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
18357 of XSYMBOL and name field.
18358 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
18359 XSYMBOL and name field.
18360 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
18361 instead of XSYMBOL and name field.
18362 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
18363 XSYMBOL and name field.
18364 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
18365 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
18366 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
18367 instead of XSYMBOL and name field.
18368 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
18369 (parse_modifiers, apply_modifiers, Fevent_convert_list)
18370 (parse_solitary_modifier, Fexecute_extended_command):
18371 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
18372 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
18373 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
18374 of XSYMBOL and name field.
18375 (describe_command, describe_translation): Use SYMBOL_NAME and
18376 assignment instead of XSYMBOL and name field and XSETSTRING.
18377 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
18378 instead of XSYMBOL and name field.
18379 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
18380 name field and XSETSTRING.
18381 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
18382 of XSYMBOL and name field.
18383 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
18384 assignment instead of XSYMBOL and name field and XSETSTRING.
18385 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
18386 XSTRING instead of XSYMBOL and name field.
18387 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
18388 and XSTRING instead of XSYMBOL and name field.
18389 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
18390 and XSTRING instead of XSYMBOL and name field.
18391 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
18392 XSTRING instead of XSYMBOL and name field.
18393 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
18394 of XSYMBOL and name field.
18395 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
18396 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
18397
18398 2002-05-19 Ken Raeburn <raeburn@gnu.org>
18399
18400 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
18401 and XCDR real rvalues in most configurations.
18402
18403 * buffer.c (fix_overlays_in_range, fix_overlays_before):
18404 Don't take the address of the cdr part of a cons cell; instead, track
18405 the parent cell and call XSETCDR, or set the variable for the head
18406 of the list if we haven't started down the list yet.
18407
18408 2002-05-19 Richard M. Stallman <rms@gnu.org>
18409
18410 * doc.c (reread_doc_file): Don't ask for confirmation.
18411
18412 2002-05-18 Jason Rumney <jasonr@gnu.org>
18413
18414 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
18415 (xbm_load_image): Use it.
18416 (xbm_load): Ditto.
18417 (xbm_read_bitmap_data): Reverted to xfns.c version.
18418 From David Ponce <david@dponce.com>.
18419
18420 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
18421
18422 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
18423 2.02 and later.
18424
18425 2002-05-16 Juanma Barranquero <lektu@terra.es>
18426
18427 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
18428
18429 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
18430
18431 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
18432 meaningful test.
18433 (read_char_minibuf_menu_prompt): Fix typo.
18434
18435 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
18436
18437 * eval.c (Fcommandp): Doc fix.
18438
18439 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
18440
18441 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
18442 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
18443 (Fset_keymap_parent): Gcpro a bit more.
18444 (access_keymap): Gcpro around meta_map call and around the main loop.
18445 (get_keyelt): Gcpro when following indirect references.
18446 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
18447 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
18448 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
18449 Remove useless ad-hoc remap code.
18450
18451 2002-05-13 Richard M. Stallman <rms@gnu.org>
18452
18453 * search.c (search_buffer): Give up boyer moore search if inverse
18454 translation change charset_base.
18455
18456 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
18457
18458 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
18459 characters is carried over from the previous block of text, adjust
18460 coding->produced to account for the extra character.
18461
18462 2002-05-11 Andreas Schwab <schwab@suse.de>
18463
18464 * coding.c (intersection): Keep the elements of the returned list
18465 in the same order as in the first list.
18466
18467 2002-05-11 Kim F. Storm <storm@cua.dk>
18468
18469 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
18470 only update cmm_size if realloc actually succeeds.
18471 Testing with initial size of 2 elements revealed that using
18472 realloc on GNU/Linux would cause a random trap in xmalloc
18473 later on, so I rewrote the code to use malloc/bcopy/free instead
18474 of realloc.
18475
18476 2002-05-10 Jason Rumney <jasonr@gnu.org>
18477
18478 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
18479
18480 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
18481
18482 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
18483 parens, to ensure correct evaluation order.
18484
18485 2002-05-10 Kim F. Storm <storm@cua.dk>
18486
18487 * keymap.c (Vemulation_mode_map_alists): New variable.
18488 (syms_of_keymap): DEFVAR_LISP it.
18489 (current_minor_maps): Process keymap alists in that list before
18490 minor-mode-overriding-map-alist and minor-mode-map-alist.
18491
18492 2002-05-09 Richard M. Stallman <rms@gnu.org>
18493
18494 * search.c (Freplace_match): Doc fix.
18495
18496 2002-05-09 Kim F. Storm <storm@cua.dk>
18497
18498 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
18499 Enlarge cursor rectangle drawn around image with non-zero relief.
18500
18501 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
18502 Enlarge cursor rectangle drawn around image with non-zero relief.
18503
18504 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
18505 Enlarge cursor rectangle drawn around image with non-zero relief.
18506
18507 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
18508
18509 * xselect.c (lisp_data_to_selection_data): Don't set selection
18510 type if comes from the Lisp object's car. If the selection
18511 contains a pure ASCII text, always return QSTRING as its type.
18512
18513 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18514
18515 * mac.c (mac-cut-function): Doc fix.
18516
18517 2002-05-05 Richard M. Stallman <rms@gnu.org>
18518
18519 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
18520
18521 2002-05-04 Jason Rumney <jasonr@gnu.org>
18522
18523 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
18524 for event-click-count.
18525
18526 * process.c (init_process): Only add server subfeature if we can
18527 use non-blocking I/O.
18528
18529 2002-05-04 Andrew Choi <akochoi@shaw.ca>
18530
18531 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
18532 repeatedly.
18533
18534 2002-05-03 Jason Rumney <jasonr@gnu.org>
18535
18536 * process.c (Fmake_network_process): Only support server sockets
18537 when we can make them non-blocking.
18538
18539 * s/ms-w32.h (HAVE_SELECT): Define.
18540
18541 * w32.h (FILE_NDELAY): New flag.
18542
18543 * w32.c (sys_getpeername, fcntl): New functions.
18544 (_sys_read_ahead): Temporarily block on non-blocking sockets.
18545
18546 * w32proc.c: Include sys/file.h.
18547
18548 2002-05-03 Colin Walters <walters@verbum.org>
18549
18550 * callproc.c (Vgame_score_directory): Renamed to
18551 Vshared_game_score_directory.
18552
18553 2002-04-30 Richard M. Stallman <rms@gnu.org>
18554
18555 * s/gnu.h [emacs]: Include stdio.h.
18556 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
18557
18558 * eval.c (do_autoload): Error if called while preparing to dump.
18559
18560 * fns.c (Frequire): Error if need to load while preparing to dump.
18561
18562 2002-04-28 Colin Walters <walters@verbum.org>
18563
18564 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
18565 Default to "~/.emacs.d/games".
18566
18567 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
18568
18569 * lread.c (openp): Change arg exec_only to predicate.
18570 (build_load_history): Use XCAR/XCDR.
18571 (Flocate_file_internal): New fun.
18572 (syms_of_lread): Defsubr it.
18573 (Fload): Update call to openp.
18574
18575 * lisp.h (openp): Update prototype.
18576
18577 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
18578 * w32proc.c (sys_spawnve):
18579 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
18580 * w32.c (check_windows_init_file):
18581 * sound.c (Fplay_sound_internal):
18582 * process.c (Fstart_process):
18583 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
18584 * mac.c (run_mac_command):
18585 * emacs.c (init_cmdargs):
18586 * callproc.c (Fcall_process): Update call to openp.
18587
18588 * textprop.c (remove_properties): Don't use XCAR without CONSP.
18589
18590 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
18591
18592 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18593
18594 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
18595 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
18596
18597 2002-04-28 Richard M. Stallman <rms@gnu.org>
18598
18599 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
18600
18601 * eval.c (Fcommandp): New arg for_call_interactively.
18602 * lisp.h (Fcommandp): Declare new arg.
18603
18604 2002-04-28 Jason Rumney <jasonr@gnu.org>
18605
18606 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
18607
18608 * w32.c (stat, fstat): Use file index information to generate
18609 inodes for directories where available.
18610
18611 2002-04-26 Andrew Choi <akochoi@shaw.ca>
18612
18613 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
18614 [HAVE_CARBON]: Include Mac object files.
18615
18616 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
18617 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
18618 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
18619 MAC_OSX, and MAC_OS instead of macintosh.
18620
18621 * editfns.c [MAC_OS8]: Include stdio.h.
18622
18623 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
18624
18625 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
18626 Apple Monaco.
18627
18628 * process.c (QCfamily, QCfilte): Declare extern.
18629 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
18630 calling select.
18631
18632 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
18633
18634 * tparam.c [MAC_OSX]: Don't define BC and UP.
18635
18636 * config.in [HAVE_CARBON]: Add.
18637
18638 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
18639 Move here from mac/src and mac/inc.
18640
18641 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
18642
18643 2002-04-26 Gerd Moellmann <gerd@gnu.org>
18644
18645 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
18646 Compute phys_cursor_width from the x position returned
18647 by x_draw_glyhs, which is cheaper.
18648 (x_display_and_set_cursor): Compute the buffer-local value
18649 of `cursor-in-non-selected-windows' only when needed.
18650
18651 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18652
18653 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
18654 cursor on a stretch glyph has a width that depends on
18655 x_stretch_cursor_p.
18656
18657 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18658
18659 * abbrev.c (abbrev-start-location): Doc fix.
18660
18661 * indent.c (Fvertical_motion): Fix last change.
18662
18663 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18664
18665 * indent.c (Fvertical_motion): Move to the start of the line
18666 containing PT before moving up or down.
18667
18668 2002-04-24 Gerd Moellmann <gerd@gnu.org>
18669
18670 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
18671 case of writing a whole row, more or less analogous to the case of
18672 writing only parts of a row.
18673
18674 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
18675 0 for NO_CURSOR.
18676
18677 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
18678
18679 2002-04-23 Colin Walters <walters@verbum.org>
18680
18681 * buffer.c (syms_of_buffer): Doc fix.
18682
18683 2002-04-23 Gerd Moellmann <gerd@gnu.org>
18684
18685 * xterm.c (notice_overwritten_cursor): Handle the special case
18686 of the cursor being in the first blank non-text line at the
18687 end of a window.
18688
18689 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
18690 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
18691 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
18692 bar cursors only, to make phys_cursor_width contain what its name
18693 suggests.
18694 (notice_overwritten_cursor): Consider the cursor image erased if
18695 the output area intersects the cursor image in y-direction.
18696
18697 2002-04-23 Simon Marshall <simon@gnu.org>
18698
18699 * xfns.c (x_set_mouse_color): Change default for cross_cursor
18700 to XC_hand2.
18701
18702 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18703
18704 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
18705
18706 2002-04-22 Kim F. Storm <storm@cua.dk>
18707
18708 * textprop.c (remove_properties): Fixed trap for malformed plist.
18709
18710 2002-04-22 Richard M. Stallman <rms@gnu.org>
18711
18712 * cmds.c (Fend_of_line): Handle intangible text in mid line.
18713
18714 * window.c (make_window): Initialize height_fixed_p,
18715 last_cursor_off_p, and p->cursor_off_p slots.
18716
18717 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18718
18719 * fns.c (use-dialog-box): Doc fix.
18720
18721 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18722
18723 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
18724 variables `row', `i' and `area'.
18725 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
18726 toolkit library.
18727
18728 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
18729
18730 * xfaces.c (clear_font_table): Don't free the default font of
18731 a frame even if it's on another display.
18732 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
18733 that could be Qt.
18734
18735 2002-04-19 Juanma Barranquero <lektu@terra.es>
18736
18737 * indent.c (Fmove_to_column): Remove unused local variable
18738 `next_boundary_byte'.
18739 (current_column_1): Likewise.
18740
18741 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
18742
18743 * msdos.c (Qhbar): New variable.
18744 (syms_of_msdos): Intern and staticpro it.
18745 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
18746 cursor type.
18747
18748 2002-04-19 Dave Lambert <dlambert@acm.org>
18749
18750 Theses change implement an underscore-like (`hbar') cursor.
18751
18752 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
18753
18754 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
18755 Handle the `hbar' cursor type.
18756 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
18757
18758 * xfns.c (Qhbar): New variable.
18759 (syms_of_xfns): Intern and staticpro it.
18760 (x_specified_cursor_type): Handle `hbar' cursor.
18761
18762 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
18763 not defined.
18764
18765 2002-04-18 Richard M. Stallman <rms@gnu.org>
18766
18767 * textprop.c (remove_properties): New arg LIST allows scanning
18768 either a list or a plist.
18769 (interval_has_some_properties_list): New function, like
18770 interval_has_some_properties using list instead of plist.
18771 All callers changed.
18772 (Fremove_list_of_text_properties): New function.
18773 (syms_of_textprop): Defsubr it.
18774
18775 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18776
18777 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
18778
18779 2002-04-17 Juanma Barranquero <lektu@terra.es>
18780
18781 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
18782
18783 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18784
18785 * window.c (coordinates_in_window): Don't report on margin area
18786 if its width is zero.
18787
18788 2002-04-16 Jason Rumney <jasonr@gnu.org>
18789
18790 * w32fns.c (Fx_file_dialog): Decode file name before using.
18791
18792 * w32term.c (construct_drag_n_drop): Likewise.
18793
18794 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
18795
18796 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
18797 store load-history in pure space.
18798
18799 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
18800
18801 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
18802
18803 * xterm.c (Qlatin_1, Qutf_8): New vars.
18804 (syms_of_xterm): Initialize them.
18805 (XTread_socket): Eliminate incorrect optimization that tried to avoid
18806 decoding the output of X*LookupString.
18807 Always use latin-1 to decode the output of XLookupString.
18808 Try Xutf8LookupString if XmbLookupString failed.
18809
18810 * region-cache.c (new_region_cache): Use BEG.
18811
18812 2002-04-16 Gerd Moellmann <gerd@gnu.org>
18813
18814 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
18815 configuration files.
18816 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
18817 returns 0.
18818
18819 2002-04-15 Andreas Schwab <schwab@suse.de>
18820
18821 * config.in: Regenerated using autoheader.
18822
18823 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
18824 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
18825 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
18826 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
18827 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
18828 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
18829 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
18830 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
18831 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
18832 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
18833 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
18834 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
18835 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
18836 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
18837 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
18838 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
18839 STACK_DIRECTION, now set by autoconf.
18840
18841 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18842
18843 * dispnew.c (marginal_area_string): Sort arguments.
18844
18845 * dispextern.h (marginal_area_string): Add prototype.
18846
18847 2002-04-13 Richard M. Stallman <rms@gnu.org>
18848
18849 * fileio.c (Finsert_file_contents):
18850 Don't call temp_output_buffer_setup--do just part, by hand.
18851
18852 * coding.c (run_pre_post_conversion_on_str):
18853 Don't call temp_output_buffer_setup--do just part, by hand.
18854
18855 * keyboard.c (command_loop_1): Don't call start_hourglass
18856 or cancel_hourglass when executing a macro.
18857
18858 * marker.c (count_markers): New function.
18859
18860 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
18861 grow without limit. Move recently used elements to the front.
18862
18863 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
18864
18865 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
18866
18867 2002-04-12 Gerd Moellmann <gerd@gnu.org>
18868
18869 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
18870 rows marginal areas.
18871 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
18872 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
18873
18874 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
18875
18876 2002-04-12 Dave Love <fx@gnu.org>
18877
18878 * dispnew.c (marginal_area_string): New.
18879
18880 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
18881 (Qleft_margin, Qright_margin): Declare.
18882 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
18883
18884 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
18885 note_mode_line_highlight and extended.
18886
18887 * keyboard.c (Qleft_margin, Qright_margin): Declare.
18888 (make_lispy_event): Deal with mouse events in margins.
18889
18890 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
18891
18892 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
18893
18894 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
18895 than deactivating the mark if tmm is set to `lambda'.
18896 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
18897 Use a single event for HELP_EVENT.
18898 (Fexecute_extended_command): Save last_point_position.
18899
18900 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18901
18902 * lisp.h (Fpropertize): Add prototype.
18903
18904 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
18905
18906 2002-04-10 Colin Walters <walters@verbum.org>
18907
18908 * config.in: Add HAVE_SHARED_GAME_DIR.
18909
18910 * callproc.c (Vgame_score_directory): New variable.
18911 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
18912
18913 2002-04-10 Richard M. Stallman <rms@gnu.org>
18914
18915 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
18916
18917 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
18918
18919 * minibuf.c (read_minibuf): Use empty_string.
18920 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
18921 Short-circuit the search as soon as it "failed".
18922 (Fall_completions): Allow lambda forms and lists of strings for alist.
18923 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
18924 when require_match is nil.
18925 (Ftest_completion): Rename from `test_completion' and export to elisp.
18926 Call the predicate also when alist is a list.
18927 Obey Vcompletion_regexp_list.
18928 (do_completion, Fminibuffer_complete_and_exit): Use it.
18929 (Fassoc_string): Rename from `assoc_for_completion'.
18930 Allow list of strings as well and export to elisp.
18931
18932 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
18933
18934 * puresize.h (BASE_PURESIZE): Increase to 900KB.
18935
18936 2002-04-08 Juanma Barranquero <lektu@terra.es>
18937
18938 * w32.c (sys_accept): Don't hide variable `s'.
18939
18940 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18941
18942 * callint.c (Fcall_interactively): Use INTEGERP instead of
18943 NUMBERP for checking Vhistory_length.
18944
18945 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18946
18947 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18948 Doc fix to reflect it.
18949
18950 2002-04-04 Richard M. Stallman <rms@gnu.org>
18951
18952 * xdisp.c (display_mode_element): New arg RISKY.
18953 Disregard text props found or specified within a variable
18954 that isn't marked risky-local-variable.
18955 (Qrisky_local_variable): New variable.
18956 (syms_of_xdisp): Init and staticpro it.
18957
18958 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18959
18960 * undo.c (record_point): New fun.
18961 (record_delete, record_insert): Use it.
18962
18963 2002-04-03 Juanma Barranquero <lektu@terra.es>
18964
18965 * doc.c (Fdocumentation): Add missing parentheses.
18966 (Fdocumentation_property): Likewise.
18967
18968 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18969
18970 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18971 data is 0, just return nil.
18972
18973 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18974
18975 * msdos.c (syms_of_msdos): Fix last change with
18976 mouse_autoselect_window.
18977
18978 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18979
18980 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18981 mouse_autoselect_window.
18982
18983 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18984
18985 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18986 with system-specific keysyms. Use it also for unknown function keys.
18987
18988 * doc.c (reread_doc_file): Return whether reload was attempted.
18989 (Fdocumentation, Fdocumentation_property): Don't try to reload
18990 if the doc is 0 and only ask once.
18991
18992 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18993
18994 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18995
18996 * keyboard.c (read_char): If the event was Qselect_window,
18997 restore timer_idleness_start_time to its previous value.
18998
18999 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
19000
19001 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
19002
19003 * region-cache.c (new_region_cache): Use BEG.
19004
19005 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
19006 Use BEG and BEG_BYTE.
19007
19008 * doc.c (get_doc_string): Return nil if the location is wrong.
19009 (reread_doc_file): New fun.
19010 (Fdocumentation, Fdocumentation_property):
19011 Call it if get_doc_string fails.
19012 (Fsnarf_documentation): Make it work for a dumped Emacs.
19013
19014 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
19015 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
19016
19017 * charset.c (Fstring): Allow 0 arguments.
19018
19019 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
19020
19021 * process.c (DATAGRAM_CONN_P, list_processes_1)
19022 (Fprocess_datagram_address, Fset_process_datagram_address)
19023 (Fset_network_process_options, server_accept_connection):
19024 Fix some int/Lisp_Object confusions (thank you union types).
19025
19026 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19027
19028 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
19029
19030 * w32term.c: Likewise.
19031 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
19032
19033 * keyboard.c (Qselect_window): New symbol.
19034 (head_table): Use it.
19035 (keys_of_keyboard): Bound select-window event to handle-select-window.
19036 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
19037
19038 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
19039 (last_window): New variable.
19040 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
19041 (note_mouse_movement): Remove reimplemented code in #if 0.
19042 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
19043 Emacs windows.
19044
19045 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
19046
19047 2002-03-31 Gerd Moellmann <gerd@gnu.org>
19048
19049 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
19050 Callers changed.
19051
19052 2002-03-30 Richard M. Stallman <rms@gnu.org>
19053
19054 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
19055 loop whenever it stops making progress.
19056
19057 * widget.c (set_frame_size): Don't call change_frame_size.
19058
19059 2002-03-30 Gerd Moellmann <gerd@gnu.org>
19060
19061 * dispnew.c (direct_output_for_insert):
19062 Call mark_window_display_accurate.
19063
19064 2002-03-29 Jason Rumney <jasonr@gnu.org>
19065
19066 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
19067
19068 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
19069
19070 * Makefile.in (lread.o): Depend on coding.h.
19071
19072 * lread.c (openp, Fload): Encode the file name before passing it
19073 to `stat', `access', and `emacs_open'.
19074 (openp): GCPRO the encoded file name. Don't recompute Lisp
19075 strings unnecessarily.
19076
19077 2002-03-29 Kim F. Storm <storm@cua.dk>
19078
19079 * fns.c (Flax_plist_put): Doc fix.
19080
19081 2002-03-28 Miles Bader <miles@gnu.org>
19082
19083 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
19084
19085 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19086
19087 * process.c (set-network-process-options): Add usage.
19088 (make-network-process): Doc fix.
19089
19090 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
19091
19092 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
19093
19094 2002-03-26 Richard M. Stallman <rms@gnu.org>
19095
19096 * fns.c (Fsubstring_no_properties): New function.
19097 (Flax_plist_get, Flax_plist_put): New functions.
19098 (syms_of_fns): defsubr them.
19099
19100 * xdisp.c (update_menu_bar): Test only update_mode_lines;
19101 don't test or alter w->update_mode_line.
19102
19103 * window.c (Fdisplay_buffer): Doc fix.
19104
19105 2002-03-24 Richard M. Stallman <rms@gnu.org>
19106
19107 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
19108
19109 2002-03-24 Gerd Moellmann <gerd@gnu.org>
19110
19111 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
19112 (Fdefmacro): Handle `(declare ...)'.
19113 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
19114 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
19115
19116 2002-03-24 Jason Rumney <jasonr@gnu.org>
19117
19118 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
19119 (xbm_file_p): Add prototypes.
19120 (xbm_format, xbm_image_p): Sync with xfns.c.
19121 (reflect_byte): New function.
19122 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
19123 (xbm_load_image): Create bitmaps with a depth of 1.
19124 (init_xfns): Enable XBM images.
19125
19126 2002-03-23 Jason Rumney <jasonr@gnu.org>
19127
19128 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
19129 correctly. Do not pass up_modifier to keyboard buffer.
19130
19131 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
19132
19133 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
19134
19135 * Makefile.in (bootstrapclean): New target.
19136 (bootstrap-temacs, bootstrap-doc): Remove.
19137 (bootstrap-emacs): Use a bog-standard `temacs'.
19138 Don't bother to build a DOC file.
19139
19140 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
19141
19142 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
19143 in temacs even if !CANNOT_DUMP.
19144 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
19145
19146 * alloc.c (check_pure_size): Only output a warning.
19147
19148 2002-03-22 Jason Rumney <jasonr@gnu.org>
19149
19150 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
19151 supported.
19152
19153 * w32term.c (zv_bits): Declare as short, for word alignment.
19154 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
19155 (syms_of_w32term): Define x-use-underline-position-properties.
19156
19157 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
19158 (clear_image_cache): Block input, fix logic, clear matrices in
19159 all frames that share this cache.
19160
19161 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
19162
19163 * emacs.c (main): Update the Copyright year in the blurb printed
19164 by "emacs --version".
19165
19166 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
19167
19168 * xterm.c (XTread_socket): If XK_ISO_Lock and
19169 XK_ISO_Last_Group_Lock are defined, handle keysyms between
19170 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
19171
19172 2002-03-21 Kim F. Storm <storm@cua.dk>
19173
19174 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
19175 menu-bar bindings in keymap and local-map properties _are_ used.
19176 But try keymap property first in accordance with 2002-01-03 patch.
19177 Added comment describing why this is not always reliable.
19178 (tool_bar_items): Ditto for tool-bar.
19179
19180 2002-03-21 Jason Rumney <jasonr@gnu.org>
19181
19182 * w32fns.c (x_clear_image_1): Disable color table code.
19183
19184 2002-03-21 Kim F. Storm <storm@cua.dk>
19185
19186 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
19187 removed the wrong version of the DEFUN macro; fixed it.
19188
19189 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
19190 Fmember rather than Fmemq).
19191 (Fprovide): Check that subfeatures is a list.
19192
19193 * process.c (QCfeature, QCdatagram): Removed variables.
19194 (QCtype, Qdatagram): New variables.
19195 (network_process_featurep): Removed function.
19196 (Fmake_network_process): Removed :feature check.
19197 Use :type 'datagram instead of :datagram t to create a datagram
19198 socket. This allows us to add other connection types (e.g. raw
19199 sockets) later in a consistent manner.
19200 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
19201 supported subfeatures for feature make-network-process.
19202 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
19203 Intern and staticpro QCtype and Qdatagram.
19204 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
19205
19206 * xfns.c (QCtype): Remove duplicate declaration and
19207 initialization (is now declared in process.c).
19208
19209 * w32fns.c (QCtype): Remove duplicate declaration and
19210 initialization (is now declared in process.c).
19211
19212 2002-03-21 Richard M. Stallman <rms@gnu.org>
19213
19214 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
19215 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
19216 when jumping to `fail' to avoid undoing reg changes in the
19217 last iteration of the loop.
19218 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
19219
19220 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
19221 Depend on process.h.
19222
19223 2002-03-20 Jason Rumney <jasonr@gnu.org>
19224
19225 Most of the following changes are still conditional on HAVE_IMAGES
19226 which is not set by default on Windows.
19227
19228 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
19229
19230 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
19231 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
19232 (four_corners_best, x_clear_image_1, x_clear_image)
19233 (x_alloc_image_color, postprocess_image)
19234 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
19235 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
19236 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
19237
19238 * w32gui.h (struct XImage): Define.
19239
19240 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
19241 extract mouse co-ordinates.
19242
19243 2002-03-20 Jason Rumney <jasonr@gnu.org>
19244
19245 * w32.c (init_winsock): Dynamically load new server and UDP
19246 socket functions.
19247 (socket_to_fd): New function.
19248 (sys_socket): Use it.
19249 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
19250 (sys_recvfrom, sys_sendto): New wrapper functions.
19251
19252 * process.c (QCfamily, QCfilter): Remove duplicate declaration
19253 and initialization.
19254
19255 * makefile.w32-in (LIBS): Remove $(WSOCK32).
19256
19257 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
19258
19259 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
19260 Don't use "sun" as a variable, it's a predefined constant on Sun
19261 machines.
19262
19263 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19264
19265 * bytecode.c (Fbyte_code): Revert last change.
19266
19267 2002-03-19 Kim F. Storm <storm@cua.dk>
19268
19269 * makefile.w32-in (LIBS): Add $(WSOCK32).
19270 From David Ponce <dponce@voila.fr>.
19271
19272 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19273
19274 * process.c (wait_reading_process_input): Move variables `pname'
19275 and `pnamelen' down where they are used.
19276
19277 * bytecode.c (Fbyte_code): Discard unused computed value to
19278 prevent gcc warning.
19279
19280 * lisp.h (Fplist_member): Add prototype.
19281
19282 2002-03-18 Kim F. Storm <storm@cua.dk>
19283
19284 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
19285 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
19286
19287 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
19288 Remove explicit GNU_LINUX settings for datagram support.
19289
19290 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19291
19292 * process.c (Fmake_network_process): Remove unused variable `sa'.
19293 Doc fix. Add usage:.
19294 (set_socket_options): Remove unused variables `optnum' and `opttype'.
19295
19296 2002-03-17 Richard M. Stallman <rms@gnu.org>
19297
19298 * xdisp.c (cursor_type_changed): New variable.
19299 (redisplay_internal): Redisplay all windows if cursor_type_changed.
19300 Clear it when clearing windows_or_buffers_changed.
19301 (try_cursor_movement, redisplay_window, try_window_id)
19302 (try_window_reusing_current_matrix): Test cursor_type_changed
19303 along with windows_or_buffers_changed.
19304
19305 * window.h (cursor_type_changed): New variable.
19306
19307 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
19308 not update_mode_lines, and always set it to 1.
19309
19310 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
19311 if no frames needed redrawing.
19312
19313 2002-03-17 Kim F. Storm <storm@cua.dk>
19314
19315 The following changes add support for network server processes,
19316 datagram connections, and local (unix) sockets.
19317
19318 * process.h (struct Lisp_Process): New member log.
19319 Doc fix: Member command used to indicate stopped network process.
19320 Doc fix: Member childp contains plist for network process.
19321 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
19322
19323 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
19324 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop)
19325 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
19326 New variables.
19327 (NETCONN1_P): New macro.
19328 (DATAGRAM_SOCKETS): New conditional symbol.
19329 (datagram_address): New array.
19330 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
19331 (status_message): Use concat3.
19332 (Fprocess_status): Add `listen' status to doc string. Return `stop'
19333 for a stopped network process.
19334 (Fset_process_buffer): Update contact plist for network process.
19335 (Fset_process_filter): Ditto. Don't enable input for stopped
19336 network processes. Server must listen, even if filter is t.
19337 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
19338 New functions.
19339 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
19340 (Fprocess_contact): Added KEY argument. Handle datagrams.
19341 (list_processes_1): Optionally show only processes with the query
19342 on exit flag set. Dynamically adjust column widths. Omit tty
19343 column if not needed. Report stopped network processes.
19344 Identify server and datagram network processes.
19345 (Flist_processes): New optional arg `query-only'.
19346 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
19347 (conv_lisp_to_sockaddr, set_socket_options)
19348 (network_process_featurep, unwind_request_sigio): New helper functions.
19349 (Fprocess_datagram_address, Fset_process_datagram_address):
19350 (Fset_network_process_options): New lisp functions.
19351 (Fopen_network_stream): Removed. Now defined in simple.el.
19352 (Fmake_network_process): New lisp function. Code is based on previous
19353 Fopen_network_stream, but heavily reworked with new property list based
19354 argument list, support for datagrams, server processes, and local
19355 sockets in addition to old client-only functionality.
19356 (server_accept_connection): New function.
19357 (wait_reading_process_input): Use it to handle incoming connects.
19358 Do not enable input on a new connection if process is stopped.
19359 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
19360 (send_process): Handle datagram sockets.
19361 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
19362 network process is indicated by setting command field to t .
19363 (Fprocess_send_eof): No-op if datagram connection.
19364 (Fstatus_notify): Don't read input for a stream server socket or a
19365 stopped network process.
19366 (init_process): Initialize datagram_address array.
19367 (syms_of_process): Intern and staticpro new variables, defsubr new
19368 functions.
19369
19370 2002-03-16 Jason Rumney <jasonr@gnu.org>
19371
19372 * w32fns.c (w32_to_all_x_charsets): Return correct type in
19373 startup case.
19374
19375 2002-03-16 Richard M. Stallman <rms@gnu.org>
19376
19377 * xdisp.c (redisplay_internal, redisplay_windows):
19378 Use list_of_error to call internal_condition_case_1.
19379 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
19380 so as to catch all errors with no possibility of debugger redisplay.
19381 (list_of_error): New variable.
19382 (syms_of_xdisp): Init and staticpro it.
19383
19384 * print.c (print_object): Delete `\ ' from printed rep of frame.
19385
19386 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
19387
19388 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
19389 until its implementation is fixed.
19390
19391 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19392
19393 * xfns.c (png_load): Remove unused variable `gamma_str'.
19394
19395 2002-03-14 Richard M. Stallman <rms@gnu.org>
19396
19397 * xfns.c (x_real_positions): Handle failure in XQueryTree.
19398
19399 2002-03-14 Miles Bader <miles@gnu.org>
19400
19401 * intervals.c (adjust_for_invis_intang): New function.
19402 (set_point_both): Use `adjust_for_invis_intang' to do most of the
19403 work for dealing with invisible+intangible regions. Do so before
19404 and after both forward and backward movements, to handle both
19405 front-sticky and rear-sticky cases.
19406 * textprop.c (text_property_stickiness): Function moved here from
19407 `editfns.c'.
19408 * intervals.h (text_property_stickiness): New declaration.
19409 * editfns.c (char_property_eq): Function removed.
19410 (text_property_stickiness): Function moved to `textprop.c'.
19411
19412 2002-03-13 Jason Rumney <jasonr@gnu.org>
19413
19414 * config.in: Add STRFTIME_NO_POSIX2.
19415
19416 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
19417 and %OX when underlying strftime does not.
19418
19419 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
19420
19421 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
19422 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
19423 line) to avoid annoying flicker.
19424 (xm_scroll_callback): Get rid of the now unnecessary kludge.
19425 (XTread_socket): Mark it static.
19426
19427 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
19428
19429 2002-03-13 Kim F. Storm <storm@cua.dk>
19430
19431 * puresize.h (BASE_PURESIZE): Increase to 775000.
19432
19433 2002-03-12 Juanma Barranquero <lektu@terra.es>
19434
19435 * editfns.c (syms_of_editfns): Fix typo.
19436
19437 2002-03-12 Gerd Moellmann <gerd@gnu.org>
19438
19439 * xsmfns.c: Include stdio.h because termhooks.h needs it.
19440 Include termopt.h for interrupt_input.
19441
19442 2002-03-11 Andreas Schwab <schwab@suse.de>
19443
19444 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
19445
19446 2002-03-11 Gerd Moellmann <gerd@gnu.org>
19447
19448 * xterm.c (note_mouse_movement): Put code for
19449 x_autoselect_window_p in #if 0.
19450
19451 * lread.c (Fload): Don't assume that message_with_string uses the
19452 string it is given like a C string.
19453
19454 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19455
19456 * xterm.h (x_session_check_input, x_session_initialize): Declare.
19457
19458 * xterm.c (XTread_socket): Add call to x_session_check_input and
19459 x_session_have_connection.
19460 (x_initialize): Add call to x_session_initialize.
19461
19462 * termhooks.h (enum event_kind): Add save_session_event.
19463
19464 * keyboard.c: Add Emacs event save_session_event.
19465
19466 * emacs.c (main): Add call to syms_of_xsmfns.
19467
19468 * lisp.h (syms_of_xsmfns): Declare extern.
19469
19470 * config.in: Add HAVE_X_SM.
19471
19472 * Makefile.in (LIBXT): Add -lSM -lICE
19473 if HAVE_X_SM and not USE_X_TOOLKIT.
19474 (XOBJ): New file xsmfns.c added.
19475
19476 * xsmfns.c: New file for X session management.
19477
19478 2002-03-09 Jason Rumney <jasonr@gnu.org>
19479
19480 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
19481 read-only when setting modified time.
19482
19483 2002-03-08 Gerd Moellmann <gerd@gnu.org>
19484
19485 * xdisp.c (move_it_vertically_backward): At the end of the function,
19486 when moving forward by lines, treat terminal frames specially.
19487
19488 * keyboard.c (echo_char): Make sure to add a separator between
19489 keys even if echo_dash hasn't been called.
19490
19491 * xdisp.c: Use new string macros.
19492 (update_echo_area): Pass number of bytes to message3 instead of
19493 number of chars.
19494 (set_message_1): Don't access a string's size_byte directly.
19495 (decode_mode_spec_coding): Use number of bytes of eoltype string
19496 instead number of chars.
19497
19498 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
19499
19500 2002-03-08 Juanma Barranquero <lektu@terra.es>
19501
19502 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
19503 24-bit.
19504
19505 2002-03-06 Jason Rumney <jasonr@gnu.org>
19506
19507 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
19508
19509 2002-03-06 Gerd Moellmann <gerd@gnu.org>
19510
19511 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
19512 (cancel_echoing, echo_length, echo_truncate): Changed to
19513 work with new kboard definition.
19514 (echo_now): Use message3_nolog instead of message2_nolog.
19515
19516 * alloc.c (mark_kboards): Mark echo_string.
19517
19518 * keyboard.h (ECHOBUFSIZE): Removed.
19519 (struct kboard): Member echoptr removed, member echobuf renamed
19520 to echo_string.
19521
19522 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
19523 message3 instead of message2 to display the message using STRING's
19524 text properties.
19525
19526 2002-03-05 Andreas Schwab <schwab@suse.de>
19527
19528 * xdisp.c (hscroll_margin): Change to EMACS_INT.
19529
19530 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
19531
19532 * frame.c (default-frame-alist): Explain that setting it doesn't
19533 affect existing frames.
19534
19535 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
19536
19537 * indent.c (skip_invisible): Fix my brain fart.
19538
19539 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
19540
19541 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
19542
19543 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
19544 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
19545 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
19546 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
19547 and variables to use EMACS_INT instead of just int.
19548
19549 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
19550
19551 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
19552
19553 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
19554 environment, pass it down with corrected value.
19555
19556 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19557
19558 * lread.c (read_filtered_event): Do not call start_hourglass
19559 before returning.
19560
19561 2002-03-04 Juanma Barranquero <lektu@terra.es>
19562
19563 * w32term.c (x_display_and_set_cursor): Fix typo.
19564
19565 2002-03-03 Richard M. Stallman <rms@gnu.org>
19566
19567 * fileio.c (Fmake_temp_name): Doc fix.
19568
19569 2002-03-03 Gary Wong <gtw@gnu.org>
19570
19571 * termcap.c [!emacs]: Replace ospeed for building standalone
19572 libtermcap, for binary compatibility.
19573
19574 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
19575
19576 2002-03-03 Richard M. Stallman <rms@gnu.org>
19577
19578 * xrdb.c (file_p): Rename arg `path' to `filename'.
19579
19580 * abbrev.c (Fexpand_abbrev): Increment plist as use count
19581 only if it is an integer.
19582
19583 * xfns.c (png_load): Set screen_gamma based on f->gamma.
19584 If png_get_sRGB gives an answer, call png_set_gamma
19585 using the default image gamma value.
19586
19587 * lread.c (read1): When reading from a file, default string to
19588 multibyte only if it has some multibyte characters.
19589
19590 * print.c (print_object): Output multibyte chars 128...255
19591 using \x even if ! print_escape_multibyte.
19592
19593 * xdisp.c (display_mode_element): Move the places where
19594 bytepos, charpos, this, and lisp_string are set.
19595 Use lisp_string to set bytepos.
19596
19597 * xdisp.c (redisplay_internal):
19598 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
19599
19600 * xdisp.c (display_mode_element): Merge properties specified with
19601 :propertize onto those that come with the string.
19602
19603 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
19604
19605 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
19606 automatic-hscrolling. Users changed.
19607 <hscroll-margin>: Renamed from automatic-hscroll-margin.
19608 Users changed.
19609 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
19610
19611 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
19612
19613 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
19614
19615 2002-03-02 Kim F. Storm <storm@cua.dk>
19616
19617 * window.c (Fminibuffer_selected_window): New function.
19618 (syms_of_window): Defsubr it.
19619
19620 2002-03-01 Kim F. Storm <storm@cua.dk>
19621
19622 * window.h (struct window): New member phys_cursor_width.
19623
19624 * window.c (make_window, replace_window): Init phys_cursor_width.
19625
19626 * xterm.c (x_display_and_set_cursor): Blink box cursor using
19627 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19628
19629 * w32term.c (x_display_and_set_cursor): Blink box cursor using
19630 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19631
19632 * lisp.h (GCPRO6): New macro.
19633
19634 * process.c (Fopen_network_stream): Use GCPRO6.
19635
19636 2002-03-01 Kim F. Storm <storm@cua.dk>
19637
19638 * process.c (Qconnect, Qfailed): New variables.
19639 (syms_of_process): Intern and staticpro them.
19640 (Fprocess_status): Document connect and failed return values.
19641 [NON_BLOCKING_CONNECT]: New conditional.
19642 (connect_wait_mask, num_pending_connects): New variables.
19643 (status_message): Convert Qfailed status.
19644 (Fopen_network_stream): Added support for non-blocking connect.
19645 New optional args: filter, sentinel, non_blocking. Doc updated.
19646 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
19647 (deactivate_process): Handle pending non-blocking connect.
19648 (wait_reading_process_input): Poll for status of non-blocking
19649 connects. Exec sentinel directly when connect succeeds.
19650 (status_notify): Don't read process output if not yet connected.
19651
19652 2002-02-28 Kim F. Storm <storm@cua.dk>
19653
19654 * window.c (minibuf_selected_window): Renamed from
19655 Vminibuf_selected_window. Users changed.
19656 (syms_of_window): Staticpro it.
19657
19658 2002-02-26 Kim F. Storm <storm@cua.dk>
19659
19660 The following changes add a new Vminibuf_selected_window variable
19661 which is similar to Vminibuf_scroll_window, but which is only set
19662 on entry to the minibuffer (from a non-minibuffer window):
19663
19664 * window.c (Vminibuf_selected_window): New variable.
19665 (struct save_window_data): New member minibuf_selected_window.
19666 (Fset_window_configuration): Restore Vminibuf_selected_window.
19667 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
19668 Set minibuf_scroll_window member to nil if minibuf_level is 0.
19669 (compare_window_configurations): Compare minibuf_selected_window.
19670
19671 * window.h (Vminibuf_selected_window): Declare extern.
19672
19673 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
19674 entry to minibuffer or on entry from a non-minibuffer window.
19675
19676 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
19677 Vminibuf_selected_window instead of Vminibuf_scroll_window.
19678
19679 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
19680 instead of Vminibuf_scroll_window when deciding in which window
19681 the region should be highlighted. Consequently, the region remains
19682 highlighteded even when a completion buffer is also displayed.
19683
19684 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
19685
19686 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
19687
19688 * xselect.c (Qcompound_text_with_extensions): Renamed from
19689 Qcompound_text_no_extensions.
19690 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
19691
19692 2002-02-26 Juanma Barranquero <lektu@terra.es>
19693
19694 * w32proc.c (syms_of_ntproc): Doc fix.
19695
19696 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19697
19698 * intervals.h: Include "dispextern.h" unconditionally.
19699
19700 2002-02-24 Jason Rumney <jasonr@gnu.org>
19701
19702 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
19703 and disp-table.elc.
19704 (lisp): Add emacs-lisp/backquote.elc.
19705
19706 2002-02-24 Kim F. Storm <storm@cua.dk>
19707
19708 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
19709 The validation of the event type was too strict as it didn't
19710 allow string events; buffer names are used in bindings for
19711 menu-bar-select-buffer (see `menu-bar-update-buffers').
19712
19713 2002-02-23 Kim F. Storm <storm@cua.dk>
19714
19715 The following changes rework my patch of 2002-02-06 which
19716 added command remapping by entering the commands directly into
19717 the keymaps. Now, command remapping uses an explicit `remap'
19718 prefix in the keymaps, i.e. [remap COMMAND].
19719
19720 * keymap.c (Qremap, remap_command_vector): New variables.
19721 (is_command_symbol): Remove function.
19722 (Fdefine_key): No longer accept a symbol for KEY.
19723 Added validation of [remap COMMAND] argument for KEY.
19724 The DEF is no longer required to be a symbol when remapping a command.
19725 (Fremap_command): New function to remap command through keymaps.
19726 (Flookup_key): Perform command remapping initiated by
19727 Fremap_command directly for speed.
19728 (Fkey_binding): Use Fremap_command for command remapping.
19729 (where_is_internal): Handle new command remapping representation.
19730 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
19731 staticpro them. Defsubr Fremap_command.
19732
19733 * keymap.h (Fremap_command): Declare extern.
19734 (is_command_symbol): Remove extern.
19735
19736 * keyboard.c (command_loop_1): Use Fremap_command for command
19737 remapping; now try command remapping for all symbols.
19738
19739 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19740
19741 * coding.h (run_pre_post_conversion_on_str): Add prototype.
19742
19743 2002-02-23 Jason Rumney <jasonr@gnu.org>
19744
19745 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
19746 on the string before encoding it.
19747 (Fw32_get_clipboard_data): Run post-read-conversion on the string
19748 after decoding it.
19749
19750 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
19751
19752 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19753
19754 * w32term.c (enter_timestamp): Remove unused static variable to
19755 prevent warning.
19756
19757 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
19758
19759 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19760
19761 * w16select.c (Fw16_get_clipboard_data): Fix last change.
19762
19763 * xselect.c (selection_data_to_lisp_data): Fix last change.
19764
19765 2002-02-22 Jason Rumney <jasonr@gnu.org>
19766
19767 * w32term.h (struct w32_output): New member menu_command_in_progress.
19768
19769 * w32menu.c (menubar_selection_callback): Free the menu and
19770 clear the menu_command_in_progress flag.
19771
19772 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
19773 (menu_free_timer): New variable.
19774 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
19775 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
19776 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
19777 menu command is in progress.
19778 <WM_COMMAND>: Set the menu_command_in_progress flag.
19779 Kill any menu_free_timer that is running.
19780
19781 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
19782 Call ExtTextOutA rather than ExtTextOut.
19783
19784 2002-02-22 Eli Zaretskii <eliz@gnu.org>
19785
19786 * puresize.h (BASE_PURESIZE): Increase to 755000.
19787
19788 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19789
19790 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
19791 on the string before encoding it.
19792 (Fw16_get_clipboard_data): Run post-read-conversion on the string
19793 after decoding it.
19794
19795 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19796
19797 Support for ICCCM Extended Segments in X selections:
19798
19799 * xselect.c <Qcompound_text_no_extensions>: New variable.
19800 (syms_of_xselect): Intern and staticpro it.
19801 (selection_data_to_lisp_data): Run post-read-conversion on decoded
19802 selection text.
19803 (lisp_data_to_selection_data): If next-selection-coding-system is
19804 compound-text-no-extensions, set the type of selection to be
19805 compound-text.
19806
19807 * xterm.h (x_encode_text): Update prototype.
19808
19809 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
19810 callers changed. If SELECTIONP is non-zero, run the
19811 pre-write-conversion function before encoding the selection text.
19812
19813 2002-02-21 Kim F. Storm <storm@cua.dk>
19814
19815 * frame.c (syms_of_frame): Change mouse-highlight default to t.
19816
19817 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
19818 Correct composing of language-change event.
19819
19820 2002-02-20 Kim F. Storm <storm@cua.dk>
19821
19822 * keyboard.c (menu_bar_items): Don't include keymap or local-map
19823 bindings at PT when building menu (the menu is not updated often
19824 enough for this to work reliable).
19825 (tool_bar_items): Likewise.
19826 (current_active_maps): Removed unused (and buggy) function.
19827
19828 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19829
19830 * xfns.c (gif_load): Use correct width and height for GIF images.
19831
19832 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
19833
19834 * floatfns.c (Fatan): Accept an optional second arg and call
19835 atan2 if passed 2 args.
19836
19837 2002-02-18 Jason Rumney <jasonr@gnu.org>
19838
19839 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
19840
19841 2002-02-17 Jason Rumney <jasonr@gnu.org>
19842
19843 * w32term.c (x_autoselect_window_p): New variable.
19844 (syms_of_w32term): DEFVAR_BOOL and initialize it.
19845 (note_mouse_movement): Use it.
19846
19847 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
19848
19849 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
19850
19851 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19852 New variables.
19853 (syms_of_w32fns): Intern and staticpro them.
19854 (x_frame_parms) <"fullscreen">: New parameter.
19855 (x_fullscreen_move, x_set_fullscreen): New functions.
19856 (x_set_frame_parameters): Support Qfullscreen.
19857 (x_real_positions): Save x/y_pixels_diff frame params.
19858 (x_figure_window_size): Support full-screen frames.
19859 (Fx_create_frame): Default the fullscreen parameter.
19860
19861 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
19862 (x_fullscreen_adjust): New functions.
19863 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
19864 fullscreen. Call x_check_fullscreen_move, and set the
19865 want_fullscreen member of output_data.w32
19866 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
19867
19868 * w32term.h: New enum for FULLSCREEN_* constants.
19869 (struct w32_output): New members want_fullscreen, x_pixels_diff,
19870 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
19871 (x-fullscreen-adjust): New prototype.
19872
19873 2002-02-17 Kim F. Storm <storm@cua.dk>
19874
19875 * frame.c (Vmouse_highlight): New variable.
19876 (syms_of_frame): DEFVAR_LISP it.
19877
19878 * frame.h (Vmouse_highlight): Declare extern.
19879
19880 * xterm.h (struct x_display_info): Add mouse_face_hidden.
19881
19882 * xterm.c (disable_mouse_highlight): Removed variable.
19883 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19884 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19885 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
19886 and on after keyboard input.
19887 (x_term_init): Initialize mouse_face_hidden.
19888
19889 * msdos.h (struct display_info): Add mouse_face_hidden.
19890
19891 * msdos.c (disable_mouse_highlight): Removed variable.
19892 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19893 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19894 (internal_terminal_init): Initialize mouse_face_hidden.
19895 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
19896 and on after keyboard input.
19897
19898 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
19899
19900 * w32term.c (disable_mouse_highlight): Removed variable.
19901 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
19902 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19903 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
19904 and on after keyboard input.
19905 (w32_initialize_display_info): Initialize mouse_face_hidden.
19906
19907 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
19908
19909 * msdos.c (last_mouse_window): New variable.
19910 (dos_rawgetc): Fix last change--if the mouse is in the same window
19911 as recorded in last_mouse_window, don't select this window.
19912
19913 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
19914
19915 * msdos.c (x_autoselect_window_p): New variable.
19916 (syms_of_msdos): Defvar it.
19917 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
19918 which the last mouse movement occured, unless it is already selected.
19919
19920 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
19921 New variables.
19922 (syms_of_xdisp): DEVFAR them.
19923 (hscroll_window_tree): Use automatic_hscroll_margin and
19924 Vautomatic_hscroll_step to compute the amount of window scrolling.
19925
19926 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19927
19928 * xterm.c (x-autoselect-window): New variable.
19929 (note_mouse_movement): Use it.
19930
19931 * keyboard.c: Do not include "systime.h" twice.
19932
19933 2002-02-15 Andreas Schwab <schwab@suse.de>
19934
19935 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
19936
19937 * alloc.c (NSTATICS): Increase to 1280.
19938
19939 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19940
19941 * alloc.c (NSTATICS): Bump to 1026.
19942
19943 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19944 (Vx_super_keysym): New variables.
19945 (syms_of_xterm): DEFVAR_LISP them.
19946 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19947 variables to determine which keys to use for the various modifiers.
19948
19949 2002-02-13 Kim F. Storm <storm@cua.dk>
19950
19951 * window.c (Vmode_line_in_non_selected_windows): Removed.
19952 (mode_line_in_non_selected_windows): New variable.
19953 (syms_of_window): DEFVAR_BOOL it.
19954
19955 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19956 Use mode_line_in_non_selected_windows.
19957 (mode_line_in_non_selected_windows): Declare extern.
19958 (Vmode_line_in_non_selected_windows): Removed extern.
19959
19960 2002-02-13 Richard M. Stallman <rms@gnu.org>
19961
19962 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19963 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19964 (Fclear_this_command_keys): Doc fixes.
19965
19966 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19967 (update_face_from_frame_parameter): Increment face_change_count
19968 and windows_or_buffers_changed to force redisplay using changed faces.
19969
19970 * xdisp.c (QCpropertize): New variable.
19971 (mode_line_proptrans_alist): New variable.
19972 (display_mode_element): New arg PROPS; all calls changed.
19973 Implement this, for strings.
19974 Handle literal output of strings by sharing the
19975 main-line code for strings, using local var `literal'.
19976 Handle :propertize feature.
19977 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19978 mode_line_proptrans_alist.
19979
19980 2002-02-11 Kim F. Storm <storm@cua.dk>
19981
19982 * window.c (Vmode_line_in_non_selected_windows): New variable.
19983 (syms_of_window): DEFVAR_LISP it.
19984
19985 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19986 (CURRENT_MODE_LINE_FACE_ID): Use it.
19987 (Vmode_line_in_non_selected_windows): Declare extern.
19988
19989 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19990 to get mode line face.
19991
19992 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19993
19994 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19995 variables; cus-start.el doesn't need them anymore.
19996
19997 2002-02-09 Kim F. Storm <storm@cua.dk>
19998
19999 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
20000 reduction. This fixes a display problem where stray newlines were
20001 inserted in the window (corrected by C-l). Clarified code (IMHO).
20002
20003 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
20004
20005 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
20006
20007 * xdisp.c (display_mode_lines): Fix last change.
20008
20009 2002-02-09 Jason Rumney <jasonr@gnu.org>
20010
20011 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
20012 match each other.
20013 (w32_load_system_font): Prevent Cleartype fonts from loading.
20014 (Fx_show_tip): Ensure tip frames are above other topmost windows.
20015
20016 2002-02-09 Kim F. Storm <storm@cua.dk>
20017
20018 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
20019 (CURRENT_MODE_LINE_HEIGHT): Use it.
20020 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
20021
20022 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
20023 (pos_visible_p, handle_face_prop): Likewise.
20024 (display_mode_lines): Likewise, but for the real selected window.
20025 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
20026
20027 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
20028 in non-selected windows.
20029 (realize_basic_faces): Realize it.
20030 (syms_of_term): Intern and staticpro it.
20031
20032 2002-02-08 Kim F. Storm <storm@cua.dk>
20033
20034 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
20035 Changed mail addresses to emacs-devel@gnu.org.
20036
20037 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
20038
20039 * fileio.c (Fsubstitute_in_file_name): If the file name includes
20040 ~user, and there's no such user, don't discard everything before ~user.
20041
20042 * floatfns.c (Fround): Doc fix.
20043
20044 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20045
20046 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
20047
20048 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
20049
20050 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
20051
20052 2002-02-07 Kim F. Storm <storm@cua.dk>
20053
20054 * keymap.c (where_is_internal): Only check whether definition is
20055 remapped if it fulfills is_command_symbol.
20056
20057 2002-02-07 Andreas Schwab <schwab@suse.de>
20058
20059 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
20060
20061 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
20062
20063 2002-02-06 Kim F. Storm <storm@cua.dk>
20064
20065 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
20066 defining command remapping. Doc updated.
20067 (Flookup_key): Remap command through keymap if KEY is a symbol.
20068 (is_command_symbol): New function.
20069 (Fkey_binding): Use it. New optional argument NO-REMAP.
20070 Doc updated. Callers changed. Perform command remapping via
20071 recursive call unless that arg is non-nil.
20072 (where_is_internal): New argument no_remap. Callers changed.
20073 Call recursively to find original key bindings for a remapped
20074 comand unless that arg is non-nil.
20075 (Fwhere_is_internal): New optional argument NO-REMAP.
20076 Doc updated. Callers changed. Pass arg to where_is_internal.
20077
20078 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
20079 (is_command_symbol): Add prototype.
20080
20081 * keyboard.c (Vthis_original_command): New variable.
20082 (syms_of_keyboard): DEFVAR_LISP it.
20083 (command_loop_1): Set it, and perform command remapping.
20084
20085 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20086
20087 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
20088
20089 2002-02-06 Jason Rumney <jasonr@gnu.org>
20090
20091 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
20092
20093 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
20094
20095 * charset.c (get_charset_id): Use if-else instead of ?:.
20096
20097 2002-02-06 Richard M. Stallman <rms@gnu.org>
20098
20099 * filelock.c (S_ISLNK): Define if not defined.
20100
20101 2002-02-03 Richard M. Stallman <rms@gnu.org>
20102
20103 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
20104
20105 * lread.c (read1): Redesign strategy for force_multibyte and
20106 force_singlebyte. Now is_multibyte records whether read_buffer
20107 is multibyte. Encountering any multibyte character makes it so.
20108
20109 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
20110
20111 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
20112 with the same sequence, map that sequence to f10 rather than f0.
20113
20114 2002-02-03 Andreas Schwab <schwab@suse.de>
20115
20116 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
20117 latter never being defined on GNU/Linux.
20118
20119 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
20120
20121 * xfaces.c (realize_default_face): Don't set the weight and slant of
20122 the default face to Qnormal, unless these attributes are unspecified.
20123
20124 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20125
20126 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
20127 Call cancel_hourglass unconditionally.
20128
20129 * eval.c (Fsignal): Remove duplicated declaration of
20130 the variable `display_hourglass_p'.
20131
20132 2002-01-31 Richard M. Stallman <rms@gnu.org>
20133
20134 * editfns.c (region_limit): Nicer error message.
20135
20136 * coding.c (decode_composition_emacs_mule):
20137 Give up if NCOMPONENT gets too large to index `component'.
20138
20139 * callint.c (check_mark): New arg to specify clearer error message.
20140 Callers changed.
20141
20142 2002-01-27 Richard M. Stallman <rms@gnu.org>
20143
20144 * minibuf.c (Fcompleting_read): Doc fix.
20145
20146 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20147
20148 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
20149 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
20150 Fix doc-strings.
20151
20152 2002-01-26 Richard M. Stallman <rms@gnu.org>
20153
20154 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
20155
20156 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
20157 and scroll_up_aggressively.
20158
20159 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20160
20161 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
20162
20163 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
20164
20165 * textprop.c (Fnext_property_change, Fnext_single_property_change)
20166 (Fprevious_property_change, Fprevious_single_property_change):
20167 Stay within the narrowed-buffer boundaries.
20168
20169 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
20170
20171 * term.c (Ftty_display_color_cells): New function.
20172 (syms_of_term): Defsubr it.
20173 (Ftty_display_color_cells, Ftty_display_color_p): Change the
20174 argument name to DISPLAY. Doc fix.
20175
20176 * dispextern.h: Add prototype for set_tty_color_mode and
20177 tty_setup_colors.
20178
20179 2002-01-24 Jason Rumney <jasonr@gnu.org>
20180
20181 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
20182 If region left to draw is not what was expected, mark the frame as
20183 garbaged.
20184
20185 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
20186 Combine the regions returned by BeginPaint and GetUpdateRect.
20187
20188 2002-01-23 Jason Rumney <jasonr@gnu.org>
20189
20190 * w32term.c (x_update_window_begin): Only hide caret if
20191 w32_use_visible_system_caret is set.
20192 (x_update_window_end): Only show caret if
20193 w32_use_visible_system_caret is set.
20194 (syms_of_w32term): Handle SystemParametersInfo call failing.
20195
20196 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
20197
20198 2002-01-22 Richard M. Stallman <rms@gnu.org>
20199
20200 * unexelf.c (unexec): Define n so as to cause compilation error
20201 for the code where people have often written n instead of nn.
20202
20203 * .gdbinit (hookpost-run): Defined.
20204
20205 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20206
20207 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
20208
20209 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20210
20211 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
20212 if fullscreen is being set.
20213
20214 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20215
20216 * minibuf.c (Fminibuffer_contents)
20217 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
20218 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
20219
20220 2002-01-21 Richard M. Stallman <rms@gnu.org>
20221
20222 * window.c (check_frame_size): Fix minimum height calculation.
20223
20224 2002-01-20 Ken Raeburn <raeburn@gnu.org>
20225
20226 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
20227 height before comparison.
20228 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
20229
20230 2002-01-20 Jason Rumney <jasonr@gnu.org>
20231
20232 * w32term.c (w32_system_caret_width): Remove.
20233 (w32_use_visible_system_caret): New user flag.
20234 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
20235 Windows reports a screen reader running.
20236 (x_update_window_begin): Hide the system caret.
20237 (x_update_window_end): Show the system caret.
20238 (x_display_and_set_cursor): Don't draw a cursor when
20239 w32_use_visible_system_caret is set. Do not adjust width.
20240
20241 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
20242 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
20243 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
20244 the user requests it. Use system default width when creating.
20245 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
20246
20247 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
20248 New window messages.
20249
20250 2002-01-20 Richard M. Stallman <rms@gnu.org>
20251
20252 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
20253
20254 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20255
20256 * doprnt.c (doprnt1): Fix typos in error call.
20257
20258 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
20259
20260 * unexelf.c (unexec) [__sgi]: Support the .got sections.
20261
20262 2002-01-20 Jason Rumney <jasonr@gnu.org>
20263
20264 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
20265 that Windows returns. If a double check fails, try to guess how
20266 ExtTextOut is going to act.
20267
20268 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
20269 in place of stricmp.
20270 (w32_list_synthesized_fonts): Removed.
20271 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
20272 (struct enumfont_t): New element; list.
20273 (enum_font_cb2): List all style and charset variations of a font.
20274 (Fw32_select_font): New optional argument; include_proportional.
20275 Exclude vertical fonts. Exclude proportional fonts unless
20276 include_proportional is non-nil.
20277 (w32_enable_synthesized_fonts): Change to a boolean.
20278 (Fw32_send_sys_command): Doc fix.
20279
20280 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20281
20282 * dispnew.c (update_frame): Move the variable `tem' to the block
20283 where it is used.
20284
20285 2002-01-19 Jason Rumney <jasonr@gnu.org>
20286
20287 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
20288 call to face-set-after-frame-default.
20289
20290 2002-01-18 Richard M. Stallman <rms@gnu.org>
20291
20292 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
20293 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
20294
20295 2002-01-17 Richard M. Stallman <rms@gnu.org>
20296
20297 * window.c (enlarge_window): When exceeding size of parent,
20298 directly delete all the siblings instead of trying to resize it.
20299
20300 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20301
20302 * term.c (set_tty_color_mode): Remove unused variable `tem'.
20303
20304 2002-01-16 Henrik Enberg <henrik@enberg.org>
20305
20306 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
20307
20308 2002-01-16 Kim F. Storm <storm@cua.dk>
20309
20310 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
20311 is invisible. This can happen if cursor is on top line of a
20312 window, and we switch to a buffer with a header line.
20313
20314 * w32term.c (x_erase_phys_cursor): Ditto.
20315
20316 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20317
20318 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
20319 `dont_resize' only when used.
20320
20321 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
20322
20323 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
20324
20325 * xdisp.c (display_mode_element): When computing charpos, depend
20326 on multibyteness of elt, not the text in field.
20327
20328 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20329
20330 * buffer.c (Fkill_all_local_variables):
20331 Increment `update_mode_lines' only once.
20332
20333 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20334
20335 * lisp.h (adjust_after_replace_noundo)
20336 (Fupdate_coding_systems_internal): Add prototypes.
20337
20338 * sound.c (Fplay_sound): Initialize header_size also for :data case.
20339
20340 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
20341
20342 Support for the --color command-line argument and tty-color-mode
20343 frame parameter:
20344
20345 * term.c (tty_default_color_capabilities, tty_setup_colors)
20346 (set_tty_color_mode): New functions.
20347 (term_init): Call tty_default_color_capabilities.
20348 (Qtty_color_mode_alist): New variable.
20349 (syms_of_term): Intern and staticpro it.
20350
20351 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
20352 frames.
20353 (do_switch_frame): For termcap frames, switch the tty
20354 color mode as specified by the frame's parameters.
20355 (Qtty_color_mode): New variable.
20356 (syms_of_frame): Intern and staticpro it.
20357
20358 * emacs.c (USAGE2): Add the --color option.
20359 (standard_args): Ditto.
20360
20361 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20362
20363 * xterm.h (struct x_output): New members want_fullscreen,
20364 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
20365 y_pixels_outer_diff.
20366 New enum for FULLSCREEN_* constants.
20367 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
20368 is NULL.
20369 (x_fullscreen_adjust): Add prototype.
20370
20371 * emacs.c (USAGE2): Add the new full-screen arguments.
20372 (standard_args): Ditto.
20373
20374 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
20375 New variables.
20376 (syms_of_xfns): Intern and staticpro them.
20377 (x_frame_parms) <"fullscreen">: New parameter.
20378 (x_fullscreen_move, x_set_fullscreen): New functions.
20379 (x_set_frame_parameters): Support for Qfullscreen.
20380 (x_real_positions): More accurate computation of the frame position.
20381 (x_figure_window_size): Support full-screen frames.
20382 (Fx_create_frame): Default the fullscreen parameter.
20383
20384 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
20385 (XTread_socket) <Expose>: Call x_check_fullscreen.
20386 <ConfigureNotify>: Don't resize to fullscreen.
20387 Call x_check_fullscreen_move, and set the want_fullscreen member of
20388 output_data.x.
20389
20390 2002-01-13 Jason Rumney <jasonr@gnu.org>
20391
20392 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
20393 for mice with more than 3 buttons.
20394
20395 * w32term.c (parse_button): New parameter xbutton. Callers changed.
20396 (w32_read_socket): Handle new "XBUTTON" messages.
20397
20398 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
20399 (syms_of_w32fns): DEFVAR_BOOL it.
20400 (w32_wnd_proc): Handle new "XBUTTON" messages.
20401
20402 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20403
20404 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
20405
20406 2002-01-13 Andreas Schwab <schwab@suse.de>
20407
20408 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
20409
20410 2002-01-12 Andreas Schwab <schwab@suse.de>
20411
20412 * .gdbinit (xbuffer): Remove address operator since data is now a
20413 pointer.
20414
20415 2002-01-11 Richard M. Stallman <rms@gnu.org>
20416
20417 * insdel.c (adjust_after_replace_noundo): New function.
20418
20419 * coding.c (code_convert_region): Don't copy old text if undo disabled.
20420
20421 2002-01-09 Jason Rumney <jasonr@gnu.org>
20422
20423 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
20424 when checking for multiple frames.
20425
20426 2002-01-08 Richard M. Stallman <rms@gnu.org>
20427
20428 * window.c (delete_window): Rewrite the code for changing the
20429 selected window to handle the case where WINDOW is not a leaf.
20430
20431 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
20432
20433 * process.c (send_process): Set src_multibyte to 1 after the call
20434 top setup_coding_system, not before the call.
20435
20436 2002-01-07 Jason Rumney <jasonr@gnu.org>
20437
20438 * xmenu.c (set_frame_menubar, xmenu_show):
20439 (xdialog_show): Initialize wv->help to Qnil.
20440
20441 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
20442 (w32_dialog_show): Initialize wv->help to Qnil.
20443
20444 2002-01-06 Jason Rumney <jasonr@gnu.org>
20445
20446 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
20447
20448 * w32menu.c (w32_menu_display_help): Revert last change.
20449
20450 * xmenu.c (menu_highlight_callback): Revert last change.
20451
20452 2002-01-06 Andreas Schwab <schwab@suse.de>
20453
20454 * insdel.c (make_gap_larger): Make sure buffer size does not
20455 overflow range of int.
20456
20457 2002-01-05 Jason Rumney <jasonr@gnu.org>
20458
20459 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20460 OVERLAPS_P.
20461
20462 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
20463
20464 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
20465 to the left or to the right of the pointer, put it against
20466 the left screen edge.
20467 (x_frame_parms): Add missing braces around initializer.
20468
20469 * w32term.c (x_setup_relief_colors): Don't compute an image's
20470 background color if it doesn't have a Pixmap.
20471 (notice_overwritten_cursor): Don't depend on
20472 output_cursor and updated_area. Compare pixel coordinates with
20473 window's cursor pixel coordinates.
20474 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20475 Call notice_overwritten_cursor with new arg list.
20476 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20477 unconditionally.
20478 (x_draw_image_relief): Use predefined macro instead of
20479 constant when the value of `tool_bar_button_relief' is negative.
20480
20481 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
20482
20483 2002-01-04 Richard M. Stallman <rms@gnu.org>
20484
20485 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
20486
20487 2002-01-03 Richard M. Stallman <rms@gnu.org>
20488
20489 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
20490 (Fkey_binding): Try the `keymap' property map first.
20491 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
20492 minor mode bindings.
20493
20494 2002-01-03 Kim F. Storm <storm@cua.dk>
20495
20496 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
20497
20498 2002-01-02 Richard M. Stallman <rms@gnu.org>
20499
20500 * keyboard.c (read_key_sequence): Handle the keymap property
20501 before minor mode maps.
20502
20503 * editfns.c (Fformat): Update thissize from field_width
20504 based on the actual width, in the string case.
20505
20506 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20507
20508 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
20509 when used as truth value to prevent gcc warnings.
20510
20511 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
20512 * w32proc.c: Include <config.h>.
20513
20514 2002-01-01 Andreas Schwab <schwab@suse.de>
20515
20516 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
20517 not EMACS_INT, to make them compatible with DEFVAR_INT.
20518 * lisp.h (max_specpdl_size): Adjust declaration.
20519
20520 2002-01-01 Richard M. Stallman <rms@gnu.org>
20521
20522 * print.c (print_object): Test print_escape_nonascii only for
20523 unibyte strings.
20524 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
20525 when outputting to a multibyte buffer.
20526
20527 2001-12-29 Richard M. Stallman <rms@gnu.org>
20528
20529 * print.c (print_object): In multibyte string, use hex escapes.
20530 Use octal only for unibyte strings.
20531 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
20532
20533 * lread.c (read_escape): New arg BYTEREP for reporting whether
20534 escape forces unibyte or multibyte.
20535 (read1): When reading a string, take note of that info.
20536
20537 2001-12-29 Ken Raeburn <raeburn@gnu.org>
20538
20539 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
20540 comparison to test lisp value returned by Fget.
20541
20542 2001-12-29 Richard M. Stallman <rms@gnu.org>
20543
20544 * lisp.h (max_specpdl_size): Add declaration.
20545
20546 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
20547
20548 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
20549 Handle modifier bits. Correct typo in error message.
20550
20551 2001-12-28 Richard M. Stallman <rms@gnu.org>
20552
20553 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
20554 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
20555 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20556 Update calls to Fdefine_abbrev.
20557 (write_abbrev): Update for changed data format.
20558 Don't list "system" abbrevs.
20559 (Fexpand_abbrev): Update use count with new data format.
20560 (describe_abbrev): Update for changed data format.
20561 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
20562
20563 * config.in (HAVE_MBSINIT): Add #undef.
20564
20565 * strftime.c (mbsinit): Define as no-op if not available.
20566
20567 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
20568 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
20569
20570 * keymap.c (Flookup_key): Error message if key has wrong data type.
20571 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
20572 (exclude_key): New variable.
20573
20574 2001-12-28 Gerd Moellmann <gerd@gnu.org>
20575
20576 * xterm.c (x_setup_relief_colors): Don't compute an image's
20577 background color if it doesn't have a Pixmap.
20578
20579 * xterm.c (notice_overwritten_cursor): Don't depend on
20580 output_cursor and updated_area. Compare pixel coordinates with
20581 window's cursor pixel coordinates.
20582 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20583 Call notice_overwritten_cursor with new arg list.
20584 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20585 unconditionally.
20586
20587 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
20588 height of the cursor line to the amount to scroll.
20589
20590 2001-12-27 Richard M. Stallman <rms@gnu.org>
20591
20592 * intervals.c (set_point_both): The position after an invisible,
20593 intangible character is not an acceptable stopping point.
20594
20595 2001-12-27 Ken Raeburn <raeburn@gnu.org>
20596
20597 * window.c (enlarge_window): In new preserve_before code, convert
20598 CURBEG from lisp object to integer before doing arithmetic.
20599
20600 2001-12-27 Richard M. Stallman <rms@gnu.org>
20601
20602 * bytecode.c (Fbyte_code): Undo previous change.
20603
20604 2001-12-26 Kim F. Storm <storm@cua.dk>
20605
20606 * keyboard.c (record_char): Ignore duplicate help-echo events only
20607 separated by mouse-movement. When tracking mouse, only record
20608 first and last mouse-movement event in same window.
20609 Don't record mouse-movement events in keyboard macros.
20610
20611 2001-12-25 Richard M. Stallman <rms@gnu.org>
20612
20613 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
20614 (Fenlarge_window): New arg PRESERVE_BEFORE.
20615
20616 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
20617 instead of Fstring_as_unibyte.
20618
20619 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20620
20621 The following changes remove mocklisp support:
20622
20623 * mocklisp.h, mocklisp.c: Files removed.
20624
20625 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
20626 `Qmocklisp' and `Qmocklisp_arguments'.
20627 Remove prototype of syms_of_mocklisp.
20628
20629 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
20630
20631 * callint.c: Do not include mocklisp.h.
20632 (Fcall_interactively): Do not test for mocklisp case.
20633
20634 * eval.c: Remove variables `Qmocklisp_arguments',
20635 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
20636 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
20637 Do not test for mocklisp case.
20638 (Fwhile): Remove unused variable `tem'.
20639 (syms_of_eval): Remove variable `moclisp-arguments'.
20640
20641 * data.c (wrong_type_argument): Remove mocklisp case.
20642
20643 * doc.c (Fdocumentation): Remove mocklisp case.
20644
20645 * emacs.c (main): Do not call syms_of_mocklisp.
20646
20647 2001-12-21 Richard M. Stallman <rms@gnu.org>
20648
20649 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
20650 to the left or to the right of the pointer, put it against
20651 the left screen edge.
20652
20653 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
20654
20655 * Makefile.in (distclean): Remove .gdbinit if we are building
20656 outside the source tree.
20657
20658 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
20659
20660 * w32.c (emacs_root_dir): New function.
20661
20662 * msdos.c (emacs_root_dir): New function.
20663
20664 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
20665 of the current drive as the fallback for default_directory.
20666
20667 * dired.c (file_name_completion): Run the elements of
20668 completion-ignored-extensions through ENCODE_FILE.
20669
20670 * lisp.h (scmp): Remove prototype, since it's now a static
20671 function private to dired.c.
20672
20673 2001-12-18 Richard M. Stallman <rms@gnu.org>
20674
20675 * dired.c (scmp): Function moved from minibuf.c.
20676 Delete multibyte handling--used only on encoded strings.
20677
20678 * minibuf.c (scmp): Function moved to dired.c.
20679
20680 * fns.c (merge): Add QUIT call.
20681
20682 2001-12-18 Dave Love <fx@gnu.org>
20683
20684 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
20685 language/georgian.el.
20686
20687 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
20688
20689 * Makefile.in (lisp, shortlisp): Synchronize with changes to
20690 lisp/Makefile.in:DONTCOMPILE.
20691
20692 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20693
20694 * xdisp.c (window_box_height): Do not return negative values.
20695 From Gerd Moellmann <gerd@gnu.org>.
20696
20697 * keyboard.c (head_table): Add missing braces around initializer.
20698
20699 * term.c (keys): Likewise.
20700
20701 * xfns.c (x_frame_parms, visual_classes): Likewise.
20702
20703 2001-12-17 Sam Steingold <sds@gnu.org>
20704
20705 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
20706 patch (COMPOSING_P, not COMPOSING).
20707
20708 2001-12-17 Richard M. Stallman <rms@gnu.org>
20709
20710 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
20711
20712 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
20713 before calling decode_coding.
20714
20715 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
20716
20717 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
20718 instead of only for COMPOSITION_DISABLED.
20719
20720 2001-12-16 Richard M. Stallman <rms@gnu.org>
20721
20722 * alloc.c (pure_alloc): After overflow, allocate just a small block.
20723
20724 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
20725
20726 * buffer.h (struct buffer): New field `display_error_modiff'.
20727 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
20728
20729 * window.c (Frecenter): Clear display_error_modiff field.
20730
20731 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
20732 Call redisplay_window, but not if display_error_modiff field says no.
20733 (redisplay_window_error): New function.
20734 (displayed_buffer): New variable.
20735 (redisplay_internal, redisplay_windows): Call the new functions
20736 instead of redisplay_window directly.
20737
20738 2001-12-15 Richard M. Stallman <rms@gnu.org>
20739
20740 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
20741
20742 2001-12-14 Andrew Innes <andrewi@gnu.org>
20743
20744 * makefile.w32-in (EMACSLOADPATH): Define.
20745 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
20746 (bootstrap-temacs): Remove dependency on bootstrap-clean.
20747
20748 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
20749
20750 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
20751 parameter have a numeric value all the time.
20752
20753 * w32fns.c (x_report_frame_params): Likewise.
20754
20755 2001-12-12 Richard M. Stallman <rms@gnu.org>
20756
20757 * fileio.c (Fwrite_region): Doc fix.
20758
20759 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
20760 (redisplay_internal): Call clear_image_cache only for window terminals.
20761
20762 2001-12-12 Gerd Moellmann <gerd@gnu.org>
20763
20764 * xdisp.c (move_it_vertically_backward): Change heuristic
20765 for the case that we didn't move far enough initially.
20766
20767 * window.c (Frecenter): Simplify computation in the case of window
20768 system frames and ARG < 0; use window_box_height.
20769
20770 2001-12-11 Richard M. Stallman <rms@gnu.org>
20771
20772 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
20773 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
20774
20775 2001-12-11 Andrew Innes <andrewi@gnu.org>
20776
20777 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
20778 arg is negative.
20779
20780 2001-12-11 Richard M. Stallman <rms@gnu.org>
20781
20782 * m/hp800.h: Split the __hpux conditional into the parts
20783 that are right for GNU/Linux too and the parts that are not.
20784 Use the former if GNU_LINUX.
20785 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
20786
20787 * s/gnu-linux.h (GNU_LINUX): Defined.
20788
20789 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20790
20791 * macros.c, msdos.c, w16select.c: Change doc-string comments to
20792 `new style' [w/`doc:' keyword].
20793
20794 2001-12-10 Jason Rumney <jasonr@gnu.org>
20795
20796 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
20797 before using.
20798
20799 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20800
20801 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
20802 keyword].
20803
20804 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
20805
20806 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
20807
20808 * s/hpux10.h (srand48): Don't undefine.
20809
20810 2001-12-09 Jason Rumney <jasonr@gnu.org>
20811
20812 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
20813 Add comment to explain where the struct came from.
20814 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
20815 (add_menu_item): Process pop-up menus first to avoid memory leak.
20816 (add_menu_item, w32_menu_display_help): Use `help' field as
20817 Lisp_Object.
20818 (w32_free_submenu_strings): Only free owner-drawn strings.
20819
20820 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20821
20822 * COPYING: Moved back.
20823
20824 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
20825 Add parentheses around && within ||.
20826
20827 * indent.c (compute_motion): Likewise.
20828
20829 * intervals.c (merge_properties_sticky): Likewise.
20830
20831 * coding.c (setup_coding_system, shrink_encoding_region)
20832 (Fdecode_sjis_char): Likewise.
20833
20834 2001-12-07 Andreas Schwab <schwab@suse.de>
20835
20836 * xdisp.c (display_mode_element): Don't read past end of string if
20837 it ends with '%'.
20838
20839 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
20840 can hold.
20841
20842 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
20843 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
20844 type changed to Lisp_Object.
20845 (syms_of_data): DEFVAR_LISP them.
20846
20847 2001-12-07 Richard M. Stallman <rms@gnu.org>
20848
20849 * callproc.c (init_callproc): Set Vdata_directory based on the source
20850 location whenever Emacs was run uninstalled.
20851
20852 2001-12-06 Paul Eggert <eggert@twinsun.com>
20853
20854 * config.in (HAVE_WORKING_VFORK): New #undefs.
20855 * process.c (create_process):
20856 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
20857 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
20858 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
20859 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
20860 * m/intel386.h (HAVE_VFORK): Likewise.
20861 * m/mips-siemens.h (HAVE_VFORK): Likewise.
20862 * m/mips.h (HAVE_VFORK): Likewise.
20863 * s/freebsd.h (vfork): Remove #define.
20864 * s/lynxos.h (HAVE_VFORK): Remove #undef.
20865 * s/usg5-4-2.h: Fix comment about vfork.
20866
20867 2001-12-06 Richard M. Stallman <rms@gnu.org>
20868
20869 * s/hpux10.h (random): Add undef.
20870 (HAVE_RANDOM): Define it just once.
20871
20872 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
20873
20874 * eval.c: Undo last change: the standard syntax is not wanted.
20875
20876 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
20877
20878 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
20879 scroll bars of the frame before deleting the frame itself. If the
20880 frame has a widget, delete the frame with XtDestroyWidget, and do
20881 not call XDestroyWindow before that.
20882
20883 2001-12-06 Kim F. Storm <storm@cua.dk>
20884
20885 * xfns.c (x_report_frame_params): Return actual fringe widths.
20886
20887 * w32fns.c (x_report_frame_params): Return actual fringe widths.
20888
20889 2001-12-05 Andrew Innes <andrewi@gnu.org>
20890
20891 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
20892 excessively large.
20893
20894 * insdel.c (make_gap_larger): New function.
20895 (make_gap_smaller): New function.
20896 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
20897 Call make_gap_smaller if arg is negative.
20898
20899 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
20900
20901 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
20902 Pass a dummy argument when calling interrupt_signal.
20903 (parse_menu_item): Mark disabled items before checking for empty def.
20904 (read_char_minibuf_menu_prompt): Make safety more visible.
20905 (read_key_sequence): Add a `first_unbound' variable.
20906 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
20907 unbound prefix as soon as we can detect it.
20908
20909 * doc.c (Fsnarf_documentation): Add prototype.
20910 (get_doc_string): Handle negative arguments.
20911 (Fdocumentation): Use AREF and ASIZE.
20912 Move the calls to get_doc_string to a single place.
20913 Don't confuse an interactive-spec for a docstring reference.
20914 (Fdocumentation_property): Take advantage of the fact that
20915 get_doc_string now ignores the sign of the docstring position.
20916
20917 * eval.c: Use standard syntax for usage in docstrings.
20918
20919 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20920
20921 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
20922
20923 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20924
20925 * xterm.c (x_draw_image_relief): Use predefined macro instead of
20926 constant when the value of `tool_bar_button_relief' is negative.
20927
20928 2001-12-02 Richard M. Stallman <rms@gnu.org>
20929
20930 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
20931 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
20932
20933 * fileio.c (read_non_regular): Delete Fsignal call.
20934
20935 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
20936
20937 * lisp.h (run_hook_list_with_args): Undo last change.
20938
20939 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20940
20941 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20942
20943 2001-12-01 Jason Rumney <jasonr@gnu.org>
20944
20945 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20946
20947 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20948 [!WM_MOUSELEAVE]: Define.
20949
20950 * w32menu.c (current_popup_menu, get_menu_item_info):
20951 (set_menu_item_info): New vars.
20952 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20953 (w32_menu_show): Set current_popup_menu.
20954 (add_menu_item): Allocate new strings for owner-drawn menu items
20955 and help strings.
20956 Use owner-draw for disabled menu items again.
20957 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20958 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20959
20960 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20961 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20962 <WM_EXITMENULOOP>: Free menu strings.
20963 <WM_MOUSELEAVE>: Stop tracking mouse.
20964 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20965
20966 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20967 and mouse face.
20968
20969 2001-12-01 Kim F. Storm <storm@cua.dk>
20970
20971 The following changes add left-fringe and right-fringe
20972 frame parameters to adjust fringe widths, or remove one or
20973 both fringes.
20974
20975 * frame.h (struct frame): Remove trunc_area_pixel_width and
20976 trunc_area_cols fields.
20977 (Qleft_fringe, Qright_fringe): Declare.
20978 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20979
20980 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20981 (syms_of_frame): Initialize them.
20982
20983 * window.c (coordinates_in_window): Handle separate left and right
20984 fringe widths.
20985
20986 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20987 and fringe_cols fields.
20988 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20989 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20990 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20991 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20992 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20993 (x_compute_fringe_widths): Add prototype.
20994
20995 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20996 fill fringe evenly with small dashes.
20997 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20998 clip the new ZV bitmap to avoid jitter between rows.
20999 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
21000 background. Don't draw fringe bitmaps if fringe width is zero.
21001 (x_compute_fringe_widths): New function.
21002 (x_new_font, x_set_window_size_1): Use it.
21003
21004 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
21005 (x_set_frame_parameters): Process `font' parameter before other
21006 parameters as fringe widths depend on it.
21007 (x_set_fringe_width): New function.
21008 (x_figure_window_size): Use x_compute_fringe_widths.
21009 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
21010 parameters.
21011
21012 * widget.c (set_frame_size): Use x_compute_fringe_widths.
21013 (EmacsFrameSetCharSize): Ditto.
21014
21015 * w32term.h: Merged changes from xterm.h.
21016 * w32term.c: Merged changes from xterm.c.
21017 * w32fns.c: Merged changes from xfns.c.
21018
21019 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21020
21021 * COPYING: Removed.
21022
21023 2001-11-29 Dave Love <fx@gnu.org>
21024
21025 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
21026 extra extra slot.
21027 (detect_coding_mask): Fix call of detect_coding_iso2022.
21028
21029 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21030
21031 * fileio.c (file-name-coding-system)
21032 (default-file-name-coding-system): Doc fix (links to referenced
21033 variables added).
21034
21035 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
21036
21037 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
21038 Add dummy uses of gcproN variables.
21039
21040 * category.c (describe_category, describe_category_1)
21041 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
21042 (syms_of_category): Don't defsubr Sdescribe_categories.
21043
21044 2001-11-28 Richard M. Stallman <rms@gnu.org>
21045
21046 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
21047
21048 * Makefile.in (lispdir): New variable, referring to build dir.
21049 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
21050
21051 2001-11-28 Andrew Innes <andrewi@gnu.org>
21052
21053 * w32menu.c (w32_menu_display_help): Actually add the new argument
21054 OWNER.
21055
21056 2001-11-28 Jason Rumney <jasonr@gnu.org>
21057
21058 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
21059 menu items. From David Ponce <dponce@wanadoo.fr>.
21060 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
21061 conditionally.
21062 (w32_menu_display_help): New argument OWNER. Rewritten to store a
21063 help event in the owner frame's keyboard buffer.
21064
21065 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
21066 (Fx_show_tip): Don't subtract last width from row width.
21067
21068 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
21069 (w32_read_socket): Use EQ to compare frames.
21070
21071 2001-11-28 Gerd Moellmann <gerd@gnu.org>
21072
21073 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
21074 OVERLAPS_P.
21075
21076 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21077
21078 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
21079 `gcpro3' and `gcpro4'.
21080
21081 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
21082
21083 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
21084
21085 * ccl.c: Use AREF and ASIZE.
21086
21087 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
21088
21089 * lisp.h (run_hook_list_with_args): Remove.
21090 (LIST_END_P): Fix call to wrong_type_argument.
21091 (make_fixnum_or_float): Use EMACS_INT rather than int.
21092
21093 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
21094
21095 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
21096 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
21097
21098 * eval.c: Use AREF and ASIZE.
21099 (Ffetch_bytecode): Add the file name to the error message.
21100
21101 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
21102 which match the end of the file-name.
21103 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
21104 is not a valid env var, but leave it as is instead.
21105
21106 * keymap.c (access_keymap): Handle t bindings like nil bindings.
21107 Make nil bindings in char-tables transparent.
21108 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
21109
21110 2001-11-26 Richard M. Stallman <rms@gnu.org>
21111
21112 * textprop.c (set_text_properties_1): Allow START, END in either order.
21113 Do nothing if range is empty.
21114
21115 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
21116
21117 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
21118 (clean): Not here.
21119
21120 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
21121
21122 * textprop.c (set_text_properties_1): Clearly mark that the
21123 interval should not be empty.
21124
21125 * intervals.c (graft_intervals_into_buffer):
21126 Don't call set_text_properties_1 on an empty interval.
21127
21128 2001-11-25 Richard M. Stallman <rms@gnu.org>
21129
21130 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
21131
21132 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
21133 don't lose the data in it.
21134
21135 2001-11-25 Juanma Barranquero <lektu@terra.es>
21136
21137 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
21138
21139 * buffer.c (Fkill_buffer): Likewise.
21140
21141 * print.c (temp_output_buffer_setup): Likewise.
21142
21143 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
21144
21145 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
21146
21147 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
21148
21149 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
21150 Niemitalo <kon@iki.fi>.
21151
21152 2001-11-25 Jason Rumney <jasonr@gnu.org>
21153
21154 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
21155
21156 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
21157 (Fx_show_tip): Block input during frame creation.
21158 (Fx_show_tip, Fx_hide_tip): Enable.
21159
21160 2001-11-24 Richard M. Stallman <rms@gnu.org>
21161
21162 * lread.c (Fload): Detect recursive load error for more than 3
21163 nestings of the same file.
21164 (Vrecursive_load_depth_limit): Variable deleted.
21165 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
21166
21167 2001-11-24 Jason Rumney <jasonr@gnu.org>
21168
21169 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
21170 mouse position if either left or top is not specified.
21171
21172 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
21173 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
21174 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
21175 (my_create_tip_window): Assign tip_window.
21176 (x_create_tip_frame): Use same defaults as X.
21177 (compute_tip_xy): Remove unused variable. Use full screen width.
21178 (Fx_show_tip): Do not double height. Call ShowWindow directly.
21179
21180 * w32term.c (x_after_update_window_line): Doc fix.
21181 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
21182 frames.
21183 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
21184
21185 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
21186 for all Windowed systems.
21187
21188 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
21189
21190 * msdos.c (IT_clear_screen): If the frame's faces are not yet
21191 realized, use the initial screen colors to clear the screen.
21192
21193 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21194
21195 * textprop.c (Fset_text_properties): Remove unused variables
21196 `unchanged', `prev_changed', `s' and `len'.
21197
21198 * search.c (Freplace_match): Remove unused variable `inslen'.
21199
21200 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
21201
21202 2001-11-22 Jason Rumney <jasonr@gnu.org>
21203
21204 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
21205 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
21206 (my_create_tip_window): New function.
21207 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
21208 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
21209
21210 2001-11-20 Jason Rumney <jasonr@gnu.org>
21211
21212 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
21213 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
21214
21215 * w32fns.c (Vw32_system_coding_system): Remove.
21216 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
21217
21218 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
21219
21220 * fileio.c (Fwrite_region): Move choose_write_coding_system to
21221 after build_annotations.
21222
21223 * syntax.c (describe_syntax): Add dummy arg.
21224 (describe_syntax_1): Update call to describe_vector.
21225
21226 * category.c (describe_category): Add dummy arg.
21227 (describe_category_1): Update call to describe_vector.
21228
21229 * keymap.c (Fdescribe_vector): Add `describer' parameter.
21230 (describe_command, describe_translation): Add dummy second param.
21231 (describe_map): Call elt_describer with two arguments.
21232 (describe_vector_princ): Add `fun' parameter.
21233 Call it instead of the hardcoded `princ'.
21234 (describe_vector): Add arg `args'.
21235 Pass it as a new second argument to elt_describer.
21236
21237 * keymap.h (describe_vector): Update prototype.
21238
21239 * frame.c: Don't include keymap.h any more.
21240 (keys_of_frame): Remove.
21241
21242 * lisp.h (keys_of_frame): Remove declaration.
21243
21244 * emacs.c (main): Don't call `keys_of_frame' any more.
21245
21246 2001-11-14 Andreas Schwab <schwab@suse.de>
21247
21248 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
21249 if defined, 0 otherwise.
21250 (MAP_FAILED): Define if not defined and use it to test mmap failure.
21251 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
21252
21253 2001-11-19 Richard M. Stallman <rms@gnu.org>
21254
21255 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
21256
21257 2001-11-18 Jason Rumney <jasonr@gnu.org>
21258
21259 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
21260 (x_draw_bar_cursor): If the background color of the glyph under
21261 the cursor equals the frame's cursor color, use the glyph's
21262 foreground color for drawing the bar cursor.
21263 (x_after_update_window_line): Clear internal border in different
21264 circumstances.
21265 (w32_set_vertical_scroll_bar): Check for width and height > 0.
21266 (w32_draw_relief_rect): Correct relief by 1 pixel.
21267 (x_set_glyph_string_background_width):
21268 Set extends_to_end_of_line_p if the row's fill_line_p is set and
21269 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
21270 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
21271 if cursor_in_non_selected_windows is false.
21272 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
21273 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
21274 Notice if cursor gets overwritten.
21275 (notice_overwritten_cursor): Renamed from
21276 note_overwritten_text_cursor. Rewritten to take glyph widths
21277 into account, and to take X positions as parameters.
21278 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21279 around call to x_draw_glyphs.
21280 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21281 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21282 color to use for image glyph reliefs.
21283 (x_draw_image_relief): Accept zero tool_bar_button_relief.
21284 (glyph_rect): Remove unused variable `area'.
21285
21286 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
21287 some items.
21288 (x_set_internal_border_width): Set frame garbaged when window
21289 doesn't exist yet.
21290 (Fx_create_frame): Accept zero tool_bar_button_relief.
21291 (x_clear_image_1, four_corners_best, image_background)
21292 (image_background_transparent): New functions.
21293 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21294 (gs_format): Add `:background' entry.
21295 (lookup_image): Set IMG's background color if specified.
21296 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21297 when appropriate.
21298 (x_clear_image_1): Reset `background_valid' and
21299 `background_transparent_valid' fields.
21300 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21301 calculating it here. Set IMG's background_transparent field.
21302 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21303 (enum png_keyword_index): Add PNG_BACKGROUND.
21304 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21305 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21306 (enum gif_keyword_index): Add GIF_BACKGROUND.
21307 (enum gs_keyword_index): Add GS_BACKGROUND.
21308 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21309 Pre-calculate image background color where necessary.
21310 (x_create_x_image_and_pixmap, xbm_load, gs_load):
21311 Use display info's n_cbits entry for screen depth.
21312 (Fx_show_tip): Remove unused variables `buffer', `top',
21313 `left', `max_width' and `max_height'.
21314
21315 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
21316
21317 2001-11-18 Gerd Moellmann <gerd@gnu.org>
21318
21319 * puresize.h (BASE_PURESIZE): Increase to 750000.
21320
21321 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21322
21323 * frame.c (Fframe_live_p): Doc fix.
21324
21325 2001-11-18 Richard M. Stallman <rms@gnu.org>
21326
21327 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
21328 (message_dolog_marker3): New static variables hold three markers.
21329 (syms_of_xdisp): Initialize and staticpro them.
21330 (message_dolog): Use message_dolog_marker1..3 instead of
21331 allocating markers each time. Unchain them when done.
21332
21333 2001-11-17 Richard M. Stallman <rms@gnu.org>
21334
21335 * doc.c (Fsnarf_documentation): Doc fix.
21336
21337 2001-11-17 Andreas Schwab <schwab@suse.de>
21338
21339 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
21340
21341 2001-11-17 Richard M. Stallman <rms@gnu.org>
21342
21343 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
21344
21345 2001-11-17 Jason Rumney <jasonr@gnu.org>
21346
21347 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
21348
21349 2001-11-17 Gerd Moellmann <gerd@gnu.org>
21350
21351 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
21352 with invalid position.
21353
21354 2001-11-16 Richard M. Stallman <rms@gnu.org>
21355
21356 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
21357
21358 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
21359 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
21360 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
21361
21362 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
21363
21364 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
21365
21366 * fileio.c (build_annotations): Split off the tail.
21367 (build_annotations_2): New fun. Extracted from build_annotations.
21368 (Fwrite_region): Split the call to build_annotations into two
21369 calls to build_annotations and build_annotations_2.
21370
21371 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21372
21373 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
21374 clear_waiting_for_input with argument.
21375
21376 * xterm.h (x_update_cursor): Remove duplicated prototype.
21377
21378 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
21379
21380 * xterm.c (waiting_for_input): Remove unnecessary declaration.
21381
21382 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
21383
21384 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
21385
21386 * fileio.c (choose_write_coding_system): New fun, extracted
21387 from Fwrite_region.
21388 (Fwrite_region): Use it.
21389
21390 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
21391 (funcall_lambda, run_hook_with_args): Make static and add prototype.
21392 (ml_apply, find_handler_clause): Add prototype.
21393
21394 2001-11-16 Eli Zaretskii <eliz@gnu.org>
21395
21396 * config.in: Add #undef HAVE_COFF_H.
21397
21398 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
21399 Required for ISC 4.1.
21400
21401 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
21402
21403 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
21404 Andrew Wiseman <a.wiseman@btclick.com>.
21405
21406 2001-11-16 Kim F. Storm <storm@cua.dk>
21407
21408 The following changes are made to clean up the various internal
21409 references to the fringes to actually use the term `fringe' for
21410 them. Previously, they were called `flags areas', `bitmap areas',
21411 `left/right side of windows', or implicitly as `flags' or
21412 `bitmaps':
21413
21414 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
21415 Comments fixed. Use renamed symbols.
21416
21417 * dispnew.c: Comment fix. Use renamed symbols.
21418
21419 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
21420 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
21421 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
21422
21423 * msdos.c: Comment fix.
21424
21425 * w32fns.c: Use renamed symbols.
21426
21427 * w32term.c: Comment fixes. Use renamed symbols.
21428 (fringe_bitmap_type): Renamed from bitmap_type.
21429 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
21430 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
21431 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
21432
21433 * w32term.h: Comment fixes. Use renamed symbols.
21434 (fringes_extra): Renamed from flags_areas_extra.
21435 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
21436 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
21437 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
21438 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
21439 (FRAME_X_LEFT_FRINGE_WIDTH):
21440 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
21441 (FRAME_X_RIGHT_FRINGE_WIDTH):
21442 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
21443
21444 * widget.c: Use renamed symbols.
21445
21446 * window.c: Comment fixes. Use renamed symbols.
21447 (coordinates-in-window-p): Doc fix.
21448
21449 * xdisp.c: Comment fixes. Use renamed symbols.
21450
21451 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
21452
21453 * xfns.c: Use renamed symbols.
21454
21455 * xterm.c: Comment fixes. Use renamed symbols.
21456 (fringe_bitmap_type): Renamed from bitmap_type.
21457 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
21458 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
21459 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
21460
21461 * xterm.h: Comment fixes. Use renamed symbols.
21462 (fringes_extra): Renamed from flags_areas_extra.
21463 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
21464 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
21465 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
21466 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
21467 (FRAME_X_LEFT_FRINGE_WIDTH):
21468 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
21469 (FRAME_X_RIGHT_FRINGE_WIDTH):
21470 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
21471
21472 2001-11-15 Jason Rumney <jasonr@gnu.org>
21473
21474 * w32menu.c (add-menu-item): Make help_echo and radio buttons
21475 work for most menu items. From David Ponce
21476 <david.ponce@wanadoo.fr>.
21477
21478 2001-11-15 Gerd Moellmann <gerd@gnu.org>
21479
21480 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
21481 Some x_set_* function expect to be called even if old and new
21482 value are equal.
21483
21484 * xdisp.c (build_desired_tool_bar_string): Accept zero
21485 tool_bar_button_relief.
21486
21487 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
21488
21489 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
21490
21491 * xterm.c (x_draw_bar_cursor): If the background color of the
21492 glyph under the cursor equals the frame's cursor color, use
21493 the glyph's foreground color for drawing the bar cursor.
21494
21495 * dispnew.c (direct_output_forward_char): Fix character/byte
21496 position comparison.
21497
21498 2001-11-15 Miles Bader <miles@gnu.org>
21499
21500 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
21501 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
21502 Update arguments to find_field.
21503 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
21504 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
21505 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
21506 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
21507
21508 2001-11-14 Richard M. Stallman <rms@gnu.org>
21509
21510 * editfns.c (Fpropertize): Allow call with 1 arg.
21511
21512 * dispextern.h (image_background, image_background_transparent):
21513 Conditionalize on HAVE_X_WINDOWS.
21514
21515 2001-11-13 Richard M. Stallman <rms@gnu.org>
21516
21517 * print.c (Fprin1_to_string): Doc fix.
21518
21519 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
21520
21521 * floatfns.c (Fceiling, Ffloor): Doc fixes.
21522
21523 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
21524
21525 * fileio.c (Ffile_accessible_directory_p): Doc fix.
21526
21527 * eval.c (syms_of_eval): Doc fix.
21528
21529 * coding.c (syms_of_coding): Doc fix.
21530
21531 * doc.c (Fsnarf_documentation): Doc fix.
21532
21533 * dispnew.c (syms_of_display): Doc fix.
21534
21535 * category.c (Fget_unused_category): Doc fix.
21536
21537 * buffer.c (syms_of_buffer): Doc fixes.
21538
21539 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
21540
21541 * print.c (prin1, print): Doc fix.
21542
21543 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21544
21545 * fontset.h: Remove declarations of variables
21546 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
21547
21548 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
21549 `Vclip_large_size_font'.
21550
21551 2001-11-13 Jason Rumney <jasonr@gnu.org>
21552
21553 * w32fns.c: Doc fix.
21554
21555 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21556
21557 * xfaces.c (Fface_attributes_as_vector): Doc fix.
21558
21559 * fns.c: Doc fix.
21560
21561 * emacs.c: Doc fix.
21562
21563 * coding.c: Doc fix.
21564
21565 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
21566 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
21567 `new style' [w/`doc:' keyword].
21568
21569 2001-11-12 Richard M. Stallman <rms@gnu.org>
21570
21571 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
21572 LeaveNotify events. Only FocusIn and FocusOut do that now.
21573 (x_display_and_set_cursor): Do display hollow cursors in active
21574 minibuffer windows when they are not selected.
21575
21576 2001-11-12 Jason Rumney <jasonr@gnu.org>
21577
21578 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
21579 * w32term.c: Change doc-string comments to `new style'
21580 [w/`doc:' keyword]. Doc fixes.
21581
21582 * w32fns.c: Don't define max.
21583 (Fx_open_connection): Only execute once.
21584
21585 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21586
21587 * ccl.c: Change macros to use do-while block instead of if-else.
21588 Use braces to follow GNU Coding Standards.
21589
21590 2001-11-11 Richard M. Stallman <rms@gnu.org>
21591
21592 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
21593
21594 * lread.c (read_escape): Use end_of_file_error for reporting eof.
21595
21596 * insdel.c (replace_range): Use adjust_markers_for_replace
21597 instead of adjust_markers_for_delete and adjust_markers_for_insert.
21598
21599 * intervals.h (set_text_properties, set_text_properties_1): Declare.
21600
21601 * textprop.c (set_text_properties_1): New subroutine
21602 broken out of set_text_properties.
21603 (set_text_properties): Use set_text_properties_1.
21604
21605 * intervals.c (graft_intervals_into_buffer):
21606 Use set_text_properties_1 to clear out properties.
21607
21608 * search.c (Freplace_match): Use replace_range to insert
21609 and delete. Don't request property inheritance from
21610 surrounding text.
21611
21612 2001-11-10 Jason Rumney <jasonr@gnu.org>
21613
21614 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
21615 vertical fonts. Allow them if face name is explicitly specified.
21616 Do not give up if we find a font that cannot be converted to an xlfd.
21617
21618 2001-11-10 Gerd Moellmann <gerd@gnu.org>
21619
21620 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
21621 instead of malloc/free.
21622
21623 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21624
21625 * xfaces.c (merge_face_vectors): Use braces to follow GNU
21626 Coding Standards.
21627 (Finternal_set_lisp_face_attribute): Likewise.
21628
21629 * buffer.c (Fbury_buffer): Likewise.
21630
21631 * indent.c (current_column_1): Remove unused variable `prev_col'.
21632
21633 * coding.c (encode_coding): Use precomputed value of `src'.
21634 (encode_coding): Remove unused variable `src_end'.
21635 (code_convert_region): Remove unused variables `count'.
21636
21637 2001-11-07 Jason Rumney <jasonr@gnu.org>
21638
21639 * w32term.c (x_display_and_set_cursor): Do not move system caret
21640 if cursor_glyph is NULL.
21641
21642 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21643
21644 * keymap.c (access_keymap): Fix compilation error.
21645
21646 2001-11-07 Miles Bader <miles@gnu.org>
21647
21648 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
21649
21650 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21651
21652 * intervals.c (graft_intervals_into_buffer):
21653 Remove #ifdef'd-out code.
21654 (graft_intervals_into_buffer): Remove unused variable `middle'.
21655
21656 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
21657 code (eval-current-buffer).
21658 Change doc-string comments to `new style' [w/`doc:' keyword].
21659
21660 2001-11-06 Richard M. Stallman <rms@gnu.org>
21661
21662 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
21663
21664 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
21665
21666 * lread.c (read1): Fix behavior with nested backquoting.
21667
21668 * keyboard.c (make_lispy_event): Check integerness and fix
21669 Lisp_Object/int mixup.
21670
21671 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21672
21673 * fns.c (copy_hash_table): Remove unused variable `v'.
21674
21675 * fontset.c (fontset_font_pattern): Remove unused variable
21676 `family_registry'.
21677
21678 * indent.c (current_column_1): Remove unused variable `prev_col'.
21679
21680 2001-11-05 Richard M. Stallman <rms@gnu.org>
21681
21682 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
21683
21684 * buffer.c (Fkill_buffer): Don't delete auto save file
21685 if buffer is modified.
21686
21687 2001-11-05 Andrew Innes <andrewi@gnu.org>
21688
21689 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
21690 CHECK_NUMBER_CDR.
21691
21692 2001-11-05 Richard M. Stallman <rms@gnu.org>
21693
21694 * unexelf.c (unexec): Minor changes; clean up comments.
21695
21696 2001-11-05 Sam Steingold <sds@gnu.org>
21697
21698 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
21699
21700 2001-11-05 Andreas Schwab <schwab@suse.de>
21701
21702 * sound.c (sound_perror): Save errno from being clobbered.
21703
21704 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
21705
21706 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
21707 the program image directly.
21708
21709 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21710
21711 * buffer.h (Fbuffer_local_value): Add prototype.
21712
21713 2001-11-04 Richard M. Stallman <rms@gnu.org>
21714
21715 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
21716 and CHECK_BUFFER.
21717
21718 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
21719 (record_char): Likewise.
21720
21721 * keyboard.c (make_lispy_event): Don't insist a drag event must
21722 move to a different buffer position. Instead, check for moving at
21723 least double_click_fuzz.
21724
21725 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
21726
21727 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
21728
21729 * indent.c (current_column_1, Fmove_to_column): Separate the code
21730 for display-table glyphs from the code for buffer text, to fix
21731 bugs in the former.
21732
21733 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
21734
21735 * buffer.c (Fbuffer_local_value): New function.
21736 (syms_of_buffer): Defsubr it.
21737
21738 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
21739 value of `cursor-in-non-selected-windows'.
21740
21741 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
21742 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
21743 (syms_of_xdisp): Initialize it.
21744
21745 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21746
21747 * xfns.c (Fx_create_frame): Doc fix.
21748
21749 * coding.c: Change doc-string comments to `new style' [w/`doc:'
21750 keyword].
21751
21752 * eval.c (top_level_value, top_level_set): Remove commented and
21753 #ifdef'd-out code.
21754 (Fdefvar): Fix usage in doc-string.
21755
21756 2001-11-03 Richard M. Stallman <rms@gnu.org>
21757
21758 * xfns.c: Include unistd.h, if it exists.
21759
21760 * editfns.c: Move the include of ctype.h after unistd.h.
21761
21762 * gmalloc.c: Test BROKEN_PROTOTYPES.
21763
21764 2001-11-03 Ken Raeburn <raeburn@gnu.org>
21765
21766 * lisp.h (CHECK_STRING_CAR): New macro.
21767 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
21768 treating XCAR and XCDR as lvalues.
21769 (openp): Use CHECK_STRING_CAR.
21770 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
21771
21772 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
21773
21774 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
21775 (SIGMASKTYPE): Define.
21776
21777 * syssignal.h (sigunblock): Don't define if already defined.
21778
21779 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21780
21781 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
21782 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
21783 Fix typos in comments.
21784
21785 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
21786 and #ifdef'd-out code.
21787 Fix and reindent comments.
21788
21789 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
21790
21791 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
21792 argument `i' in macros.
21793
21794 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
21795 `i' in macros.
21796
21797 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
21798 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
21799 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
21800 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
21801 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
21802 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
21803 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
21804 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
21805 in macros.
21806
21807 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
21808 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
21809 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
21810 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
21811 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
21812 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
21813 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
21814 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
21815 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
21816 (remove unused second argument).
21817
21818 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
21819
21820 * syntax.c (describe_syntax): New wrapper.
21821 (Finternal_describe_syntax_value): Rename from describe_syntax.
21822 Don't insert space at front and \n at the end.
21823 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
21824
21825 * regex.c (re_wctype): Try to fix some warnings.
21826 (regcomp, regexec): Don't forget the __restrict.
21827
21828 2001-11-02 Richard M. Stallman <rms@gnu.org>
21829
21830 * textprop.c (Fget_char_property): Doc fix.
21831
21832 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21833
21834 * process.c (Fstart_process): Add usage to doc-string.
21835
21836 * data.c (Fsetq_default): Ditto.
21837
21838 * callint.c (Finteractive): Ditto.
21839
21840 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
21841
21842 * macros.c: Don't include keymap.h any more.
21843
21844 2001-11-01 Richard M. Stallman <rms@gnu.org>
21845
21846 * data.c (Fmake_local_variable): Doc fix.
21847
21848 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
21849 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
21850
21851 * keymap.c (Fdescribe_buffer_bindings): Print character property
21852 bindings along with or instead of the buffer local map.
21853 Make the overriding maps override what they should.
21854
21855 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21856
21857 * window.c (grow_mini_window): Fix typo in comment.
21858
21859 2001-11-01 Gerd Moellmann <gerd@gnu.org>
21860
21861 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
21862 (XTset_vertical_scroll_bar): Likewise.
21863
21864 * xfns.c (x_build_heuristic_mask): Use four_corners_best
21865 instead of IMAGE_BACKGROUND.
21866
21867 * xfns.c (four_corners_best): Reindent.
21868
21869 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
21870 Handle :box so that it is possible to specify sexprs.
21871
21872 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
21873
21874 * s/hpux11.h: New file.
21875
21876 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21877
21878 * emacs.c (USAGE1): Show command line option --no-window-system
21879 instead of --no-windows in usage.
21880 (standard_args): Rename --no-windows to --no-window-system.
21881 (bug_reporting_address): Follow Emacs coding conventions.
21882
21883 * eval.c (Fcommandp): Doc fix.
21884 Change doc-string comments to `new style' [w/`doc:' keyword].
21885
21886 * frame.c (Fframe_live_p): Doc fix.
21887
21888 * buffer.c (selective-display-ellipses): Doc fix.
21889
21890 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21891
21892 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
21893
21894 * xfaces.c (realize_x_face): If C is not a single-byte character,
21895 set the face's colors_copied_bitwise_p instead of the defaulted_p
21896 members which have a different meaning.
21897 (free_face_colors): Do nothing for a face whose colors have been
21898 copied bitwise.
21899
21900 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
21901
21902 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21903
21904 * marker.c, mocklisp.c: Change doc-string comments to `new style'
21905 [w/`doc:' keyword].
21906
21907 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21908
21909 * fns.c (require_unwind): Return Lisp_Object.
21910
21911 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21912
21913 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
21914 (last-input-char): Revert doc-string to be the same as the
21915 doc-string of `last-input-event'.
21916
21917 * xdisp.c: Fix typos in comments.
21918
21919 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21920
21921 * window.c (grow_mini_window): Handle case that the root
21922 window is already smaller than the nominal mininum height.
21923
21924 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
21925
21926 * emacs.c (main): Don't call keys_of_macros any more.
21927
21928 * lisp.h (keys_of_macros): Remove.
21929
21930 * macros.c (keys_of_macros): Remove.
21931
21932 * xfaces.c (Fface_attribute_relative_p): Declare args.
21933
21934 2001-10-30 Jason Rumney <jasonr@gnu.org>
21935
21936 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
21937 (enum_font_cb2): Ignore fonts with vertical orientation.
21938
21939 2001-10-30 Richard M. Stallman <rms@gnu.org>
21940
21941 * keyboard.c (Finput_pending_p): Doc fix.
21942
21943 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21944
21945 * xterm.c (x_after_update_window_line): Don't run the code
21946 clearing in borders for rows whose visible height is 0.
21947
21948 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21949 resized_p flag is set. If not set, use the much less flickering
21950 method previously used.
21951
21952 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21953
21954 * frame.h (struct frame) <resized_p>: New member.
21955
21956 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21957 as large as the number of bytes to convert.
21958
21959 * lread.c (to_multibyte): New function.
21960 (read1): Use it.
21961
21962 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21963
21964 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21965
21966 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21967
21968 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21969 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21970 if the row's fill_line_p is set and drawing the last glyph with
21971 DRAW_IMAGE_{RAISED,SUNKEN}.
21972
21973 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21974
21975 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21976
21977 * xmenu.c: Include coding.h and charset.h.
21978 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21979 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21980 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21981 Explicitly set wv->help. Use `TRUE' rather than `True'.
21982 (menu_help_callback): Use empty_string.
21983
21984 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21985 (Fx_popup_dialog): Explicitly init f.
21986 (w32_menu_display_help): Use empty_string.
21987
21988 2001-10-29 Richard M. Stallman <rms@gnu.org>
21989
21990 * fns.c (Frequire): Detect recursive try to require the same
21991 feature 3 or more levels deep, and get error.
21992 (require_unwind): New subroutine.
21993 (require_nesting_list): New variable.
21994 (syms_of_fns): Init and staticpro it.
21995
21996 * print.c (print_object): Clarify indication of insertion type.
21997
21998 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21999
22000 * coding.c (syms_of_coding): Document that locale-coding-system is
22001 used for decoding input on X.
22002
22003 * window.c (Fscroll_left, Fscroll_right): Doc fix.
22004
22005 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22006
22007 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
22008 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
22009
22010 2001-10-29 Gerd Moellmann <gerd@gnu.org>
22011
22012 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
22013 use NO_CURSOR if cursor_in_non_selected_windows is false.
22014
22015 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
22016 the slant attribute if FRAME is t.
22017
22018 * xfns.c (x_set_internal_border_width): Set frame garbaged
22019 when X window doesn't exist yet.
22020
22021 * xterm.c (x_after_update_window_line): Clear internal border
22022 in different circumstances.
22023
22024 * xterm.c (XTread_socket) <KeyPress>: Don't use
22025 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
22026 <handa@etl.go.jp>.
22027
22028 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
22029
22030 * m/ibms390.h: New file. From Adam Thornton
22031 <athornton@sinenomine.net>.
22032
22033 2001-10-28 Gerd Moellmann <gerd@gnu.org>
22034
22035 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
22036
22037 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
22038 a loop counter.
22039
22040 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22041
22042 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
22043
22044 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
22045 keyword].
22046 Fix typos in comments.
22047
22048 * emacs.c (bug_reporting_address): New function.
22049 Use it when displaying usage message.
22050
22051 * minibuf.c (read_minibuf): Remove unused external declaration of
22052 variable `Qread_only'.
22053
22054 * keymap.c (access_keymap): Remove unused variable `charset'.
22055
22056 2001-10-28 Miles Bader <miles@gnu.org>
22057
22058 * xfaces.c (merge_face_heights): Handle TO being relative as well.
22059 Remove #ifdef'd-out code.
22060 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
22061 (syms_of_xfaces): Initialize them.
22062
22063 2001-10-27 Jason Rumney <jasonr@gnu.org>
22064
22065 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
22066 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
22067 position using the system caret.
22068
22069 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
22070 (w32_system_caret_height, w32_system_caret_x)
22071 (w32_system_caret_y): New variables for tracking system caret.
22072 (w32_initialize): Initialize them.
22073 (x_display_and_set_cursor): Make system caret follow the active cursor.
22074
22075 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
22076 New messages types.
22077
22078 * w32term.c (note_mouse_highlight): Clear old help_echo.
22079
22080 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22081
22082 * xterm.c: Fix typo in a comment.
22083
22084 * emacs.c: Fix typos in comments.
22085 Remove unnecessary spaces.
22086 Change doc-string comments to `new style' [w/`doc:' keyword].
22087 (USAGE2): Fix typos in usage string.
22088
22089 * xterm.c: Fix typo in a comment.
22090
22091 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
22092 emacs.c.
22093
22094 2001-10-27 Gerd Moellmann <gerd@gnu.org>
22095
22096 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
22097 instead of 1/2 line_height in the heuristic for skipping
22098 farther backward when target_y was not reached.
22099
22100 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
22101 Display errno only if non-zero.
22102 (sound_warning): New function.
22103 (vox_configure): Don't treat failing to set sample rate as error.
22104 (various places): Improve error messages.
22105
22106 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
22107
22108 * fileio.c (Faccess_file): Run the argument filename through
22109 Fexpand_file_name, before using it.
22110
22111 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
22112 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
22113
22114 2001-10-26 Gerd Moellmann <gerd@gnu.org>
22115
22116 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
22117
22118 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
22119 Fix clearing in the case of scroll bars on the right.
22120
22121 2001-10-26 Juanma Barranquero <lektu@terra.es>
22122
22123 * w32gui.h (XImage): Add a dummy typedef.
22124
22125 2001-10-26 Gerd Moellmann <gerd@gnu.org>
22126
22127 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
22128
22129 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
22130
22131 * frame.c (Fframe_parameter): Fix last change.
22132
22133 * fileio.c: Revert last change (which removed old commented-out
22134 version of expand-file-name). Add a comment that explains why
22135 this old version should not be removed.
22136
22137 2001-10-25 Gerd Moellmann <gerd@gnu.org>
22138
22139 * frame.c (Fframe_parameter): Fix a bug whereby some
22140 ``artificial'' frame parameters, like `minibuffer' were not
22141 obtained by calling Fframe_parameters.
22142
22143 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
22144 cursor differently.
22145
22146 * xdisp.c (move_it_vertically_backward): Compute line height
22147 differently. Add heuristic to try to be more compatible to 20.x.
22148
22149 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
22150
22151 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
22152
22153 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
22154 boolean.
22155
22156 2001-10-25 Miles Bader <miles@gnu.org>
22157
22158 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
22159 BG is a pointer to a structure, not a structure.
22160 (gif_format, png_format): Add missing commas.
22161
22162 2001-10-24 Richard M. Stallman <rms@gnu.org>
22163
22164 * xfaces.c (Fface_attributes_as_vector): New function.
22165 (syms_of_xfaces): Defsubr it.
22166
22167 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22168
22169 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
22170 variable `area'.
22171
22172 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22173
22174 * search.c (scan_newline): Remove unused variable `selective_display'.
22175
22176 2001-10-25 Miles Bader <miles@gnu.org>
22177
22178 * dispextern.h (struct image): Add `background',
22179 `background_valid', and `background_transparent' fields.
22180 (image_background, image_background_transparent): New declarations.
22181 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
22182 * xfns.c (image_background, image_background_transparent)
22183 (four_corners_best): New functions.
22184 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
22185 (gs_format): Add `:background' entry.
22186 (lookup_image): Set IMG's background color if specified.
22187 (pbm_load, xbm_load_image, png_load): Set IMG's background field
22188 when appropriate.
22189 (x_clear_image_1): Reset `background_valid' and
22190 `background_transparent_valid' fields.
22191 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
22192 calculating it here. Set IMG's background_transparent field.
22193 (enum xpm_keyword_index): Add XPM_BACKGROUND.
22194 (enum png_keyword_index): Add PNG_BACKGROUND.
22195 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
22196 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
22197 (enum gif_keyword_index): Add GIF_BACKGROUND.
22198 (enum gs_keyword_index): Add GS_BACKGROUND.
22199 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
22200 Pre-calculate image background color where necessary.
22201 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
22202 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
22203 color to use for image glyph reliefs.
22204
22205 2001-10-24 Gerd Moellmann <gerd@gnu.org>
22206
22207 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
22208 in full-width rows.
22209
22210 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
22211 Fix clearing of area not covered by scroll bar.
22212
22213 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22214
22215 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
22216 and `real_start'.
22217 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
22218 (glyph_rect): Remove unused variable `area'.
22219
22220 2001-10-24 Gerd Moellmann <gerd@gnu.org>
22221
22222 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
22223
22224 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
22225 (row_containing_pos): Take additional argument DY.
22226 Treat rows ending in middle of char differently.
22227 (display_line): Handle tabs on window systems differently.
22228
22229 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
22230 with additional argument.
22231
22232 * dispextern.h (row_containing_pos): Adjust prototype.
22233
22234 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
22235 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
22236 (try_window_id, try_window_reusing_current_matrix)
22237 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
22238 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
22239
22240 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22241
22242 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
22243 gnuemacs).
22244 (HAVE_BOXES): Fix typo in comment.
22245 (push_menu_pane): Fix typo in comment.
22246
22247 * xdisp.c (display_prop_string_p): Remove unused local declaration
22248 of `Qwhen'.
22249 (single_display_prop_string_p): Remove unused local declarations
22250 of `Qwhen' and `Qmargin'.
22251 (string_buffer_position): Remove unused variable `around'.
22252 (store_frame_title): Remove unused variable `width'.
22253
22254 * window.c: Don't define max.
22255 (coordinates_in_window): Remove unused variable `uy'.
22256
22257 * widget.c: Don't define max.
22258
22259 * process.c: Don't define max.
22260 (create_process): Remove unused variable `buffer'.
22261
22262 2001-10-23 Gerd Moellmann <gerd@gnu.org>
22263
22264 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
22265
22266 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
22267
22268 * xfaces.c (Finternal_set_lisp_face_attribute)
22269 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
22270 frame is on a windowed display.
22271
22272 2001-10-23 Gerd Moellmann <gerd@gnu.org>
22273
22274 * dispnew.c (sync_window_with_frame_matrix_rows):
22275 Fix handling of windows which aren't full-width, fix handling
22276 of marginal areas.
22277
22278 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
22279
22280 2001-10-23 Andreas Schwab <schwab@suse.de>
22281
22282 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
22283 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
22284
22285 2001-10-23 Gerd Moellmann <gerd@gnu.org>
22286
22287 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
22288 REAL_END. Notice if cursor gets overwritten.
22289 (notice_overwritten_cursor): Take X positions as parameters.
22290 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
22291 around call to x_draw_glyphs.
22292
22293 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22294
22295 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
22296 instead of C) and usage.
22297
22298 * editfns.c (char-to-string): Fix argument names (use CHAR instead
22299 of C) and usage.
22300
22301 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
22302 `left', `max_width' and `max_height'.
22303
22304 2001-10-23 Gerd Moellmann <gerd@gnu.org>
22305
22306 * xdisp.c (display_line): For a tab continued to the next line,
22307 set row's ends_in_middle_of_char_p.
22308
22309 2001-10-22 Gerd Moellmann <gerd@gnu.org>
22310
22311 * xdisp.c (display_line): Fix computation of continuation lines
22312 width for TABs.
22313
22314 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22315
22316 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
22317 `Qlaplace'.
22318
22319 * fileio.c: Remove unused code.
22320
22321 2001-10-22 Miles Bader <miles@gnu.org>
22322
22323 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
22324 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
22325 Remove `DOC_STRINGS_IN_COMMENTS' cases.
22326
22327 2001-10-21 Jason Rumney <jasonr@gnu.org>
22328
22329 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
22330
22331 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
22332
22333 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
22334 (Finsert_string): Avoid the multi-line string literals warning.
22335
22336 2001-10-22 Miles Bader <miles@gnu.org>
22337
22338 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
22339 (Fdocumentation): Don't use it.
22340 (syms_of_doc): Don't initialize it.
22341
22342 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
22343 * print.c (Fwith_output_to_temp_buffer): Likewise.
22344 * window.c (Fsave_window_excursion): Likewise.
22345 * editfns.c (Fsave_excursion, Fsave_current_buffer)
22346 (Fsave_restriction): Likewise.
22347 * eval.c (Frun_hooks, Frun_hook_with_args)
22348 (Frun_hook_with_args_until_failure)
22349 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
22350 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
22351 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
22352 (Funwind_protect, Fcondition_case): Likewise.
22353 * coding.c (Ffind_operation_coding_system): Likewise.
22354 * keyboard.c (Ftrack_mouse): Likewise.
22355
22356 2001-10-21 Miles Bader <miles@gnu.org>
22357
22358 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
22359 (Fmake_hash_table): Add usage: string to doc string.
22360 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
22361 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
22362 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
22363 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
22364 (Fml_prefix_argument_loop): Likewise.
22365
22366 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22367
22368 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
22369
22370 * sysdep.c (init_sys_modes): Change doc-string comments to `new
22371 style' [w/`doc:' keyword].
22372
22373 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
22374 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
22375 comments to `new style' [w/`doc:' keyword].
22376
22377 2001-10-21 Jason Rumney <jasonr@gnu.org>
22378
22379 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
22380
22381 * w32term.c (remember_mouse_glyph): New function.
22382 (w32_mouse_position): Use it.
22383 (note_mouse_movement): If the mouse moved off the glyph, remember
22384 its new position.
22385
22386 * w32term.h (struct w32_output): Correct spelling of x_compatible.
22387 (w32_display_info): Add mouse_face_overlay.
22388
22389 * w32term.c (notice_overwritten_cursor): Renamed from
22390 note_overwritten_text_cursor. Rewritten to take glyph widths into
22391 account.
22392 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
22393 (fast_find_string_pos): New function.
22394 (fast_find_position): Return the correct vpos. Add parameter
22395 STOP. In the final row, stop before glyphs having STOP as object.
22396 Don't consider glyphs that are not from a buffer.
22397 (fast_find_position) [0]: Add a presumably more correct version
22398 for after 21.1.
22399 (expose_window_tree, expose_frame): Don't compute intersections here.
22400 (expose_window): Do it here instead.
22401 (expose_window_tree, expose_window, expose_line): Return 1 when
22402 overwriting mouse-face.
22403 (expose_window): If W is the window currently being updated, mark
22404 the frame garbaged.
22405 (expose_frame): If mouse-face was overwritten, redo it.
22406 (x_use_underline_position_properties): New variable.
22407 (syms_of_xterm): DEFVAR_BOOL it.
22408 (x_draw_glyph_string): Add comment to use it in future.
22409 (x_draw_glyph_string): Restore clipping after drawing box.
22410 Fix a computation of the underline position.
22411 (w32_get_glyph_string_clip_rect): Minor cleanup.
22412 (x_fill_stretch_glyph_string): Remove an assertion.
22413 (x_produce_glyphs): Don't convert multibyte characters
22414 to unibyte characters in unibyte buffers.
22415 (cursor_in_mouse_face_p): New function.
22416 (x_draw_stretch_glyph_string): Use it to choose a different GC
22417 when drawing a cursor within highlighted text. Don't draw
22418 background again if it has already been drawn.
22419 (x_draw_glyph_string_box): Don't draw a full-width
22420 box just because the glyph row's full_width_p flag is set.
22421 (x_draw_glyphs): Fix computation of rightmost x for
22422 full-width rows.
22423 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
22424 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
22425 change bottom shadow accordingly. Some cleanup.
22426 (x_update_window_end): Handle overwritten mouse face
22427 also for tool bar windows.
22428 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
22429 DRAW is DRAW_IMAGE_RAISED.
22430 (clear_mouse_face): Return 1 if text with mouse face was
22431 actually redrawn. Make the function static.
22432 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
22433 optimize away highlighting if we pass over that same overlay again.
22434 (note_mouse_highlight): Call mouse_face_overlay_overlaps
22435 to detect a case where we have to highlight a different region
22436 despite not having left the currently highlighted region.
22437 Set mouse_face_overlay in the x_display_info. Avoid changing the
22438 mouse pointer shape when show_mouse_face has already done it, or
22439 there is no need. Handle mouse-face and help-echo in strings.
22440 (glyph_rect): New function.
22441 (w32_mouse_position): Use it to raise the threshold for mouse
22442 movement event generation.
22443 (w32_initialize_display_info): Initialize the x_display_info's
22444 mouse_face_overlay.
22445 (w32_set_vertical_scroll_bar): Don't clear a zero height
22446 or width area.
22447 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
22448 a widget to zero height.
22449
22450 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
22451 Protect unibyte strings created by replacing their multibyte
22452 equivalents in menu_items.
22453 (w32_menu_show): Don't overwrite an item's name with its key
22454 description in case the description is a multibyte string.
22455 (single_submenu): Some cleanup.
22456
22457 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
22458 (postprocess_image): New function.
22459 (lookup_image): Call it for all image types except PostScript.
22460 (x_kill_gs_process): Call postprocess_image.
22461 (tiff_error_handler, tiff_warning_handler): New functions.
22462 (tiff_load): Install them as handlers.
22463 (x_kill_gs_process): Recognize if someone has cleared the image
22464 cache under us.
22465 (valid_image_p): Protect better against invalid image
22466 specifications. Previous code could signal an error.
22467 (Fx_hide_tip, Fshow_tip): Doc fix.
22468 (Fv_max_tooltip_size): New variable.
22469 (syns_of_xfns): DEFVAR_LISP it.
22470 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
22471 window buffer to *tip* right after creating the frame. Set frame's
22472 window_width. Use a maximum tooltip size specified by
22473 Vx_max_tooltip_size, if that has valid contents.
22474 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
22475 Make sure the tooltip is completely visible.
22476 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
22477 (Fx_create_frame): Adjust the frame's height for presence
22478 of the tool bar before calling x_figure_window_size.
22479 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
22480 when the window gets smaller.
22481 (x_set_foreground_color): Set frame's cursor_pixel.
22482 (x_set_foreground_color, x_set_background_color): Cleaned up.
22483 (x_set_font): Handle case of x_new_fontset returning the same name
22484 as before, although there was a change in fontsets.
22485
22486 2001-10-21 Miles Bader <miles@gnu.org>
22487
22488 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
22489 (Flogxor): Add usage: string to doc string.
22490 * charset.c (Fstring): Likewise.
22491 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
22492 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
22493
22494 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22495
22496 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
22497
22498 * alloc.c: Reindent DEFUNs with doc: keywords.
22499
22500 * abbrev.c (Finsert_abbrev_table_description): Reindent.
22501
22502 * frame.c: Change doc-string comments to `new style' [w/`doc:'
22503 keyword].
22504
22505 See ChangeLog.9 for earlier changes.
22506
22507 ;; Local Variables:
22508 ;; coding: iso-2022-7bit
22509 ;; End:
22510
22511 Copyright (C) 2001, 2002, 2003, 2004, 2005,
22512 2006 Free Software Foundation, Inc.
22513 Copying and distribution of this file, with or without modification,
22514 are permitted provided the copyright notice and this notice are preserved.
22515
22516 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4