]> code.delx.au - gnu-emacs/blob - src/ChangeLog
* xfns.c: x_show_hidden_files, new variable.
[gnu-emacs] / src / ChangeLog
1 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * xfns.c: x_show_hidden_files, new variable.
4 (syms_of_xfns): Defvar it.
5
6 * gtkutil.c (xg_toggle_visibility_cb): New function.
7 (xg_get_file_with_chooser): Add toggle hidden files and a message
8 to the new file chooser dialog. Show hidden files if
9 x_show_hidden_files is non-zero.
10
11 2005-12-26 Richard M. Stallman <rms@gnu.org>
12
13 * keyboard.h: Undo previous change.
14
15 * Makefile.in (undo.o): Undo previous change.
16
17 * undo.c: Undo previous change.
18
19 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
20
21 * keyboard.h: extern last_point_position_window.
22
23 * undo.c: include keyboard.h.
24
25 * Makefile.in (undo.o): Depend on keyboard.h.
26
27 2005-12-26 Richard M. Stallman <rms@gnu.org>
28
29 * commands.h (last_point_position_window): Declare.
30
31 * undo.c: Depend on window.h.
32 (record_point): Save old point from the correct window.
33
34 * keyboard.c (last_point_position_window): New variable.
35 (command_loop_1): Set last_point_position_window.
36 (syms_of_keyboard): Init it.
37
38 * Makefile.in (undo.o): Depend on window.h.
39
40 2005-12-25 Richard M. Stallman <rms@gnu.org>
41
42 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
43 to undo a `provide'.
44
45 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
46
47 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
48
49 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
50 define for FreeBSD on this platform.
51
52 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
53
54 * macterm.h (TYPE_FILE_NAME): New define.
55 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
56
57 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Add
58 prototypes. Make static.
59 (mac_aedesc_to_lisp): Initialize err to noErr.
60 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
61 (init_coercion_handler): New functions.
62 (Fmac_coerce_ae_data): Use coercion of Apple event data for
63 translation from/to file names.
64
65 * macterm.c: Don't include sys/param.h.
66 (init_coercion_handler): Add extern.
67 [MAC_OS8] (main): Call init_coercion_handler.
68 (mac_initialize) [MAC_OSX]: Likewise.
69 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
70 Apple event data for translation from/to file names.
71
72 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
73
74 * image.c [MAC_OS] (find_image_fsspec): Likewise.
75
76 2005-12-23 Martin Rudalics <rudalics@gmx.at> (tiny change)
77
78 * insdel.c (insert, insert_and_inherit, insert_before_markers)
79 (insert_before_markers_and_inherit): Make sure FROM is correct
80 when `after-change-functions' are called.
81
82 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
83
84 * xfns.c (Fx_uses_old_gtk_dialog): New function.
85
86 * gtkutil.c (xg_uses_old_file_dialog): New function.
87 (xg_get_file_name): Use xg_uses_old_file_dialog.
88
89 * gtkutil.h: Declare xg_uses_old_file_dialog.
90
91 2005-12-22 Richard M. Stallman <rms@gnu.org>
92
93 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
94
95 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
96
97 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
98
99 * macgui.h (XCharStruct): Remove member `valid_p'.
100 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
101 (XCharStructRow): New typedef.
102 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID): New
103 macros.
104 (struct MacFontStruct): Add member `bounds'. Remove member
105 `per_char'. All uses for QuichDraw Text fonts are changed to
106 `bounds.per_char'. ATSUI font bounds are represented as an array
107 `bounds.rows' of XCharStructRow's, each of which consists of a
108 bitmap of valid entries and an array of char bounds.
109
110 * macterm.c (mac_per_char_metric): Add prototype.
111 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
112 (mac_query_char_extents): New function.
113 (x_per_char_metric): Use it.
114 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
115 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Use
116 mac_per_char_metric instead of x_per_char_metric.
117 (mac_text_extents_16): New function.
118 (mac_compute_glyph_string_overhangs): Use it.
119 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
120
121 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
122
123 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
124 (Fminibuffer_completion_help): Remove duplicates before display.
125
126 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
127
128 * print.c (print_preprocess): Don't lose print_depth levels while
129 iterating.
130
131 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
132
133 * macmenu.c (Qmac_apple_event): Add extern.
134 (set_frame_menubar, mac_menu_show keymp_panes)
135 (single_keymap_panes, list_of_panes, list_of_item)
136 (single_menu_item): Add argument types to prototypes.
137 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
138 (struct skp): New struct (from xmenu.c).
139 (single_keymap_panes, single_menu_item, list_of_panes)
140 (list_of_item): Sync with xmenu.c.
141 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
142 POSITION if it is mac-apple-event event.
143 (menubar_selection_callback): Don't use menu_command_in_progress.
144 (set_frame_menubar): First parse all submenus, then make
145 widget_value trees from them. Don't allocate any widget_value
146 objects until we are done with the parsing.
147 (parse_single_submenu, digest_single_submenu): New functions.
148 (single_submenu): Function deleted, replaced by those two.
149 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
150 create or dispose of EventHandlerUPP. Install hander to all submenus.
151 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
152 instead of ENCODE_SYSTEM.
153 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
154 integer values.
155 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
156 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
157 format menu item string. Don't use NULL for integer value.
158
159 * macterm.h (struct mac_output): Remove unused member
160 menu_command_in_progress.
161
162 2005-12-20 Juri Linkov <juri@jurta.org>
163
164 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
165 position is non-nil, else set it to nil.
166
167 * macmenu.c (Fx_popup_menu): Add `else' to set
168 Vmenu_updating_frame to nil only if position is nil.
169
170 * w32menu.c (Fx_popup_menu): Add `else' to set
171 Vmenu_updating_frame to nil only if position is nil.
172
173 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
174
175 * keyboard.c (make_lispy_event): Drag-and-drop items are now
176 stored in member `args' of struct input_event.
177
178 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
179
180 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
181 stored in member `args' of struct input_event.
182
183 * w32term.c (construct_drag_n_drop): Likewise.
184
185 * macterm.c (mac_do_receive_drag): Likewise.
186 (x_use_underline_position_properties): Undo 2005-07-13 change.
187 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
188 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
189 (mac_pass_command_to_system, mac_pass_control_to_system):
190 New boolean variables renamed from Lisp_Object ones
191 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
192 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
193 All uses changed.
194 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
195 Make them user options.
196 (mac_handle_command_event, mac_store_services_event):
197 Call create_apple_event_from_event_ref without 5th argument.
198 (backtranslate_modified_keycode): Mask off modifier keys that are
199 mapped to some Emacs modifiers before passing it to KeyTranslate.
200 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
201 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
202 Fix docstrings of `mac-*-modifier'.
203
204 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
205 (do_applescript): Change argument types to Lisp_Object.
206 All uses changed.
207
208 * macterm.h (create_apple_event_from_event_ref): Remove 5th
209 argument from extern.
210
211 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
212
213 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
214 the answer, return `lambda', not nil.
215
216 2005-12-17 Eli Zaretskii <eliz@gnu.org>
217
218 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
219 enclosed in $(ARGQUOTE)s should not be split between two lines, as
220 that will break with GNU Make >3.80, when sh.exe is used and
221 arg quoting is with '..'.
222
223 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
224
225 * print.c (print_preprocess): Just signal an error if print_depth
226 is exceeded.
227
228 2005-12-17 Eli Zaretskii <eliz@gnu.org>
229
230 * .gdbinit: Set a breakpoint on w32_abort.
231
232 2005-12-16 Juri Linkov <juri@jurta.org>
233
234 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
235 created from minibuffer_completion_contents.
236 (minibuffer_completion_contents): Remove.
237 (do_completion, Fminibuffer_complete_word)
238 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
239 with Fminibuffer_completion_contents.
240 (syms_of_minibuf): Add Sminibuffer_completion_contents.
241 (Fdisplay_completion_list): Doc fix.
242 (display_completion_list_1): Use `nil' for second arg of
243 `Fdisplay_completion_list'.
244
245 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
246
247 * xfns.c (compute_tip_xy): Handle negative dx and dy.
248
249 * w32fns.c (compute_tip_xy): Ditto.
250
251 * macfns.c (compute_tip_xy): Ditto.
252
253 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
254
255 * print.c (print_preprocess): Go to a deeper print_depth to avoid
256 print_object loop.
257
258 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
259
260 * coding.c (code_convert_region_unwind): GCPRO arg.
261
262 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
263
264 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
265 i.e. dy is offset from top of frame instead of bottom.
266
267 * macfns.c (compute_tip_xy): Ditto.
268
269 * w32fns.c (compute_tip_xy): Ditto.
270
271 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
272 (xg_get_image_for_pixmap, xg_create_frame_widgets)
273 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
274
275 * xmenu.c (menubar_selection_callback): Do nothing if the callback
276 is for an unselected radio menu item.
277
278 2005-12-11 Richard M. Stallman <rms@gnu.org>
279
280 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
281
282 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
283
284 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
285 (Flookup_key): Doc fix.
286 (syms_of_keymap) <function-key-map>: Doc fix.
287
288 * fns.c (Frequire): Treat evaluating from a source file
289 like loading the file.
290
291 * floatfns.c (Flog): Doc fix.
292
293 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
294 when we change the buffer.
295
296 2005-12-11 Juri Linkov <juri@jurta.org>
297
298 * minibuf.c (display_completion_list_1):
299 Call `minibuffer_completion_contents' instead of using `nil' as
300 second arg of `Fdisplay_completion_list'.
301 (keys_of_minibuf): Unbind SPC in
302 Vminibuffer_local_filename_completion_map (see also related
303 change on 2005-12-06).
304
305 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
306
307 * emacs.c (main) [MAC_OS8]: Undo previous change.
308
309 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
310 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
311
312 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
313
314 * Makefile.in (macselect.o): Depend on keymap.h.
315
316 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
317 syms_of_macselect.
318
319 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
320 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
321
322 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
323 (syms_of_keyboard) [MAC_OS]: Initialize it.
324 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
325
326 * mac.c (Qundecoded_file_name): New variable.
327 (syms_of_mac): Initialize it.
328 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
329 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
330 (Fmac_coerce_ae_data): New defun.
331 (syms_of_mac): Defsubr it.
332
333 * macselect.c: Include keymap.h.
334 (mac_ready_for_apple_events): New variable.
335 (Vmac_apple_event_map, Qmac_apple_event_class)
336 (Qmac_apple_event_id): New variables.
337 (syms_of_macselect): Initialize them.
338 (Qundefined, mac_store_apple_event): Add externs.
339 (struct apple_event_binding): New struct.
340 (find_event_binding_fun, find_event_binding)
341 (mac_find_apple_event_spec, defer_apple_events)
342 (mac_handle_apple_event, init_apple_event_handler)
343 (copy_scrap_flavor_data): New functions.
344 (Fmac_process_deferred_apple_events): New defun.
345 (syms_of_macselect): Defsubr it.
346 (mac_store_services_event): Fix extern.
347 (mac_handle_service_event): Don't allocate Lisp objects during
348 asynchronous input processing. Use mac_store_services_event
349 instead of mac_store_application_menu_event.
350
351 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
352 (Qpreferences): Remove variables.
353 (syms_of_macterm) : Don't initialize them.
354 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
355 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
356 (init_required_apple_events, do_ae_open_application)
357 (do_ae_print_documents, do_ae_open_documents)
358 (do_ae_quit_application): Remove functions and prototypes.
359 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
360 (mac_find_apple_event_spec): Add externs.
361 (mac_store_application_menu_event): Remove function.
362 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
363 (mac_handle_command_event): Create Apple event from Carbon event.
364 Use mac_store_apple_event instead of mac_store_application_menu_event.
365 [MAC_OSX] (mac_store_services_event): Likewise.
366 (struct SelectionRange, SelectionRange): Remove struct and typedef.
367 [MAC_OS8] (main): Call init_apple_event_handler instead of
368 init_required_apple_events.
369 (mac_initialize) [MAC_OSX]: Likewise.
370 [!USE_CARBON_EVENTS] (mac_wait_next_event): Use
371 mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
372
373 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp): Add
374 externs.
375 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
376 (Fmac_get_preference): Add EXFUN.
377
378 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
379 event.
380
381 2005-12-09 Richard M. Stallman <rms@gnu.org>
382
383 * xfns.c (Fx_create_frame): Reinstate previous change.
384
385 2005-12-09 Eli Zaretskii <eliz@gnu.org>
386
387 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
388 GDB to the abort dialog.
389
390 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
391
392 * indent.c (Fvertical_motion): Force move if starting on
393 stretch glyph.
394
395 2005-12-08 Richard M. Stallman <rms@gnu.org>
396
397 * lread.c (read_escape) <\s>: Don't treat strings specially.
398
399 * xfns.c (Fx_create_frame): Comment out previous change.
400
401 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
402
403 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
404 when needed.
405
406 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
407
408 * minibuf.c (keys_of_minibuf): Just unbind SPC in
409 Vminibuffer_local_filename_completion_map rather than forcing it
410 explicitly to the same binding as the global map.
411
412 2005-12-06 Ken Raeburn <raeburn@gnu.org>
413
414 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP
415 argument.
416 * bytecode.c (Fbyte_code): Likewise.
417 * fileio.c (internal_delete_file, Fread_file_name_internal):
418 Likewise.
419 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
420 * undo.c (truncate_undo_list): Likewise.
421
422 2005-12-05 Richard M. Stallman <rms@gnu.org>
423
424 * window.c (enlarge_window): Eliminate arg preserve_before.
425 Assume it is 0. All callers changed.
426 (Fenlarge_window, Fshrink_window): Likewise.
427
428 2005-12-02 Eli Zaretskii <eliz@gnu.org>
429
430 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
431 fit below.
432
433 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
434
435 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
436
437 * xfns.c (x_real_positions): int ign => unsigned int.
438 (xg_set_icon_from_xpm_data): Remove unused variable err.
439 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
440 to remove compiler warning.
441 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
442
443 2005-12-02 David Reitter <david.reitter@gmail.com>
444
445 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
446 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
447 and Vminibuffer_local_must_match_filename_map keymaps.
448 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
449
450 * keymap.c (Vminibuffer_local_filename_completion_map)
451 (Vminibuffer_local_must_match_filename_map): New variables.
452 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
453 parent to be Vminibuffer_local_completion_map and
454 Vminibuffer_local_must_match_map, respectively.
455
456 * commands.h (Vminibuffer_local_filename_completion_map)
457 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
458
459 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
460
461 * window.c (Fset_window_configuration): Don't accidentally copy the
462 window-point of one window to another.
463
464 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
465
466 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
467
468 2005-11-30 Kim F. Storm <storm@cua.dk>
469
470 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
471 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
472 passing it to `emacs_write'.
473
474 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
475
476 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
477
478 2005-11-27 Richard M. Stallman <rms@gnu.org>
479
480 * window.c (adjust_window_trailing_edge): New function.
481 (Fadjust_window_trailing_edge): New function.
482 (syms_of_window): Defsubr it.
483 (window_deletion_count): New variable.
484 (delete_window): Update window_deletion_count.
485
486 2005-11-26 Eli Zaretskii <eliz@gnu.org>
487
488 * minibuf.c (syms_of_minibuf): Mention the extension of
489 `completion-auto-help's meaning by complete.el.
490
491 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
492
493 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
494 Handle :inherit property as a lisp expression.
495
496 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
497
498 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
499 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
500 Qsuper, and Qmodifier_value.
501 (Vmac_control_modifier, Vmac_option_modifier)
502 (Vmac_command_modifier, Vmac_function_modifier)
503 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
504 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
505 (Vmac_charset_info_alist): Doc fixes.
506
507 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
508
509 * emacs.c (main) [MAC_OSX]: Change working directory to home
510 directory if `-psn_*' option is specified.
511
512 * mac.c (DECODE_UTF_8): Remove macro.
513 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
514 created from cfstring_to_lisp.
515 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
516 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
517
518 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
519 Add prototype.
520
521 2005-11-21 Ken Raeburn <raeburn@gnu.org>
522
523 * keymap.c (shadow_lookup): Use make_number to pass a number to
524 Fsubstring.
525
526 2005-11-21 Juri Linkov <juri@jurta.org>
527
528 * puresize.h (BASE_PURESIZE): Increment to 1180000.
529
530 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
531
532 * xfaces.c (Finternal_set_lisp_face_attribute):
533 Use :ignore-defface for new frame defaults when `unspecified' is
534 supplied.
535 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
536 (merge_face_vectors): Don't do :ignore-defface overwriting here.
537 (Finternal_merge_in_global_face): Do it here.
538
539 2005-11-20 Juri Linkov <juri@jurta.org>
540
541 * charset.c (invalid_character): Use Lisp-readable syntax
542 for octal and hex. Reorder decimal, octal and hex values.
543
544 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
545
546 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
547 this type is recognised when debugging.
548
549 2005-11-19 Andreas Schwab <schwab@suse.de>
550
551 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
552 Lisp_Cons and Lisp_Float.
553
554 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
555
556 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
557 New variable.
558 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
559 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
560 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
561 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
562
563 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
564
565 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
566
567 * xfaces.c (Qignore_defface): New variable.
568 (syms_of_xfaces): Provide `:ignore-defface'.
569 (IGNORE_DEFFACE_P): New macro.
570 (check_lface_attrs, lface_fully_specified_p)
571 (Finternal_set_lisp_face_attribute)
572 (Fface_attribute_relative_p, Fmerge_face_attribute):
573 Handle Qignore_defface as a possible value.
574 (merge_face_vectors): The merged face is `unspecified' if the
575 mergee specifies `:ignore-defface'.
576
577 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
578
579 * lread.c (readevalloop): Add missing GCPROs.
580
581 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
582
583 * xfns.c (xg_set_icon_from_xpm_data): New function.
584
585 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
586 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
587
588 * xterm.c (x_bitmap_icon): Use the xpm if available.
589
590 * image.c (x_create_bitmap_from_xpm_data): New function.
591 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
592
593 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
594
595 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
596
597 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
598
599 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
600
601 2005-11-15 Andreas Schwab <schwab@suse.de>
602
603 * lisp.h (struct Lisp_Cons): Make cdr a union.
604 (XCDR_AS_LVALUE): Adjust.
605 (struct Lisp_Float): Make data a union.
606 (XFLOAT_DATA): Adjust.
607
608 * alloc.c (free_float): Make free list chaining aliasing-safe.
609 (make_float): Likewise.
610 (free_cons): Likewise.
611 (Fcons): Likewise.
612 (check_cons_list): Likewise.
613 (Fmake_symbol): Likewise.
614 (allocate_misc): Likewise.
615 (free_misc): Likewise.
616 (gc_sweep): Likewise.
617
618 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
619
620 * mac.c (HASHKEY_QUERY_CACHE): New define.
621 (xrm_create_database, xrm_q_put_resource): Empty query cache.
622 (xrm_get_resource): Use query cache.
623
624 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
625 inhibit_window_system is set.
626
627 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
628
629 * macgui.h (USE_CG_TEXT_DRAWING): New define.
630 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
631 and cg_glyphs.
632
633 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
634 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
635 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
636 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
637 not used and font substitution never occurs for ASCII and Latin-1
638 characters.
639 (XLoadQueryFont): Maximum and minimum metrics are now those among
640 ASCII characters.
641 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
642 height adjustments for Courier, Helvetica, and Times.
643
644 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
645
646 2005-11-11 David Reitter <david.reitter@gmail.com>
647
648 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
649 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
650 Vmac_control_modifier / mac-control-modifier,
651 Vmac_option_modifier / mac-option-modifier,
652 Vmac_command_modifier / mac-command-modifier.
653 (mac_to_emacs_modifiers): Use the new style modifier
654 variables. Return UInt32 (modifiers are longs now.)
655 (backtranslate_modified_keycode): New function (refactoring).
656 (XTread_socket): Use new modifier variables and refactored function.
657 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
658 no dedicated meta key. Not in use anyway.)
659 (convert_fn_keycode): Map Fn-keys to their original keycode
660 using a table (english keyboard only).
661
662 2005-11-11 Kim F. Storm <storm@cua.dk>
663
664 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
665 Add post hook to "backtrace" to always dump lisp call stack to
666 increase chance of people sending it to us when reporting bugs.
667
668 * doc.c (Fsubstitute_command_keys): Doc fix.
669
670 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
671
672 * xdisp.c (handle_stop): Skip overlay string handling if
673 ignore_overlay_strings_at_pos_p is set.
674 (set_iterator_to_next): At end of display vector, set
675 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
676 string, so we skip those overlay strings at current pos.
677
678 2005-11-10 Lars Hansen <larsh@soem.dk>
679
680 * fileio.c (file-regular-p): Doc fix.
681
682 2005-11-10 Kim F. Storm <storm@cua.dk>
683
684 * alloc.c (valid_lisp_object_p): New function to validate that
685 an object is really a valid Lisp_Object.
686
687 * lisp.h (valid_lisp_object_p): Add prototype.
688
689 * print.c (safe_debug_print): New function to be called from gdb
690 to print Lisp objects; use valid_lisp_object_p to avoid crashing
691 if user tries to print something which is not a Lisp object.
692
693 * .gdbinit (pp, pp1): Use safe_debug_print.
694 (pv, pv1): New commands to print value of a lisp variable.
695
696 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
697
698 * .gdbinit (pp1): New user-defined function.
699
700 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
701
702 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
703
704 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
705 related variables for dumped executable.
706
707 * unexmacosx.c (unexec_write_zero): New function.
708 (copy_data_segment): Clear uninitialized local variables in
709 statically linked libraries.
710
711 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
712
713 2005-11-09 Juri Linkov <juri@jurta.org>
714
715 * keymap.c (shadow_lookup): If Flookup_key returns a number,
716 call it again with a sub-key-sequence, and if its return value
717 is non-nil (sub-key is bound), return nil.
718
719 2005-11-08 Kim F. Storm <storm@cua.dk>
720
721 * process.c (Fsignal_process): Recognize signal names with and
722 without SIG prefix, e.g. SIGHUP and HUP.
723
724 * search.c (search_buffer): No need to initialize base_pat.
725
726 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
727
728 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
729 Don't abuse the `mini' arg. Use the `obj' arg instead.
730
731 2005-11-04 Kim F. Storm <storm@cua.dk>
732
733 * xdisp.c (show_mouse_face): Clear mouse face to eol.
734
735 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
736
737 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
738 font-lock.elc and jit-lock.elc.
739
740 2005-11-03 Richard M. Stallman <rms@gnu.org>
741
742 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
743 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
744 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
745
746 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
747
748 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
749
750 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
751
752 * window.c (Fdisplay_buffer): Fix last change to not use
753 a dedicated window.
754
755 2005-11-01 Kim F. Storm <storm@cua.dk>
756
757 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
758 Instead, rotate the bottom angle bitmap 180 degrees to indicate
759 that the bottom row does not end in a newline.
760
761 2005-11-01 Andreas Schwab <schwab@suse.de>
762
763 * unexelf.c (unexec): Handle .plt section in BSS segment.
764
765 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
766
767 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
768
769 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
770 determine whether to consider dedicated windows as well.
771 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
772 (Fdisplay_buffer): Do consider dedicated windows in those cases where
773 we will split the window rather than reuse it.
774 Don't try to use windows on other displays.
775
776 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
777
778 * puresize.h (BASE_PURESIZE): Increment to 1170000.
779
780 2005-10-31 Romain Francoise <romain@orebokech.com>
781
782 * macfns.c: Update copyright year.
783 * m/gould.h: Likewise.
784
785 2005-10-30 Kim F. Storm <storm@cua.dk>
786
787 * xdisp.c (display_line): Restore it->current_x and call
788 extend_face_to_end_of_line when last glyph doesn't fit on line.
789 (set_glyph_string_background_width): Remove specific tests here
790 to see if face background should extend to end of line. Simplify.
791
792 2005-10-30 Richard M. Stallman <rms@gnu.org>
793
794 * alloc.c (BYTES_USED): Use uordblks, not arena.
795 (bytes_used_when_reconsidered): New variable.
796 (emacs_blocked_free): Set that.
797
798 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
799
800 * alloc.c (emacs_blocked_free): Fix typo.
801
802 2005-10-29 Richard M. Stallman <rms@gnu.org>
803
804 * data.c (Fmake_variable_frame_local): Doc fix.
805
806 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
807 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
808 controls whether to save and restore mode_line_proptrans_alist.
809 Callers changed.
810 (unwind_format_mode_line): Work with that feature.
811 (redisplay_internal): Don't call prepare_menu_bars if memory full.
812 (move_elt_to_front): New function.
813 (display_mode_element): Use move_elt_to_front.
814 Don't bother munging text props on a null string.
815 Delete obsolete elts from mode_line_proptrans_alist.
816 (decode_mode_spec): Test Vmemory_full, not spare_memory.
817 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
818
819 * lisp.h (memory_full_cons_threshold): Declare.
820 (internal_lisp_condition_case): Declare.
821
822 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
823 (Fmemory_full_p): Function deleted.
824 (syms_of_alloc): Don't defsubr it.
825 (memory_full_cons_threshold): New variable.
826 (spare_memory): Now a vector of 7 elts.
827 (buffer_memory_full): Don't set Vmemory_full here.
828 (xfree): Don't try to refill here.
829 (emacs_blocked_free): Record BYTES_USED in local var.
830 (memory_full): Now free all the slots in spare_memory.
831 (refill_memory_reserve): Allocate each slot in spare_memory.
832 (init_alloc_once): Call refill_memory_reserve.
833
834 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
835
836 * eval.c (internal_lisp_condition_case): New function.
837 (Fcondition_case): Use internal_lisp_condition_case.
838 (Feval): Test Vmemory_full and memory_full_cons_threshold.
839 (Ffuncall): Likewise.
840
841 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
842
843 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
844
845 * syntax.c (Fparse_partial_sexp): Fix docstring.
846
847 2005-10-28 Romain Francoise <romain@orebokech.com>
848
849 * puresize.h (BASE_PURESIZE): Increment to 1130000.
850
851 2005-10-28 Richard M. Stallman <rms@gnu.org>
852
853 * xfns.c (syms_of_xfns): Provide `x' as feature.
854
855 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
856
857 * editfns.c (Fformat): Don't include string padding
858 between info[n].start and info[n].end.
859
860 * alloc.c (spare_memory): No longer static.
861 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
862
863 * puresize.h (BASE_PURESIZE): Increment to 1120000.
864
865 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
866
867 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
868
869 * fringe.c (update_window_fringes): Handle case where buffer ends
870 with a newline.
871
872 2005-10-27 Kenichi Handa <handa@m17n.org>
873
874 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
875
876 2005-10-24 Kenichi Handa <handa@m17n.org>
877
878 * charset.h (charset_mule_unicode_0100_24ff)
879 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
880 Extern them.
881
882 * charset.c (charset_mule_unicode_0100_24ff)
883 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
884 New variables.
885 (Fsetup_special_charsets): Initialize them.
886
887 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
888 supported Unicode characters.
889
890 2005-10-25 Jason Rumney <jasonr@gnu.org>
891
892 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
893
894 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
895
896 * image.c [MAC_OS] (image_load_qt_1): Check image size.
897 Use GraphicsImportGetImageDescription instead of
898 GraphicsImportGetNaturalBounds.
899 [MAC_OSX] (image_load_quartz2d): Check image size.
900 [MAC_OS] (xpm_load_image): Likewise.
901
902 * macterm.c (last_mouse_glyph_frame): New var.
903 (note_mouse_movement): Say mouse moved if current frame differs
904 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
905 (XTmouse_position): Set last_mouse_glyph_frame.
906 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
907 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
908 Use EndianU16_BtoN.
909 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
910 (x_per_char_metric, XLoadQueryFont)
911 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
912 glyph bounds.
913 (mac_to_x_fontname, mac_do_list_fonts)
914 (mac_initialize_display_info): Change screen resolutions to 72dpi.
915
916 2005-10-25 Masatake YAMATO <jet@gyve.org>
917
918 * minibuf.c (Fdisplay_completion_list): Small doc fix.
919
920 2005-10-24 Kim F. Storm <storm@cua.dk>
921
922 * xterm.c: Undo 2005-10-23 change.
923 (last_mouse_glyph_frame): New var.
924 (note_mouse_movement): Say mouse moved if current frame differs
925 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
926 (XTmouse_position): Set last_mouse_glyph_frame.
927 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
928 last_mouse_glyph] on mouse up/down event.
929
930 * editfns.c (Fcompare_buffer_substrings): Fix last change.
931
932 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
933
934 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
935
936 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
937
938 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
939 so tool tips don't interfere with press on tool bar button.
940
941 2005-10-23 Richard M. Stallman <rms@gnu.org>
942
943 * casetab.c (Fset_case_table): Doc fix.
944
945 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
946 (readevalloop): Compute ENTIRE properly.
947 (syms_of_lread) <load-history>: Doc fix.
948
949 2005-10-21 Richard M. Stallman <rms@gnu.org>
950
951 * lread.c (Fload): Simplify gcpro structure.
952 Gcpro FOUND as well as FILE, but not EFOUND.
953 Unless preloading, record FOUND instead of FILE in Vload_history.
954 Rename repeat local FILE to MSG_FILE.
955 (syms_of_lread) <load-history>: Doc fix.
956
957 2005-10-21 Kenichi Handa <handa@m17n.org>
958
959 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
960
961 2005-10-20 Kim F. Storm <storm@cua.dk>
962
963 * buffer.c (clone_per_buffer_values): Remove unused var tem.
964 (init_buffer): Remove unused vars dotstat, pwdstat.
965
966 * ccl.c (check_ccl_update): Remove unused var vp.
967
968 * fileio.c (auto_save_error): Call SAFE_FREE.
969
970 * fns.c (Fchar_table_range): Remove unused var i.
971
972 * minibuf.c (display_completion_list_1): New wrapper function
973 for Fdisplay_completion_list.
974 (Fminibuffer_completion_help): Use it.
975
976 * term.c (encode_terminal_code): Remove unused var src_start.
977
978 * window.c (Fwindow_tree): Remove unused var alist.
979
980 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
981
982 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
983
984 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
985
986 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
987
988 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
989
990 2005-10-20 Andreas Schwab <schwab@suse.de>
991
992 * minibuf.c (Fdisplay_completion_list): Doc fix.
993
994 2005-10-19 Kim F. Storm <storm@cua.dk>
995
996 * image.c (check_image_size): Handle integer Vmax_image_size value
997 directly as max pixel value. Use default frame size for null frame.
998 (syms_of_image) <max-image-size>: Describe integer value.
999
1000 2005-10-19 Romain Francoise <romain@orebokech.com>
1001
1002 * emacs.c (main): Update copyright year.
1003
1004 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
1005
1006 * image.c (Vmax_image_size): New variable.
1007 (check_image_size): New function.
1008 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
1009 (gif_load, gs_load): Use it.
1010 (lookup_image): Try loading again if previous load failed.
1011 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
1012 to display in, NULL if none.
1013 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
1014 argument.
1015
1016 2005-10-18 Richard M. Stallman <rms@gnu.org>
1017
1018 * search.c (Fstring_match): Doc fix.
1019
1020 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1021
1022 * macterm.c (note_mouse_movement): Use PtInRect.
1023 (XTread_socket): Also ignore mouse motion just before a button
1024 release event. Don't process button release event when mouse is
1025 not grabbed.
1026
1027 2005-10-16 Masatake YAMATO <jet@gyve.org>
1028
1029 * minibuf.c (Fdisplay_completion_list): Add new optional
1030 argument COMMON_SUBSTRING. Bind `completion-common-substring'
1031 to the optional argument during running `completion-setup-hook'.
1032
1033 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1034
1035 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
1036 Allow nil as argument.
1037 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
1038 for encoding arguments as UTF-16 in native byte order, no BOM.
1039
1040 * macfns.c (Fx_create_frame): Add debugging code.
1041 (Fx_show_tip): Set frame pixel width and height.
1042
1043 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
1044 (FRAME_NORMAL_GC): New macro.
1045 (mac_draw_line, mac_clear_area, mac_clear_window)
1046 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
1047 (mac_draw_image_string, mac_draw_image_string_16): Rename from
1048 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
1049 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
1050 All uses changed.
1051 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
1052 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
1053 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
1054 (mac_draw_string_16, mac_draw_image_string)
1055 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
1056 (mac_scroll_area): Drawing functions now take frame as destination.
1057 All uses changed.
1058 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
1059 (x_draw_fringe_bitmap): Set clipping area in face->gc.
1060
1061 * macterm.h (mac_clear_area): Add extern.
1062
1063 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1064
1065 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
1066 changes for xterm.c.
1067
1068 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
1069
1070 2005-10-14 Kenichi Handa <handa@m17n.org>
1071
1072 * search.c (search_buffer): Give up BM search on case-fold-search
1073 if one of a target character has a case-equivalence of different
1074 charset even if that target charcter is an ASCII.
1075
1076 * casefiddle.c (casify_object): Fix for the case that case
1077 conversion change the byte length.
1078
1079 2005-10-14 Kim F. Storm <storm@cua.dk>
1080
1081 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
1082 (handle_one_xevent): Only clear help_echo_string; restore it if
1083 note_mouse_movement didn't record any mouse movement.
1084
1085 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
1086 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
1087
1088 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
1089 (Fposn_at_x_y): Fix calculation of x coordinate.
1090 (Fposn_at_point): Return nil if point is hscrolled out of view.
1091
1092 2005-10-13 Andreas Schwab <schwab@suse.de>
1093
1094 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
1095 non-interactive mode.
1096
1097 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1098
1099 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
1100
1101 2005-10-12 Kim F. Storm <storm@cua.dk>
1102
1103 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
1104
1105 2005-10-12 Romain Francoise <romain@orebokech.com>
1106
1107 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
1108
1109 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1110
1111 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
1112 get end of text rows. Obtain header-line/mode-line rows directly.
1113
1114 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
1115 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
1116
1117 2005-10-12 Kim F. Storm <storm@cua.dk>
1118
1119 * xdisp.c (remember_mouse_glyph): New generic version based on
1120 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
1121 properly handle all different window areas.
1122
1123 * dispextern.h (remember_mouse_glyph): Add prototype.
1124
1125 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
1126 (note_mouse_movement, XTmouse_position): Use generic
1127 remember_mouse_glyph, add last_mouse_glyph arg.
1128
1129 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
1130 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
1131 (note_mouse_movement, w32_mouse_position): Use generic
1132 remember_mouse_glyph, add last_mouse_glyph arg.
1133
1134 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
1135 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
1136 (XTmouse_position): Adapt to use generic remember_mouse_glyph
1137 instead of pixel_to_glyph_coords.
1138
1139 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
1140 Fix x position for ON_TEXT when left margin width > 0.
1141
1142 2005-10-11 Kim F. Storm <storm@cua.dk>
1143
1144 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
1145
1146 * keyboard.c (make_lispy_position): Fix buffer calculations for
1147 mouse click or movement in right fringe and the margins.
1148
1149 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
1150
1151 * image.c (fn_jpeg_stdio_src): Don't define it.
1152 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
1153 (our_common_init_source): Rename from `our_init_source'.
1154 (our_common_term_source): Rename from `our_term_source'.
1155 (our_memory_fill_input_buffer): Rename from
1156 `our_fill_input_buffer'.
1157 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
1158 (jpeg_memory_src): Use the new names.
1159 (struct jpeg_stdio_mgr): New struct.
1160 (JPEG_STDIO_BUFFER_SIZE): New constant.
1161 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
1162 (jpeg_file_src): New functions.
1163 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
1164
1165 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1166
1167 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
1168 (fm_font_family_alist): New variable.
1169 (syms_of_macterm): Initialize and staticpro it.
1170 (decode_mac_font_name): Replace '-' in family name with '_' if it
1171 occurs just once. Lower family name.
1172 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
1173 All uses changed. Remove argument MF and code conversion for it.
1174 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
1175 to CHARSET. Parse font size. Lower family name. Return integer
1176 value for status of parsing.
1177 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
1178 Don't use Fdowncase because family name is already lowered by
1179 decode_mac_font_name.
1180 (init_font_name_table): Always call decode_mac_font_name.
1181 Add pair of family name and its reference to fm_font_family_alist.
1182 (mac_clear_font_name_table): Clear fm_font_family_alist.
1183 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
1184 Lookup fm_font_family_alist to get font family reference.
1185 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
1186 name is already lowered by parse_x_font_name.
1187
1188 2005-10-11 Kim F. Storm <storm@cua.dk>
1189
1190 * xterm.c (glyph_rect): Return 0 if position is outside text area.
1191
1192 * keyboard.c (make_lispy_position): Fix buffer position calculation for
1193 mouse click or movement in fringe.
1194
1195 2005-10-10 Jason Rumney <jasonr@gnu.org>
1196
1197 * xterm.c (remember_mouse_glyph): New function.
1198 (note_mouse_movement): Use it to remember the current glyph if changed.
1199 (XTmouse_position): Fix calculation of fake glyph under mouse.
1200 Move code to calculate glyph under mouse into remember_mouse_glyph.
1201
1202 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1203
1204 * emacs.c (USAGE3, standard_args): -nb => -nbi.
1205
1206 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
1207
1208 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
1209 (next_frame, prev_frame, set_term_frame_name): Make static.
1210
1211 * window.c (Fwindow_tree): Fix spelling.
1212
1213 2005-10-09 Romain Francoise <romain@orebokech.com>
1214
1215 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
1216
1217 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1218
1219 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
1220 Add options -nb, --no-bitmap-icon.
1221
1222 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
1223
1224 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1225
1226 * macgui.h (MAX_CLIP_RECTS): New define.
1227 (struct _XGC): New member clip_region.
1228 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
1229 clip_rects.
1230
1231 * macterm.c (GC_CLIP_REGION): New macro.
1232 (saved_port_clip_region): New variable.
1233 (mac_begin_clip, mac_end_clip): New functions.
1234 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
1235 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
1236 (mac_copy_area_with_mask, mac_scroll_area): Use them.
1237 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
1238 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1239 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
1240 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
1241 rectangles stored in gc.
1242 (XFreeGC): Dispose of clipping region.
1243 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
1244 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
1245 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
1246 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
1247 (x_draw_bar_cursor): Use them.
1248 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
1249 get multiple clipping rectangles.
1250
1251 * macterm.h (mac_term_init): Add types to extern.
1252 (struct mac_output): Remove members mWP and pending_menu_activation.
1253 Put members scroll_bar_foreground_pixel and
1254 scroll_bar_background_pixel in #if 0.
1255 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
1256
1257 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
1258 Add debugging code.
1259
1260 2005-10-08 Kim F. Storm <storm@cua.dk>
1261
1262 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
1263
1264 2005-10-07 Kim F. Storm <storm@cua.dk>
1265
1266 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
1267 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
1268 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
1269
1270 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1271
1272 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
1273 to for_overlaps. Now occupy 3 bits.
1274 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
1275 (OVERLAPS_ERASED_CURSOR): New defines.
1276 (struct redisplay_interface): Add new OVERLAPS arg to member
1277 fix_overlapping_area.
1278 (x_fix_overlapping_area): Add new OVERLAPS arg.
1279 (get_glyph_string_clip_rects): Add extern.
1280
1281 * dispnew.c (redraw_overlapping_rows):
1282 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
1283
1284 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
1285 for_overlaps.
1286 (get_glyph_string_clip_rects): New function created from
1287 get_glyph_string_clip_rect. Set clipping rectangles according to the
1288 value of for_overlaps. Enable to store multiple clipping rectangles.
1289 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
1290 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
1291 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
1292 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
1293 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
1294 calculating clipping rectangles later. Call x_fix_overlapping_area
1295 with new OVERLAPS arg to draw only erased cursor area.
1296 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
1297 to draw overlaps in both preceding and succeeding rows.
1298
1299 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
1300 struct glyph_string to for_overlaps.
1301
1302 2005-10-04 Richard M. Stallman <rms@gnu.org>
1303
1304 * alloc.c (refill_memory_reserve): Conditionalize the body,
1305 not the function's existence.
1306
1307 2005-10-04 Kim F. Storm <storm@cua.dk>
1308
1309 * window.c (window_split_tree): New function.
1310 (Fwindow_split_tree): New defun.
1311 (syms_of_window): Defsubr it.
1312
1313 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1314
1315 * macterm.c (mac_invert_rectangle): New function.
1316 (XTflash): Use it.
1317
1318 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
1319
1320 * regex.h (re_char): Don't expose it in the interface.
1321 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
1322
1323 * regex.c (re_char): Move it back here.
1324 (re_set_whitespace_regexp): Change the arg's type to not use it.
1325
1326 * keyboard.c (make_lispy_event): If point has moved between down and up
1327 event, make it a drag, not a click, to mirror what
1328 mouse-drag-region expects.
1329
1330 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1331
1332 * lisp.h (fatal): Undo previous change.
1333 * term.c (fatal): Undo previous change.
1334
1335 2005-10-01 Richard M. Stallman <rms@gnu.org>
1336
1337 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
1338
1339 2005-10-01 Kim F. Storm <storm@cua.dk>
1340
1341 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
1342
1343 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1344
1345 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
1346
1347 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
1348 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
1349 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
1350 Try ATSUI-compatible 12pt Monaco font first.
1351
1352 * macgui.h (struct _XCharStruct): New member valid_p.
1353 (STORE_XCHARSTRUCT): Set valid_p.
1354 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
1355
1356 * macterm.c (mac_draw_string_common, x_per_char_metric)
1357 (mac_compute_glyph_string_overhangs, init_font_name_table)
1358 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
1359 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
1360 (x_draw_glyph_string_background)
1361 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
1362 XDrawImageString. Always draw background and foreground separately.
1363 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
1364 functions for one-byte chars when using ATSUI-compatible fonts.
1365 (atsu_font_id_hash) [USE_ATSUI]: New variable.
1366 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
1367 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
1368 max_char_or_byte2 more in detail.
1369 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
1370
1371 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
1372
1373 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
1374 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
1375
1376 * unexelf.c (fatal): Fix prototype.
1377
1378 * term.c (fatal): Implement using varargs.
1379
1380 * regex.c (re_char): Move typedef ...
1381 * regex.h (re_char): ... here.
1382 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
1383
1384 * emacs.c (malloc_set_state): Fix return type.
1385 (endif): Fix type.
1386
1387 * lisp.h (fatal): Add argument types.
1388
1389 * dispextern.h (fatal): Delete prototype.
1390
1391 * systime.h: (make_time): Prototype moved from ...
1392 * editfns.c (make_time): ... here.
1393
1394 * editfns.c: Move systime.h include after lisp.h.
1395 * dired.c:
1396 * xsmfns.c:
1397 * process.c: Likewise.
1398
1399 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
1400 Add parameter types.
1401 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
1402 (emacs_blocked_free): Change definition to match __free_hook.
1403 (emacs_blocked_malloc): Change definition to match __malloc_hook.
1404 (emacs_blocked_realloc): Change definition to match __realloc_hook.
1405
1406 2005-09-30 Romain Francoise <romain@orebokech.com>
1407
1408 * minibuf.c (Fread_buffer): Follow convention for reading from the
1409 minibuffer with a default value. Doc fix.
1410
1411 2005-09-29 Juri Linkov <juri@jurta.org>
1412
1413 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
1414 Rename argument name `string' to `format-string'.
1415 (Fformat): Doc fix.
1416
1417 2005-09-28 Kim F. Storm <storm@cua.dk>
1418
1419 * image.c (gif_load): Fix size of allocated image buffer
1420 for images where a sub-image may be larger than the image's
1421 total height/width specifications.
1422
1423 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1424
1425 * macgui.h (struct _XCharStruct): Each member now takes short value.
1426
1427 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
1428
1429 * xfaces.c (lookup_derived_face): Add parameter type.
1430
1431 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
1432
1433 * marker.c (verify_bytepos): Add parameter type.
1434
1435 * process.c (get_operating_system_release): Move prototype ...
1436
1437 * systime.h (get_operating_system_release): ... here.
1438
1439 * xterm.c (handle_one_xevent): Refer to union field to match the
1440 type required by the function definition.
1441 (set_vertical_scroll_bar): Move prototype ...
1442
1443 * xterm.h: ... here.
1444
1445 * fns.c (internal_equal, seed_random): Fix prototypes.
1446 (internal_equal): Add missing parameter.
1447
1448 2005-09-25 Richard M. Stallman <rms@gnu.org>
1449
1450 * keyboard.c (update_menu_bindings): Variable deleted.
1451 (syms_of_keyboard): Don't defvar it.
1452 (parse_menu_item): Don't test it.
1453
1454 2005-09-23 Richard M. Stallman <rms@gnu.org>
1455
1456 * editfns.c (Fformat): Explicitly test for end of format string
1457 and don't use `index'.
1458
1459 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
1460
1461 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
1462 Define BROKEN_GET_CURRENT_DIR_NAME.
1463
1464 * sysdep.c (get_current_dir_name): Also define if
1465 BROKEN_GET_CURRENT_DIR_NAME.
1466
1467 * m/ibmrs6000.h: Test for USG5, not USG5_4.
1468
1469 2005-09-22 Kim F. Storm <storm@cua.dk>
1470
1471 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
1472 (message2): Fix commentary. Ok to use alloca'ed memory.
1473 Still not ok to use Lisp string data (because of GC).
1474 (set_message): Add comment why GC cannot happen.
1475
1476 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1477
1478 * macterm.c (xlfdpat_block_match_1): Fix assertion.
1479 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
1480 variants for a scalable font multiple times.
1481
1482 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1483
1484 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
1485 Setup slave tty options before forking.
1486
1487 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1488
1489 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1490 positions have been set for the frame (as is done for frames in
1491 special-display-buffer-names).
1492
1493 2005-09-19 Kim F. Storm <storm@cua.dk>
1494
1495 * editfns.c (Fformat): Don't scan past end of format string that
1496 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1497
1498 2005-09-18 Andreas Schwab <schwab@suse.de>
1499
1500 * window.h (struct window): Remove height_fixed_p, no longer set.
1501
1502 * window.c (make_window): Don't initialize height_fixed_p.
1503 (window_fixed_size_p): Don't use it.
1504
1505 2005-09-18 John Paul Wallington <jpw@pobox.com>
1506
1507 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1508
1509 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1510
1511 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1512
1513 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1514 New variables.
1515 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1516 file selection.
1517
1518 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1519
1520 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1521
1522 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1523 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1524
1525 2005-09-16 Romain Francoise <romain@orebokech.com>
1526
1527 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1528
1529 2005-09-15 Richard M. Stallman <rms@gnu.org>
1530
1531 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1532 (display_mode_element): Instead of `lisp_string' and `this',
1533 record `offset' and increment that.
1534 `last_offset' replaces `last'.
1535
1536 * Makefile.in (XMENU_OBJ): Variable deleted.
1537 (obj): Use xmenu.o unconditionally.
1538 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1539
1540 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1541
1542 2005-09-15 Kim F. Storm <storm@cua.dk>
1543
1544 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1545 (reseat_at_next_visible_line_start): Likewise (in xassert).
1546
1547 2005-09-14 Romain Francoise <romain@orebokech.com>
1548
1549 * fileio.c (write_region_inhibit_fsync): New variable.
1550 (Fwrite_region): Use it to skip call to fsync.
1551 (syms_of_fileio): Initialize it.
1552
1553 2005-09-14 Kenichi Handa <handa@m17n.org>
1554
1555 * coding.c (code_convert_region_unwind): Argument format changed.
1556 (run_pre_post_conversion_on_str): If pre-write-conversion function
1557 changed the current buffer, delete the new buffer.
1558 (run_pre_write_conversin_on_c_str): Likewise.
1559
1560 * fileio.c (Fexpand_file_name): Check multibyteness of
1561 default_directory.
1562
1563 2005-09-13 Kenichi Handa <handa@m17n.org>
1564
1565 * composite.c (compose_chars_in_text): Delete it.
1566
1567 * composite.h (compose_chars_in_text): Delete extern.
1568
1569 2005-09-13 Kim F. Storm <storm@cua.dk>
1570
1571 * print.c (print_error_message): Fix last change.
1572
1573 2005-09-12 Kim F. Storm <storm@cua.dk>
1574
1575 * composite.c (compose_chars_in_text): Fix setup of `pend'.
1576 Unconditionally reload `ptr' and `pend' after eval.
1577
1578 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
1579
1580 * print.c (print_error_message): Pass copy of caller name to
1581 message_dolog.
1582
1583 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
1584
1585 2005-09-12 Kenichi Handa <handa@m17n.org>
1586
1587 * xdisp.c (display_mode_element): Be sure to make variables THIS
1588 and LISP_STRING point into a string data of ELT.
1589
1590 2005-09-12 Kim F. Storm <storm@cua.dk>
1591
1592 * editfns.c (Ftranslate_region_internal): Reload `tt' after
1593 signal_after_change that may have GC'ed.
1594 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
1595
1596 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
1597 after insert while runs signal_after_change.
1598
1599 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
1600 declaration to where it is used.
1601
1602 * w32.c (check_windows_init_file): Fix allocation of error buffer.
1603
1604 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
1605 (x_set_name_internal): Call x_encode_text with new FREEP arg to
1606 know if xfree is needed instead of guessing.
1607
1608 * xterm.h (x_encode_text): Remove prototype.
1609
1610 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
1611
1612 * w32term.c (x_bitmap_icon): Load small icons too.
1613
1614 2005-09-10 Romain Francoise <romain@orebokech.com>
1615
1616 * buffer.c (init_buffer): Grow buffer to add directory separator
1617 and terminal zero. Fix typos.
1618
1619 2005-09-10 Eli Zaretskii <eliz@gnu.org>
1620
1621 * buffer.c (init_buffer): Fix error message for failed call to
1622 get_current_dir_name.
1623 (get_current_dir_name): Remove prototype.
1624
1625 * xsmfns.c: (get_current_dir_name): Remove prototype.
1626
1627 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1628 Add prototype.
1629
1630 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
1631 Don't #undef NULL after including blockinput.h.
1632
1633 * config.in: Regenerated.
1634
1635 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
1636
1637 Remove the MAXPATHLEN limitations:
1638
1639 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1640 New function.
1641
1642 * buffer.c (init_buffer): Use it.
1643
1644 * xsmfns.c (smc_save_yourself_CB): Ditto.
1645
1646 2005-09-09 Kim F. Storm <storm@cua.dk>
1647
1648 * doc.c (Fsubstitute_command_keys): Lookup key binding for
1649 commands that are remapped from some other command.
1650
1651 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
1652 flag in disabled rows below the window.
1653
1654 * frame.h (struct frame): New member updated_p.
1655
1656 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
1657 member. Remove local `updated' array and associated variables.
1658
1659 2005-09-07 Kim F. Storm <storm@cua.dk>
1660
1661 * xdisp.c (handle_display_prop): Respect overlay window property.
1662
1663 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
1664 Fixes crash reported by YAMAMOTO Mitsuharu.
1665
1666 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1667
1668 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
1669 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
1670 (xlfdpat_block_match_1, xlfdpat_match): New functions.
1671 (xlfdpat_block_match): New macro.
1672 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
1673 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
1674 (add_font_name_table_entry): Increase font_name_table_size more
1675 rapidly.
1676 (mac_c_string_match): Remove function.
1677 (mac_do_list_fonts): Use XLFD pattern match instead of regular
1678 expression match.
1679
1680 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
1681
1682 2005-09-03 Richard M. Stallman <rms@gnu.org>
1683
1684 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
1685 (move_it_in_display_line_to): Stop after last char on line even
1686 on a windowing terminal, if that's the specified stop position.
1687
1688 * fns.c (Fsort): Doc fix.
1689
1690 * editfns.c (Fpropertize): Don't insist that properties be symbols.
1691
1692 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
1693
1694 * dired.c (directory_files_internal_unwind, directory_files_internal)
1695 (file_name_completion): Use a Save_Value object rather than a cons of
1696 two 16bit ints to store the DIR*.
1697 (directory_files_internal, file_name_completion): Handle both EINTR and
1698 EAGAIN consistently after `readdir'.
1699
1700 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
1701
1702 * intervals.c (update_interval): Add position info in error.
1703
1704 * dispnew.c (window_to_frame_hpos, update_window):
1705 Avoid gcc warning about unused variable `f'.
1706
1707 2005-08-31 Jason Rumney <jasonr@gnu.org>
1708
1709 * w32menu.c (add_menu_item): If unicode_append_menu returns an
1710 error, revert to using AppendMenu.
1711
1712 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1713
1714 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
1715 All uses changed.
1716 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
1717 cases.
1718 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
1719 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
1720 Use posix_pathname_to_fsspec.
1721 [MAC_OS] (xpm_load_image): Fill in background_transparent field
1722 while we have mask.
1723
1724 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
1725
1726 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
1727
1728 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1729
1730 * syntax.c (update_syntax_table): Properly reproduce the special +1
1731 setting of e_property at the end of the buffer when bumping into the
1732 INTERVALS_AT_ONCE limit.
1733
1734 2005-08-27 Eli Zaretskii <eliz@gnu.org>
1735
1736 * emacs.c (USAGE1): Fix the description of the -Q option.
1737
1738 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
1739
1740 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
1741
1742 2005-08-26 Kim F. Storm <storm@cua.dk>
1743
1744 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
1745 Don't move PT to new window start.
1746
1747 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1748
1749 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
1750 ICONIFY/DEICONIFY_EVENT.
1751
1752 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
1753 Restore background color.
1754 (mac_handle_visibility_change): New function.
1755 (x_make_frame_invisible, x_iconify_frame)
1756 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
1757 [USE_CARBON_EVENTS] (mac_handle_window_event)
1758 (install_window_handler): Handle visibility change events.
1759 (x_make_frame_visible): Don't reposition window if it is iconified
1760 or asked for visible before. Select and uncollapse window when it
1761 is made visible.
1762 (x_make_frame_invisible): Don't reset x_highlight_frame.
1763 (x_iconify_frame): Likewise. Make invisible frame visible before
1764 it is iconified.
1765 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
1766 (do_window_update): Don't change visibility of invisible frame.
1767
1768 2005-08-22 Juri Linkov <juri@jurta.org>
1769
1770 * term.c (turn_on_face): Check for TS_set_foreground and
1771 TS_set_background depending on standout_mode. Simplify.
1772
1773 2005-08-21 Kim F. Storm <storm@cua.dk>
1774
1775 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
1776 bitmaps on fully visible rows.
1777
1778 * fringe.c (update_window_fringes): Replace FORCE_P arg with
1779 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
1780 and return 0.
1781
1782 * xdisp.c (redisplay_window): Call update_window_fringes with
1783 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
1784
1785 2005-08-20 Richard M. Stallman <rms@gnu.org>
1786
1787 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
1788 (resize_mini_window): Set w->start, and PT, so as to display the tail
1789 end of the buffer, if it doesn't all fit.
1790
1791 2005-08-18 Kim F. Storm <storm@cua.dk>
1792
1793 * xdisp.c (calc_pixel_width_or_height): Use actual display
1794 resolution when available instead of Vdisplay_pixels_per_inch.
1795
1796 2005-08-17 Kim F. Storm <storm@cua.dk>
1797
1798 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
1799
1800 * dispnew.c (buffer_posn_from_coords): Check that target row is
1801 within matrix.
1802
1803 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1804
1805 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
1806 xg_set_frame_icon and call it.
1807
1808 * gtkutil.c (xg_set_frame_icon): New function.
1809
1810 * gtkutil.h (xg_set_frame_icon): Declare it.
1811
1812 2005-08-16 Kim F. Storm <storm@cua.dk>
1813
1814 * dispnew.c (increment_row_positions): Skip non-enabled rows.
1815
1816 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
1817 (Fcurrent_window_configuration): Use VECSIZE macro instead.
1818
1819 2005-08-15 Richard M. Stallman <rms@gnu.org>
1820
1821 * xdisp.c (message3_nolog): Clear echo_message_buffer.
1822
1823 2005-08-15 Kim F. Storm <storm@cua.dk>
1824
1825 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
1826
1827 * process.c (deactivate_process, status_notify, read_process_output)
1828 (update_status, status_convert, decode_status, allocate_pty)
1829 (make_process, remove_process, list_processes_1)
1830 (create_process_1, unwind_request_sigio, read_process_output)
1831 (send_process, keyboard_bit_set): Declare static.
1832 (Fdelete_process): Simplify. Pass process to status_notify, so we
1833 don't try to read output from it.
1834 (status_notify): New arg deleting_process--don't try to read
1835 output from that process.
1836
1837 * lisp.h (deactivate_process, status_notify, read_process_output):
1838 Remove prototypes.
1839
1840 2005-08-14 Richard M. Stallman <rms@gnu.org>
1841
1842 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
1843 define_image_type.
1844
1845 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1846
1847 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
1848 (xg_get_image_for_pixmap): Move some code to
1849 xg_get_pixbuf_from_pix_and_mask, and call it.
1850
1851 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
1852
1853 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
1854 to get an GTK icon and set it with GTK functions to avoid having GTK
1855 override an icon set with just X functions.
1856
1857 2005-08-11 Richard M. Stallman <rms@gnu.org>
1858
1859 * image.c (syms_of_image): Init image_types here, and call
1860 define_image_type.
1861 (init_image): Not here.
1862
1863 2005-08-09 Richard M. Stallman <rms@gnu.org>
1864
1865 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
1866
1867 * lisp.h (QUIT): Throw t to Vthrow_on_input.
1868
1869 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
1870
1871 * floatfns.c (Fexpt): Use floats for negative exponent.
1872
1873 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1874
1875 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
1876 should not be there, causing menu display errors with GTK 2.6.9.
1877
1878 2005-08-07 Richard M. Stallman <rms@gnu.org>
1879
1880 * floatfns.c (Fexpt): Undo previous change.
1881
1882 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
1883 so it can be used with various state vectors.
1884
1885 * emacs.c (endif): Convert -script into -scriptload.
1886 (standard_args): Add -scriptload. Allow -basic-display with one dash.
1887
1888 * fns.c (syms_of_fns): Add `emacs' to features.
1889
1890 * term.c (set_terminal_modes): If no TS_termcap_modes string,
1891 output newlines to scroll the old screen contents off the screen.
1892
1893 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
1894
1895 * floatfns.c (Fexpt): Use floats for negative exponent.
1896 Reported by D Goel.
1897
1898 2005-08-02 Richard M. Stallman <rms@gnu.org>
1899
1900 * frame.c (Fframe_char_width): Doc fix.
1901
1902 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
1903
1904 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
1905 Defvar it.
1906
1907 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
1908
1909 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
1910 (my_create_window, my_create_tip_window): Make static.
1911
1912 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
1913 (my_set_foreground_window, my_destroy_window): Make static.
1914
1915 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
1916
1917 Merge gnulib getopt implementation into Emacs.
1918
1919 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
1920 now part of lib-src.
1921
1922 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
1923
1924 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
1925
1926 2005-07-25 Jason Rumney <jasonr@gnu.org>
1927
1928 * w32menu.c (w32_menu_display_help): Suppress tooltip when
1929 navigating menus with the keyboard.
1930
1931 2005-07-23 Richard M. Stallman <rms@gnu.org>
1932
1933 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
1934
1935 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
1936 gc_relative_threshold, one by one.
1937
1938 * keyboard.c (read_char): Test gc_cons_threshold.
1939 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
1940
1941 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
1942 gc_relative_threshold, one by one.
1943
1944 * alloc.c (gc_cons_threshold): Not static.
1945 (gc_cons_combined_threshold): Var deleted.
1946 (gc_relative_threshold): New variable.
1947 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
1948 instead of gc_cons_combined_threshold.
1949
1950 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
1951 (gc_cons_combined_threshold): Declaration deleted.
1952
1953 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1954
1955 * mac.c: Don't include stdlib.h or string.h.
1956 (Fdo_applescript, Fmac_file_name_to_posix)
1957 (Fmac_file_name_to_posix): Doc fixes.
1958 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
1959 (Fmac_code_convert_string): Likewise.
1960 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
1961 if the executable is not contained in a bundle.
1962
1963 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
1964 (gray_width, gray_height): Remove defines.
1965 (gray_bits, gray_bitmap_width, gray_bitmap_height)
1966 (gray_bitmap_bits): Remove variables.
1967 (lispy_function_keys): Remove extern.
1968 (free_frame_menubar): Add extern.
1969 (x_window_to_frame): Remove function.
1970 (unwind_create_tip_frame): Add declaration.
1971 (x_set_name_internal): New function.
1972 (x_set_name, x_set_title): Use it.
1973 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
1974 (Fx_display_pixel_height, Fx_display_planes)
1975 (Fx_display_color_cells, Fx_server_max_request_size)
1976 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1977 (Fx_display_mm_height, Fx_display_mm_width)
1978 (Fx_display_backing_store, Fx_display_visual_class)
1979 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
1980
1981 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
1982
1983 * macselect.c (Fx_own_selection_internal): Follow error conventions.
1984 (Fx_get_selection_internal, Fx_selection_owner_p)
1985 (Fx_selection_exists_p): Doc fixes.
1986 (syms_of_macselect) <selection-converter-alist>: Likewise.
1987
1988 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
1989
1990 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1991
1992 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
1993 (Fccl_execute_on_string): Likewise; add usage info.
1994
1995 * composite.c (Fcompose_region_internal)
1996 (Fcompose_string_internal):
1997 Improve argument/docstring consistency.
1998
1999 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
2000 Fix typos in docstrings.
2001
2002 * textprop.c (Fnext_char_property_change)
2003 (Fprevious_char_property_change): Doc fixes.
2004
2005 * window.c (Fset_window_margins, Fset_window_fringes):
2006 Improve argument/docstring consistency.
2007
2008 * xfaces.c (Finternal_lisp_face_p): Doc fix.
2009
2010 2005-07-21 Andreas Schwab <schwab@suse.de>
2011
2012 * eval.c (restore_stack_limits): Return a value.
2013
2014 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
2015
2016 * eval.c (Fdefvar): Doc fix.
2017
2018 2005-07-20 Kim F. Storm <storm@cua.dk>
2019
2020 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
2021 Use make_save_value to unwind protect stream.
2022
2023 * lread.c (Fload, load_unwind):
2024 Use make_save_value to unwind protect stream.
2025
2026 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
2027
2028 * eval.c (Fprog2, Fcalled_interactively_p),
2029 (syms_of_eval) <debug-on-quit>: Doc fixes.
2030 (syms_of_eval) <max-specpdl-size>:
2031 (Finteractive_p): Fix typos in docstrings.
2032
2033 2005-07-19 Kim F. Storm <storm@cua.dk>
2034
2035 * w32fns.c (Vx_hand_shape): Variable removed.
2036 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
2037
2038 2005-07-19 Kenichi Handa <handa@m17n.org>
2039
2040 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
2041
2042 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
2043
2044 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
2045
2046 2005-07-18 Kim F. Storm <storm@cua.dk>
2047
2048 * frame.h (struct frame): New member already_hscrolled_p.
2049
2050 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
2051 to avoid redisplay looping hscrolling back and forth ad infinitum.
2052
2053 2005-07-18 Juri Linkov <juri@jurta.org>
2054
2055 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
2056 * keymap.c (Fminor_mode_key_binding):
2057 * macterm.c (mac-emulate-three-button-mouse):
2058 Delete duplicate duplicate words.
2059
2060 2005-07-18 Ken Raeburn <raeburn@gnu.org>
2061
2062 * minibuf.c (Ftest_completion): Fix odd syntax in test.
2063
2064 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2065
2066 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
2067
2068 * macgui.h (struct _XGC): New struct.
2069 (GC): Use it.
2070 (GCForeground, GCBackground, GCFont): Use X11 mask values.
2071 (XCreateGC, XParseGeometry): Move externs to macterm.h.
2072
2073 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
2074 (XSetFont): Add declaration.
2075 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
2076 Remove functions.
2077 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
2078 New defines.
2079 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
2080 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
2081 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
2082 Use them.
2083 (mac_erase_rectangle): New function.
2084 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
2085 (x_draw_stretch_glyph_string): Use it.
2086 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
2087 (XSetBackground, XSetFont): Adjust for new GC implementation.
2088 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
2089 (XTset_vertical_scroll_bar): Clear area under scroll bar.
2090
2091 * macterm.h (struct mac_display_info): Change types of
2092 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
2093 (XCreateGC, XParseGeometry): Move externs from macgui.h.
2094
2095 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
2096
2097 2005-07-16 Richard M. Stallman <rms@gnu.org>
2098
2099 * buffer.c (Fmake_overlay): Doc fix.
2100
2101 2005-07-16 Eli Zaretskii <eliz@gnu.org>
2102
2103 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
2104 Vw32_valid_locale_ids, and Vw32_valid_codepages.
2105
2106 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2107
2108 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
2109 Use Fstring_as_unibyte instead of string_make_unibyte.
2110
2111 2005-07-15 Richard M. Stallman <rms@gnu.org>
2112
2113 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
2114
2115 2005-07-15 Kim F. Storm <storm@cua.dk>
2116
2117 * xdisp.c: Fix redisplay loop in last change.
2118 (IT_POS_VALID_AFTER_MOVE_P): New macro.
2119 (move_it_vertically_backward, move_it_by_lines): Use it.
2120
2121 2005-07-14 Jason Rumney <jasonr@gnu.org>
2122
2123 * w32.c (init_environment): Default HOME directory to user's
2124 appdata directory if possible.
2125
2126 2005-07-14 Kim F. Storm <storm@cua.dk>
2127
2128 * .gdbinit (pitx): Fix output format. Print string charpos.
2129
2130 * lread.c (syms_of_lread): Initialize seen_list.
2131
2132 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
2133
2134 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
2135 Staticpro re_match_object.
2136
2137 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2138
2139 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
2140 dereference.
2141
2142 * macterm.c (mac_window_to_frame): Remove duplicate define.
2143
2144 2005-07-14 Kenichi Handa <handa@m17n.org>
2145
2146 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
2147 (code_convert_region): Adjust for the above change.
2148 (set_conversion_work_buffer): If the work buffer is already in
2149 use, generate a new buffer and return it. Otherwise return Qnil.
2150 (run_pre_post_conversion_on_str): Adjust for the above change.
2151 (run_pre_write_conversin_on_c_str): Likewise.
2152
2153 2005-07-13 Kim F. Storm <storm@cua.dk>
2154
2155 * xdisp.c (start_display): Don't reseat to next visible line start
2156 if current start position is in a string or image.
2157 (move_it_vertically_backward): Be sure to move out of strings and
2158 images when moving it2 forward.
2159 (move_it_by_lines): When moving forward, move to next buffer
2160 position if we end up in a string or image. When moving backward,
2161 count rows moved over when moving to start of current row in case
2162 row starts in middle of a string or image. Also move further
2163 backward if we end up in a string or image.
2164 (try_cursor_movement): If overlay string spans multiple lines,
2165 move backward to set cursor on start of an overlay string.
2166 (cursor_row_p): Row is ok if cursor is at newline from string, but
2167 string starts on this line (so we always position cursor at start
2168 of string).
2169
2170 * indent.c (Fvertical_motion): If start position is on an image,
2171 don't move back if we move too far (that's almost certain to happen).
2172
2173 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
2174 row in minibuffer windows.
2175 (try_window): Don't check margins in minibuffer windows.
2176
2177 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2178
2179 * macterm.c: Don't include stdlib.h or composite.h.
2180 (x_use_underline_position_properties, last_mouse_press_frame)
2181 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
2182 (syms_of_macterm, mac_initialize): Don't initialize them.
2183 (waiting_for_input, initial_argv, initial_argc)
2184 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
2185 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
2186 (extra_keyboard_modifiers): Fix type in extern.
2187 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
2188 (x_scroll_bar_report_motion): Add argument types to declaration.
2189 (mac_compute_glyph_string_overhangs): Add declaration.
2190 (disable_mouse_highlight): Remove unused variable.
2191 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
2192 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
2193 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
2194 All callers changed.
2195 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
2196 timestamp.
2197 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
2198 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
2199 only when its width is less than the height.
2200 (XTredeem_scroll_bar): Sync with xterm.c.
2201 (font_name_table, font_name_table_size, font_name_count):
2202 Make static.
2203 (drag_and_drop_file_list): Remove variable. Previous use is now
2204 local to function.
2205 (do_ae_open_documents): Move DRAG_N_DROP event construction part
2206 from XTread_socket.
2207 (XTread_socket): Consolidate setting of event timestamp.
2208 Move DRAG_N_DROP event construction part to do_ae_open_documents.
2209 Support extra_keyboard_modifiers.
2210
2211 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
2212 beginning with that for ASCII.
2213
2214 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
2215
2216 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
2217 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
2218 (syms_of_alloc): Declare gc-cons-percentage.
2219
2220 * eval.c (Feval, Ffuncall):
2221 * keyboard.c (read_char):
2222 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
2223
2224 * lisp.h (gc_cons_combined_threshold): Declare.
2225
2226 2005-07-12 Kim F. Storm <storm@cua.dk>
2227
2228 * coding.c (Qprocess_argument):
2229 * coding.h (Qprocess_argument): Remove unused var.
2230
2231 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
2232
2233 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2234
2235 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
2236 Endian.h.
2237 [!MAC_OSX] (fchmod, fchown): New functions.
2238 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
2239 Use SBYTES and EndianU32_BtoN.
2240 (mac_get_object_from_code): Return 4 byte string even if argument
2241 is 0. Use make_unibyte_string and EndianU32_NtoB.
2242 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
2243 (Fmac_set_file_type): Fix documents and argument declarations.
2244 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
2245
2246 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
2247
2248 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
2249
2250 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2251
2252 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
2253 Lucid if X_I18N, font otherwise.
2254
2255 2005-07-10 Steven Tamm <steventamm@mac.com>
2256
2257 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
2258 (Fmac_set_file_type, Fmac_set_file_creator): Add.
2259 (mac_get_object_from_code, mac_get_code_from_arg): Add.
2260
2261 2005-07-10 Richard M. Stallman <rms@gnu.org>
2262
2263 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
2264 (syms_of_lread): Set up eval-buffer-list.
2265 (Feval_buffer, Feval_region): Bind eval-buffer-list.
2266
2267 2005-07-08 Richard M. Stallman <rms@gnu.org>
2268
2269 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
2270
2271 2005-07-08 Kim F. Storm <storm@cua.dk>
2272
2273 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
2274 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
2275
2276 2005-07-07 Kim F. Storm <storm@cua.dk>
2277
2278 * window.c (Frecenter): Fix last change (set iarg before use).
2279
2280 2005-07-06 Richard M. Stallman <rms@gnu.org>
2281
2282 * window.c (Frecenter): When arg is inside the scroll margin,
2283 move it out of the margin.
2284
2285 2005-07-06 Jason Rumney <jasonr@gnu.org>
2286
2287 * w32console.c (initialize_w32_display): Detect when the console
2288 dimensions are insane, and default to 80x25 instead.
2289 (w32_use_full_screen_buffer): Default to NIL.
2290
2291 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2292
2293 * macterm.c (mac_draw_vertical_window_border): Use foreground of
2294 VERTICAL_BORDER_FACE_ID for vertical border line.
2295 (mac_encode_char): Call check_ccl_update in advance.
2296 (mac_to_x_fontname, x_font_name_to_mac_font_name)
2297 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
2298 Don't assume that font family length is less than 32.
2299 (x_compute_min_glyph_bounds): Make static.
2300 (x_load_font): Never set fonts_changed_p to zero.
2301
2302 2005-07-04 Lute Kamstra <lute@gnu.org>
2303
2304 * Update FSF's address in GPL notices.
2305
2306 2005-07-03 Richard M. Stallman <rms@gnu.org>
2307
2308 * xdisp.c (try_window): Fix previous change in how it handles
2309 a partially-visible line or one only partly past the margin.
2310
2311 * window.c (window_scroll_pixel_based): Take account
2312 of this_scroll_margin when finding point when scrolling up.
2313
2314 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
2315
2316 * window.c (window_scroll_pixel_based, window_scroll_line_based):
2317 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
2318 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
2319
2320 2005-07-02 Juri Linkov <juri@jurta.org>
2321
2322 * w32term.c (w32_draw_vertical_window_border): Use foreground of
2323 VERTICAL_BORDER_FACE_ID for vertical border line.
2324
2325 2005-07-02 Eli Zaretskii <eliz@gnu.org>
2326
2327 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
2328 fchmod so that chmod doesn't get called on MSDOS before the file
2329 is closed.
2330
2331 2005-07-01 Jason Rumney <jasonr@gnu.org>
2332
2333 * w32term.c (cleartype_active): New flag for enabling sub-pixel
2334 workaround.
2335 (w32_initialize): Initialize it.
2336 (w32_native_per_char_metric): Allow a couple of extra pixels when
2337 Cleartype is active.
2338
2339 * w32term.c (w32_initialize): Move check for screen reader here
2340 from syms_of_w32term.
2341
2342 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2343
2344 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
2345 is not zero.
2346
2347 2005-07-01 Masatake YAMATO <jet@gyve.org>
2348
2349 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
2350
2351 2005-06-30 Juri Linkov <juri@jurta.org>
2352
2353 * xdisp.c (x_draw_vertical_border): If left fringe is not present
2354 decrease x coord of vertical border by 1 pixel to not occupy text
2355 area of the right window.
2356
2357 * xterm.c (x_draw_vertical_window_border): Use foreground of
2358 VERTICAL_BORDER_FACE_ID for vertical border line.
2359
2360 * term.c (turn_on_face): In standout mode apply specified
2361 fg to bg, and specified bg to fg (this makes the logic of
2362 inversion on terminal consistent with X).
2363
2364 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
2365
2366 * eval.c (user_variable_p_eh): New function.
2367 (Fuser_variable_p): Use it. Clarify docstring.
2368 Return t for aliases of user options, nil for alias loops.
2369
2370 2005-06-27 Richard M. Stallman <rms@gnu.org>
2371
2372 * eval.c (Fdefvar): Improve error message.
2373
2374 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2375
2376 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
2377 change.
2378
2379 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
2380
2381 * eval.c (Fdefvar): Don't try to set constant symbols.
2382
2383 2005-06-25 Richard M. Stallman <rms@gnu.org>
2384
2385 * macfns.c (Fx_show_tip): Pass new arg to try_window.
2386
2387 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
2388
2389 * xfns.c (Fx_show_tip): Pass new arg to try_window.
2390
2391 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
2392 (redisplay_window): Handle try_window reporting point in scroll margin.
2393
2394 * dispextern.h (try_window): Declare new arg.
2395
2396 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
2397 Use fchmod to copy the file modes.
2398 (Frename_file): Don't copy UID and GID here;
2399 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
2400
2401 * eval.c (call_debugger): Take full care of extending stack limits
2402 to make space for the debugger, and restore the change afterward.
2403 Bind debug-on-error to nil.
2404 (restore_stack_limits): New subroutine.
2405 (Fsignal): Extend specpdl bound along with eval depth bound,
2406 for calling edebug. Don't do either one, for calling debugger.
2407 (find_handler_clause): Don't bind debug-on-error here.
2408 Don't unbind anything either.
2409 Temporarily advance max_specpdl_size for calling
2410 internal_with_output_to_temp_buffer.
2411 (grow_specpdl): Don't alter max_specpdl_size before signaling
2412 an error.
2413 (syms_of_eval) <max-specpdl-size>: Doc fix.
2414
2415 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
2416
2417 2005-06-24 Eli Zaretskii <eliz@gnu.org>
2418
2419 * fileio.c (Frename_file): Undo last change: no need to ifdef away
2420 chown on DOS_NT platforms.
2421
2422 * w32.c (sys_chown): New function.
2423
2424 * s/ms-w32.h (chown): New; define to sys_chown.
2425
2426 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
2427
2428 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
2429 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
2430
2431 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
2432
2433 2005-06-23 Richard M. Stallman <rms@gnu.org>
2434
2435 * xdisp.c (get_next_display_element): Finish reversing the tests of
2436 Vnobreak_char_display.
2437
2438 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
2439 All uses changed.
2440 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
2441 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
2442
2443 * fileio.c (Frename_file): Preserve owner and group, if possible,
2444 when copying.
2445
2446 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
2447
2448 * abbrev.c (Funexpand_abbrev):
2449 * category.c (Fmake_category_set):
2450 * dispnew.c (Fsleep_for, Fsit_for):
2451 * editfns.c (Fsubst_char_in_region):
2452 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
2453 * frame.c (make_frame_without_minibuffer):
2454 * lread.c (read_vector):
2455 * macfns.c (check_x_frame):
2456 * process.c (Fstop_process, Fcontinue_process):
2457 * search.c (Freplace_match):
2458 * syntax.c (Fstring_to_syntax):
2459 * w32fns.c (check_x_frame, check_x_display_info):
2460 * xfaces.c (x_supports_face_attributes_p):
2461 * xselect.c (Fx_own_selection_internal): Follow error conventions.
2462
2463 * image.c (fn_png_init_io): Don't define it.
2464 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
2465 (png_read_from_file): New function, based on png_read_from_memory.
2466 (png_load): Use it, instead of fn_png_init_io.
2467
2468 2005-06-23 Kim F. Storm <storm@cua.dk>
2469
2470 * search.c (Fmatch_data): Remove evaporate option.
2471 (Fset_match_data): Do not mention evaporate option in doc string.
2472 Add commentary explaining evaporate arg (for internal use only).
2473 (unwind_set_match_data): Add comment on evaporate use.
2474
2475 2005-06-22 Miles Bader <miles@gnu.org>
2476
2477 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
2478 (realize_basic_faces, syms_of_xfaces): Update references to it.
2479 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
2480 to `VERTICAL_BORDER_FACE_ID'.
2481 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2482
2483 2005-06-21 Juri Linkov <juri@jurta.org>
2484
2485 * dispextern.h: Add extern Qframe_set_background_mode.
2486
2487 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2488 Qframe_set_background_mode.
2489
2490 * frame.c (Fmodify_frame_parameters):
2491 Call frame-set-background-mode after changing the background color
2492 on non-window non-dos branch.
2493
2494 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2495
2496 * fns.c (Fchar_table_range):
2497 * process.c (Fmake_network_process): Fix spellings.
2498
2499 2005-06-20 Kim F. Storm <storm@cua.dk>
2500
2501 * fns.c (Fsort): Doc fix.
2502
2503 2005-06-20 Miles Bader <miles@gnu.org>
2504
2505 * xfaces.c (Qvertical_divider): New variable.
2506 (realize_basic_faces): Realize its face.
2507 (syms_of_xfaces): Initialize it.
2508
2509 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2510
2511 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2512 window-separator on ttys using `vertical-divider' face by default.
2513
2514 2005-06-17 Richard M. Stallman <rms@gnu.org>
2515
2516 * xdisp.c (get_next_display_element):
2517 Reverse test of Vshow_nonbreak_escape.
2518
2519 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2520 (Ftty_no_underline): New function.
2521 (syms_of_term): defsubr it.
2522
2523 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2524
2525 * dispnew.c (spec_glyph_lookup_face): New function.
2526 (build_frame_matrix_from_leaf_window): Use it.
2527
2528 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2529
2530 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2531
2532 2005-06-12 Richard M. Stallman <rms@gnu.org>
2533
2534 * keyboard.c (read_char): After catching a longjmp,
2535 call restore_getcjmp.
2536
2537 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2538
2539 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2540
2541 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2542
2543 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2544 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2545 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2546 events.
2547 (XTread_socket): Don't pass keyboard events with the option
2548 modifier to the system when Vmac_command_key_is_meta is nil or
2549 Vmac_option_modifier is non-nil.
2550 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
2551 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
2552 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
2553 handler function.
2554 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
2555 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
2556 handler part to mac_handle_mouse_event.
2557
2558 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
2559
2560 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
2561 NEW-ALIAS and BASE-VARIABLE, respectively.
2562
2563 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2564
2565 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2566 (get_phys_cursor_geometry, format_mode_line_unwind_data)
2567 (get_line_height_property, x_produce_glyphs): Remove unused vars.
2568
2569 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
2570
2571 2005-06-13 Eli Zaretskii <eliz@gnu.org>
2572
2573 * w32term.c (x_use_underline_position_properties): New variable.
2574 (x_draw_glyph_string): Remind in a comment to change doc string of
2575 x-use-underline-position-properties if/when underline positioning
2576 is implemented.
2577 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
2578 and initialize it to nil.
2579
2580 2005-06-12 Jason Rumney <jasonr@gnu.org>
2581
2582 * w32fns.c (NEWOPENFILENAME): New struct.
2583 (Fx_file_dialog): Use it to trick the system into giving us up to
2584 date dialogs on systems that are documented to support it.
2585 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
2586
2587 2005-06-12 Eli Zaretskii <eliz@gnu.org>
2588
2589 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
2590 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
2591
2592 2005-06-11 Eli Zaretskii <eliz@gnu.org>
2593
2594 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
2595 to CreateDIBSection to avoid a compiler warning.
2596 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
2597 warning.
2598 (png_load): Cast return values of fn_png_create_read_struct and
2599 fn_png_create_info_struct, to avoid compiler warnings on W32.
2600 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
2601 to avoid compiler warnings.
2602 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
2603 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
2604 avoid a compiler warning.
2605 (tiff_load): Cast return values of fn_TIFFOpen and
2606 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
2607 to IMAGE_BACKGROUND to avoid a compiler warning.
2608 (gif_load): Cast return values of fn_DGifOpenFileName and
2609 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
2610 IMAGE_BACKGROUND to avoid a compiler warning.
2611 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
2612 before redefining.
2613
2614 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
2615 the call to CreateDIBSection, to avoid a compiler warning.
2616
2617 2005-06-11 Jason Rumney <jasonr@gnu.org>
2618
2619 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
2620 minibuffer.
2621 * macfns.c (Fx_file_dialog): Likewise.
2622
2623 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2624
2625 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
2626
2627 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2628
2629 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
2630 * w32fns.c (syms_of_w32fns): Fix spellings.
2631
2632 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2633
2634 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
2635 `verbose'; print diagnostic messages only if it is non-zero.
2636 All callers changed to pass a zero value unless DEBUG_DUMP is defined
2637 in the environment.
2638 (copy_executable_and_dump_data): Print section names with %.8s.
2639
2640 2005-06-10 Masatake YAMATO <jet@gyve.org>
2641
2642 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
2643 when mouse_face is not given.
2644
2645 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
2646
2647 * window.c (Fselect_window): Adapt call to Fselect_frame.
2648
2649 * lisp.h: Update EXFUN of Fselect_frame.
2650
2651 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
2652
2653 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
2654 no_enter.
2655 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
2656 Adapt to above change.
2657
2658 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2659
2660 * fns.c (Fmemq, Fmaphash): Doc fixes.
2661
2662 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2663
2664 * xfaces.c (Fdisplay_supports_face_attributes_p):
2665 Fix typo in docstring.
2666
2667 2005-06-08 Steven Tamm <steventamm@mac.com>
2668
2669 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
2670 used by gcc4 on intel mac.
2671
2672 2005-06-09 Kim F. Storm <storm@cua.dk>
2673
2674 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
2675 in REUSE list if non-nil; free them if equal to evaporate.
2676 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
2677 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
2678 (restore_search_regs): Rename from restore_match_data. Uses changed.
2679 (unwind_set_match_data): New function.
2680 (record_unwind_save_match_data): New function like save-match-data.
2681
2682 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
2683 (record_unwind_save_match_data): Add prototype.
2684 (restore_search_regs): Rename from restore_match_data.
2685
2686 * composite.c (compose_chars_in_text):
2687 * eval.c (do_autoload):
2688 * macmenu.c (set_frame_menubar):
2689 * process.c (read_process_output, exec_sentinel):
2690 * xmenu.c (set_frame_menubar):
2691 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
2692 * w32menu.c (set_frame_menubar):
2693 Use record_unwind_save_match_data.
2694
2695 2005-06-08 Richard M. Stallman <rms@gnu.org>
2696
2697 * xdisp.c (get_next_display_element): Alter previous change:
2698 Distinguish Vshow_nonbreak_escape = t or not t.
2699 For t, use escape_glyph once again, as before previous change.
2700 Use space or hyphen for display, instead of the non-ASCII char.
2701 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
2702
2703 * process.c (Fstart_process): Don't touch command_channel_p slot.
2704
2705 * process.h (struct process): Delete command_channel_p.
2706
2707 2005-06-07 Masatake YAMATO <jet@gyve.org>
2708
2709 * xdisp.c (note_mode_line_or_margin_highlight):
2710 Check the overlapping of re-rendering area to avoid flickering.
2711 (note_mouse_highlight): Call clear_mouse_face if PART
2712 is not ON_MODE_LINE nor ON_HEADER_LINE.
2713
2714 2005-06-07 Kim F. Storm <storm@cua.dk>
2715
2716 * process.c: Improve commentary for adaptive read buffering.
2717
2718 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
2719
2720 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
2721 if available.
2722
2723 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2724
2725 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
2726 New functions for popping down menus on C-g.
2727 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
2728
2729 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
2730 non-static.
2731
2732 * config.in: Add HAVE_CANCELMENUTRACKING.
2733
2734 2005-06-06 Eli Zaretskii <eliz@gnu.org>
2735
2736 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
2737
2738 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
2739
2740 * w32proc.c (RVA_TO_PTR): New macro.
2741
2742 * w32heap.c (RVA_TO_PTR): No need to #undef now.
2743
2744 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
2745 Depend on w32heap.h.
2746
2747 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
2748
2749 * keyboard.c (command_loop_1): Update Vthis_original_command.
2750
2751 2005-06-06 Richard M. Stallman <rms@gnu.org>
2752
2753 * xmenu.c (popup_get_selection): Undo previous change.
2754
2755 2005-06-06 Juri Linkov <juri@jurta.org>
2756
2757 * xdisp.c (Qno_break_space): New variable.
2758 (syms_of_xdisp): Initialize it.
2759 (get_next_display_element): Add no-break space and soft hypen
2760 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
2761 Use `no-break-space' face for no-break spaces.
2762
2763 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2764
2765 * window.c (delete_window): Handle the case where a h/vchild has
2766 a h/vchild.
2767
2768 2005-06-05 Eli Zaretskii <eliz@gnu.org>
2769
2770 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
2771 call to pfn_setsockopt, cast optval to `const char *'.
2772
2773 2005-06-04 Eli Zaretskii <eliz@gnu.org>
2774
2775 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
2776 (open_unc_volume): Cast return value of map_w32_filename, to avoid
2777 compiler warnings.
2778
2779 * s/ms-w32.h (fileno): Don't define if already defined.
2780
2781 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
2782
2783 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
2784
2785 2005-06-04 Richard M. Stallman <rms@gnu.org>
2786
2787 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
2788
2789 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2790
2791 * macmenu.c (cleanup_popup_menu): New function.
2792 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
2793 mac_menu_show Quit:s.
2794 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
2795 a dialog).
2796
2797 2005-06-04 Kim F. Storm <storm@cua.dk>
2798
2799 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
2800
2801 * callproc.c (Fcall_process): Don't use alloca to gradually
2802 increase size of buf, as it effectively uses twice the necessary
2803 space on the stack. Instead, pre-allocate buf of full size, and
2804 gradually increase the read size.
2805
2806 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
2807
2808 * eval.c (unbind_to): Preserve value of Vquit_flag.
2809
2810 * xterm.c (handle_one_xevent): Also ignore mouse motion just
2811 before a button release event.
2812
2813 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
2814
2815 * xfaces.c (Finternal_lisp_face_equal_p): Really report
2816 on faces in a frame, if the argument FRAME is non-nil.
2817 Improve argument/docstring consistency.
2818
2819 2005-06-02 Kim F. Storm <storm@cua.dk>
2820
2821 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
2822 (x_consider_frame_title, Fformat_mode_line): Save offset into
2823 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
2824
2825 2005-06-01 Kim F. Storm <storm@cua.dk>
2826
2827 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
2828
2829 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2830
2831 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
2832 resolution fields for scalable fonts to 0.
2833
2834 * xfaces.c (build_scalable_font_name): Round pixel size to the
2835 nearest integer.
2836
2837 2005-06-01 Kim F. Storm <storm@cua.dk>
2838
2839 * xdisp.c (display_mode_line): Support nested calls to redisplay
2840 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
2841
2842 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
2843
2844 * fileio.c (Finsert_file_contents):
2845 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2846
2847 2005-05-31 Kim F. Storm <storm@cua.dk>
2848
2849 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
2850 (mode_line_noprop_ptr): Rename from frame_title_*.
2851 (store_mode_line_noprop_char): Rename from store_frame_title_char.
2852 (store_mode_line_noprop): Rename from store_frame_title.
2853 (mode_line_target): New enum to specify current output target
2854 for mode line formatting.
2855 (display_mode_element): Test it rather than frame_title_ptr and
2856 mode_line_string_list to determine where output should go.
2857 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
2858 (Vmode_line_unwind_vector): New variable.
2859 (format_mode_line_unwind_data, unwind_format_mode_line):
2860 New functions for unwind protection in mode line formatting.
2861 (x_consider_frame_title): Use them and new local var 'title_start'
2862 to support nested calls to format-mode-line and redisplay.
2863 Set mode_line_target to MODE_LINE_TITLE.
2864 (Fformat_mode_line): Use them and new local var 'string_start' to
2865 support nested calls to format-mode-line and redisplay.
2866 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
2867 Don't trim trailing dashes.
2868 (decode_mode_spec): Don't make infinite number of trailing dashes
2869 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
2870 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
2871 mode_line_string_face_prop, and Vmode_line_unwind_vector.
2872 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
2873 Initialize mode_line_target to MODE_LINE_DISPLAY.
2874
2875 2005-05-29 Richard M. Stallman <rms@gnu.org>
2876
2877 * buffer.c (Fbuffer_local_value): Call indirect_variable.
2878
2879 2005-05-28 Masatake YAMATO <jet@gyve.org>
2880
2881 * xdisp.c (note_mode_line_or_margin_highlight): Change the
2882 pointer to a hand cursor when hoovering over a mouse-face.
2883
2884 2005-05-27 Kenichi Handa <handa@m17n.org>
2885
2886 * xterm.c (x_encode_char): Call check_ccl_update in advance.
2887
2888 * ccl.c: Now an element of Vccl_program_table is a vector of
2889 length 4, not 3.
2890 (ccl_get_compiled_code): New arg idx. Caller changed.
2891 Adjust for the change of Vccl_program_table.
2892 (setup_ccl_program): Adjust for the change of Vccl_program_table.
2893 (check_ccl_update): New function.
2894 (Fregister_ccl_program): Use ASET to set an element of a vector.
2895 Adjusted for the change of Vccl_program_table.
2896
2897 * ccl.h (struct ccl_program): New member idx.
2898 (check_ccl_update): Extern it.
2899
2900 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
2901
2902 * image.c (Vimage_library_alist): Move from image.el.
2903 (syms_of_image): Defvar it.
2904 (lookup_image_type): Use it.
2905
2906 * buffer.c (Fbuffer_local_value): Make argument name match its use
2907 in docstring.
2908
2909 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
2910
2911 * keyboard.c (Frecursive_edit): Fix typo in docstring.
2912 (Fposn_at_x_y): Make argument name match its use in docstring.
2913
2914 2005-05-26 Lute Kamstra <lute@gnu.org>
2915
2916 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
2917
2918 2005-05-24 Masatake YAMATO <jet@gyve.org>
2919
2920 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
2921 as loop sentinels.
2922
2923 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
2924
2925 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
2926 select frame title ("Question"/"Information").
2927 (xdialog_show): Use it.
2928
2929 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
2930
2931 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
2932
2933 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
2934 a third argument (Qnil).
2935
2936 * lisp.h: x-popup-dialog can have three arguments.
2937
2938 * editfns.c (Fmessage_box): Use "Information" for frame title.
2939
2940 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
2941
2942 * termcap.c [VMS]: Include <starlet.h>.
2943
2944 2005-05-23 Masatake YAMATO <jet@gyve.org>
2945
2946 * xdisp.c (note_mode_line_or_margin_highlight): Add code
2947 for mouse-face. Change the type of the first argument from `window'
2948 to `Lisp_Object'.
2949 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
2950 window instead of w.
2951
2952 2005-05-22 Andreas Schwab <schwab@suse.de>
2953
2954 * process.c (send_process): Move misplaced volatile.
2955
2956 2005-05-21 Richard M. Stallman <rms@gnu.org>
2957
2958 * xdisp.c (display_mode_element): If we're processing a list and
2959 padding is specified, put it after the last element.
2960
2961 2005-05-21 Eli Zaretskii <eliz@gnu.org>
2962
2963 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
2964 "superroot" on DOS_NT systems.
2965
2966 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
2967
2968 * process.c (send_process): Restore the SIGPIPE handler if we
2969 catch a SIGPIPE.
2970
2971 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
2972
2973 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
2974 misleading comments).
2975 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
2976
2977 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
2978
2979 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
2980 Correct the right value.
2981
2982 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
2983
2984 * keyboard.c (syms_of_keyboard): Remove Lisp variables
2985 post-command-idle-hook and post-command-idle-delay.
2986 (command_loop_1): Don't try to execute post-command-idle-hook.
2987
2988 2005-05-16 Kim F. Storm <storm@cua.dk>
2989
2990 * xdisp.c (handle_display_prop): Handle empty replacement.
2991 (handle_single_display_spec): Return -1 for empty replacement.
2992
2993 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
2994
2995 * .gdbinit (pitx): Print more info about iterator.
2996
2997 2005-05-16 Andreas Schwab <schwab@suse.de>
2998
2999 * unexmacosx.c (unexec_realloc): Move declarations before statements.
3000
3001 2005-05-14 Richard M. Stallman <rms@gnu.org>
3002
3003 * xdisp.c (message3): Call cancel_echoing.
3004
3005 * alloc.c (Fmemory_full_p): New function.
3006 (syms_of_alloc): defsubr it.
3007
3008 * process.c (send_process_trap): Unblock SIGPIPE.
3009 (send_process): Reset SIGPIPE handler before reporting error.
3010
3011 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
3012
3013 * emacs.c (syms_of_emacs): Fix doc string for system-type.
3014
3015 2005-05-13 Richard M. Stallman <rms@gnu.org>
3016
3017 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
3018 (Finsert_file_contents): If we read 0 bytes from a special file,
3019 unlock the visited file if we locked it.
3020 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
3021 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
3022
3023 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3024
3025 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
3026
3027 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
3028 Regard toolkit scroll bar thumb drag events as squeezable and prevent
3029 redisplay from being paused by them.
3030
3031 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
3032 [!MAC_OSX] (target_ticks): Remove variable.
3033 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
3034 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
3035 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
3036 event occurs before timeout, behave as if the function were interrupted.
3037 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
3038 handling using Time Manager routines.
3039 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
3040 New variables.
3041 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
3042 (setitimer): New functions.
3043
3044 * macfns.c, macmenu.c: Don't include signal.h.
3045
3046 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
3047 Rename from get_control_part_bound. All callers changed.
3048 (x_scroll_bar_clear): New function.
3049 (x_clear_frame): Use it.
3050 (XTset_vertical_scroll_bar): Don't call Draw1Control.
3051 (x_scroll_bar_handle_click): Change type of second argument from
3052 int to ControlPartCode.
3053 (check_alarm): Remove declaration.
3054 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
3055 (XTread_socket): Use ControlPartCode instead of SInt16.
3056
3057 2005-05-13 Nozomu Ando <nand@mac.com>
3058
3059 * unexmacosx.c: Include assert.h.
3060 (MACOSX_MALLOC_MULT16): New define.
3061 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
3062 ptr is in unexec regions by checking it is multiple of 16.
3063 (unexec_malloc_header_t): New typedef.
3064 (unexec_malloc, unexec_realloc, unexec_free): Store and use
3065 allocated size information in unexec_malloc_header.
3066
3067 2005-05-10 Richard M. Stallman <rms@gnu.org>
3068
3069 * xterm.c (noinclude): Add #undef.
3070
3071 * image.c, xfns.c, xmenu.c: Don't include signal.h.
3072
3073 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
3074
3075 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
3076 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
3077 Doc fixes.
3078
3079 * dired.c (Ffile_name_completion): Make argument name
3080 match its use in docstring.
3081
3082 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
3083
3084 * eval.c (Fdefvaralias): Remove any pre-existing
3085 variable-documentation property of the alias.
3086
3087 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
3088
3089 * xfns.c (start_hourglass): Do nothing when running on a tty.
3090
3091 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
3092
3093 * fns.c (Fchar_table_range): Fix typos in docstring.
3094
3095 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3096
3097 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
3098
3099 2005-05-06 Eli Zaretskii <eliz@gnu.org>
3100
3101 * lread.c (Flocate_file_internal): Doc fix.
3102
3103 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
3104
3105 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3106
3107 * macselect.c (x_own_selection): Accept Lisp string as result of
3108 selection converter function.
3109 (x_clear_frame_selections): Don't call x-lost-selection-functions
3110 if Emacs is not owner of the selection.
3111 (Vmac_services_selection): Put variable and initialization in
3112 #ifdef MAC_OSX.
3113 (syms_of_macselect) [MAC_OSX]: Set default value of
3114 Vmac_services_selection to PRIMARY.
3115
3116 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
3117 (mac_handle_tool_bar_click): Remove unused function and declaration.
3118 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
3119 (install_scroll_bar_timer, set_scroll_bar_timer)
3120 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
3121 (get_control_part_bound, x_scroll_bar_handle_press)
3122 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
3123 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
3124 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
3125 (scroll_bar_timer_event_posted_p): New variables.
3126 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
3127 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
3128 (x_scroll_bar_create): Set control reference with NewControl.
3129 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
3130 Initialize track_top and track_height to nil.
3131 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
3132 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
3133 (XTset_vertical_scroll_bar): Don't make space between scroll bar
3134 and associated window.
3135 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
3136 from window config.
3137 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3138 Set track_top and track_height to nil when scroll bar size is changed.
3139 Recalculate them if they are nil.
3140 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
3141 clicked control is a scroll bar.
3142 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
3143 event handler functions. Don't add modifiers to scroll bar click
3144 events. Call scroll bar release handler when window is deactivated.
3145 (mac_initialize): Remove unused code for X toolkit.
3146 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
3147 Initialize Vx_toolkit_scroll_bars to nil.
3148
3149 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3150 New members track_top and track_height.
3151
3152 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
3153 init_process when including sys/select.h.
3154
3155 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
3156
3157 * eval.c (Fdefvaralias): Doc fix.
3158
3159 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3160
3161 2005-05-05 Kim F. Storm <storm@cua.dk>
3162
3163 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
3164 default value.
3165 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
3166 Fix type of cursor-in-non-selected-windows.
3167
3168 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3169
3170 * mac.c: #undef init_process so not to conflict with system headers.
3171
3172 2005-05-02 Richard M. Stallman <rms@gnu.org>
3173
3174 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
3175
3176 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
3177
3178 * xdisp.c (Vcursor_in_non_selected_windows)
3179 (Qcursor_in_non_selected_windows): Vars deleted.
3180 (syms_of_xdisp): Don't initialize them.
3181 (get_window_cursor_type): Use cursor_in_non_selected_windows
3182 buffer slot.
3183
3184 2005-05-02 Kim F. Storm <storm@cua.dk>
3185
3186 * macros.c (executing_kbd_macro_index): Rename from
3187 executing_macro_index. All uses changed.
3188 (executing_kbd_macro_iterations): Rename from
3189 executing_macro_iterations. All uses changed.
3190 (executing_kbd_macro): Rename from executing_macro.
3191 All uses changed.
3192 (syms_of_macros): Rename Lisp var executing-macro-index to
3193 executing-kbd-macro-index.
3194
3195 * xdisp.c (move_it_in_display_line_to): Fix last change.
3196
3197 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3198
3199 * xmenu.c (Fx_popup_menu): Doc fix.
3200
3201 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
3202
3203 2005-05-02 Jason Rumney <jasonr@gnu.org>
3204
3205 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
3206
3207 2005-05-02 Nozomu Ando <nand@mac.com>
3208
3209 * sysselect.h: Fix typo.
3210
3211 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
3212
3213 * charset.c (Fchars_in_region): Remove as obsolete.
3214
3215 2005-05-01 Kim F. Storm <storm@cua.dk>
3216
3217 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
3218 TO_CHARPOS. This may happen if last glyphs was an image or stretch
3219 glyph.
3220
3221 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3222
3223 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
3224
3225 2005-05-01 Richard M. Stallman <rms@gnu.org>
3226
3227 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
3228 If user cancels the menu, quit unless FOR_CLICK.
3229
3230 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
3231 All uses changed.
3232 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
3233 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
3234 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
3235 * commands.h (Vexecuting_kbd_macro): Likewise.
3236
3237 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
3238
3239 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
3240
3241 2005-04-30 Richard M. Stallman <rms@gnu.org>
3242
3243 * fileio.c (Ffind_file_name_handler): Handle the `operations'
3244 property of the file name handler.
3245 (Qoperations): New variable.
3246 (syms_of_fileio): Initialize and staticpro it.
3247
3248 * xdisp.c (set_message_1): Delete xassert.
3249
3250 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3251
3252 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
3253
3254 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
3255
3256 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
3257 before/after including Carbon.h if there is a working mktime.
3258
3259 2005-04-28 Kim F. Storm <storm@cua.dk>
3260
3261 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
3262 Fix cyclic alias check. If alias loop is detected, signal
3263 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
3264
3265 2005-04-28 Lute Kamstra <lute@gnu.org>
3266
3267 * eval.c (do_autoload): Record only autoloads in the autoload
3268 property of symbols.
3269
3270 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
3271
3272 * emacs.c (USAGE1): Add --basic-display and --quick options.
3273
3274 2005-04-27 Kim F. Storm <storm@cua.dk>
3275
3276 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
3277
3278 2005-04-26 Richard M. Stallman <rms@gnu.org>
3279
3280 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
3281 (syms_of_window): Doc fixes.
3282
3283 * indent.c (Fvertical_motion): Undo previous change.
3284
3285 2005-04-26 Kenichi Handa <handa@m17n.org>
3286
3287 * fns.c (char_table_range): New function.
3288 (Fchar_table_range): Signal an error if characters in the range
3289 have inconsistent values. Don't check the parent.
3290
3291 2005-04-25 Kenichi Handa <handa@m17n.org>
3292
3293 * fontset.c (fontset_set): Fix previous change.
3294
3295 2005-04-24 Richard M. Stallman <rms@gnu.org>
3296
3297 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
3298
3299 2005-04-24 Eli Zaretskii <eliz@gnu.org>
3300
3301 * regex.c (re_search_2, re_match_2_internal): Convert second arg
3302 of RE_TRANSLATE to int, to shut up GCC warnings.
3303
3304 * fileio.c (Fcopy_file): Doc fix.
3305 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
3306 not needed.
3307
3308 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3309
3310 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
3311 (SOME_MACHINE_OBJECTS): Likewise.
3312 (mac.o): Depend on ccl.h.
3313 (macselect.o): New target.
3314
3315 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
3316 Call syms_of_macselect.
3317
3318 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
3319
3320 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
3321 (QCLIPBOARD): Remove variable.
3322 (syms_of_mac): Don't initialize it.
3323 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
3324 Remove functions.
3325 (syms_of_mac): Don't defsubr them.
3326 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
3327 (QHFS_plus_D, QHFS_plus_C): New variables.
3328 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3329 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
3330 (cfstring_create_normalized): New functions.
3331 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
3332 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3333
3334 * macterm.c (handling_window_update, terminate_flag):
3335 Remove variables.
3336 (do_window_update, do_ae_quit_application, XTread_socket):
3337 Don't use them.
3338 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
3339 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
3340 (init_service_handler): Move to macselect.c. Remove declarations.
3341 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
3342 (Qapplication, Qabout): New variables.
3343 (syms_of_mac): Initialize them.
3344 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
3345 (Qperform): New variables.
3346 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
3347 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
3348 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
3349 (mac_store_application_menu_event, init_menu_bar): New functions.
3350 [USE_CARBON_EVENTS] (mac_handle_command_event)
3351 (init_command_handler): New functions.
3352 (mac_handle_window_event): Return noErr on window update event.
3353 (do_ae_quit_application): Call mac_store_application_menu_event.
3354 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
3355 and init_menu_bar.
3356
3357 * macterm.h (x_clear_frame_selections): Add extern.
3358
3359 * macselect.c: New file for selection processing on Mac OS.
3360
3361 2005-04-23 Richard M. Stallman <rms@gnu.org>
3362
3363 * fileio.c (Fcopy_file): New arg MUSTBENEW.
3364 (Frename_file): Pass new arg to Fcopy_file.
3365
3366 * window.c (window_size_fixed): Variable deleted.
3367 (syms_of_window): Initialize window-size-fixed to nil.
3368 But don't DEFVAR window_size_fixed.
3369
3370 2005-04-23 Andreas Schwab <schwab@suse.de>
3371
3372 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
3373 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
3374 use lib64 instead of lib.
3375 (_LP64) [_ARCH_PPC64]: Define if not defined.
3376
3377 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
3378
3379 * s/ms-w32.h (HAVE_PWD_H): Define.
3380
3381 2005-04-22 Kenichi Handa <handa@m17n.org>
3382
3383 * fns.c (copy_sub_char_table): Explicitly copy the default value
3384 of the sub-chartable.
3385
3386 * fontset.c (fontset_set): When a sub-chartable is created,
3387 explicitly sets the defalt value.
3388
3389 2005-04-22 Kim F. Storm <storm@cua.dk>
3390
3391 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
3392 (Fsafe_plist_get): Rename to Fplist_get.
3393 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
3394 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
3395
3396 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
3397
3398 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
3399 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3400 Use Fplist_get instead of Fsafe_plist_get.
3401
3402 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
3403
3404 2005-04-21 Miles Bader <miles@gnu.org>
3405
3406 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
3407
3408 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
3409
3410 * sysdep.c: Remove reference to defunct vms-pwd.h.
3411 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
3412 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
3413
3414 * config.in: Regenerate.
3415
3416 2005-04-20 Kenichi Handa <handa@m17n.org>
3417
3418 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
3419 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
3420 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
3421
3422 * alloc.c (make_sub_char_table): Argument changed to initial
3423 value of the slots.
3424
3425 * data.c (Faref): Handle special slots used as default values of
3426 ascii, eight-bit-control, eight-bit-control. Don't ignore a
3427 default value set for a group of characters.
3428 (Faset): Signal an error if IDXVAL is not a valid character code.
3429 Make a sub-chartable with correct initial value.
3430
3431 * fns.c (Fset_char_table_range): Don't set slots used as default
3432 values for ascii, eight-bit-control, eight-bit-graphic.
3433 Don't call Faref with charset-id.
3434 (Fset_char_table_default): Document how to treat normal character
3435 argument. Handle special slots used as default values of ascii,
3436 eight-bit-control, eight-bit-control. Make a sub chartable if
3437 necessary.
3438
3439 2005-04-20 Kenichi Handa <handa@m17n.org>
3440
3441 * search.c (boyer_moore): Fix previous change.
3442
3443 2005-04-19 Kim F. Storm <storm@cua.dk>
3444
3445 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
3446 face unless last visible char and first invisible char have the
3447 same face. Also use default face if saved_face_id is undefined.
3448
3449 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3450
3451 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
3452 `full_name'.
3453 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
3454 mac_scriptcode member.
3455
3456 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
3457 (syms_of_mac): Don't initialize them.
3458 (Vmac_charset_info_alist): New variable.
3459 (syms_of_mac): Defvar it.
3460 (create_text_encoding_info_alist): New function.
3461 (decode_mac_font_name, mac_to_x_fontname)
3462 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
3463 code the correspondence among XLFD charsets, Mac script codes, and
3464 Emacs coding systems. Use Vmac_charset_info_alist and result of
3465 create_text_encoding_info_alist instead.
3466 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
3467 routines also on Mac OS Classic.
3468 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
3469 Use add_font_name_table_entry.
3470 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
3471 specified. Derive unspecified scalable fields from specified one.
3472 (x_list_fonts): Consider Valternate_fontname_alist.
3473 (kDefaultFontSize): Change value from 9 to 12.
3474 (XLoadQueryFont): Get decoded font family, font face, and charset
3475 from x_font_name_to_mac_font_name. Set full name of loaded font.
3476 (mac_unload_font): Free `full_name' member.
3477 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
3478 NULL. Copy full_name member of struct MacFontStruct to that of
3479 struct font_info.
3480
3481 2005-04-19 Kim F. Storm <storm@cua.dk>
3482
3483 * xdisp.c (handle_stop): Set saved_face_id to current face if
3484 selective_display_ellipsis_p so ellipsis will be shown in same
3485 face as preceding text.
3486 (setup_for_ellipsis): Don't set saved_face_id here.
3487 (next_element_from_display_vector): Default to saved_face_id.
3488
3489 * fns.c (Fsafe_get): New function.
3490 (syms_of_fns): Defsubr it.
3491
3492 * lisp.h (Fsafe_get): EXFUN it.
3493
3494 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3495 loops in case of bad face property lists. Limit number of face
3496 alias lookups to 10 (in case of face alias loops).
3497
3498 2005-04-18 Kim F. Storm <storm@cua.dk>
3499
3500 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3501 It replaces the corresponding member from struct window, as a
3502 window may now show multiple overlay arrows.
3503 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3504
3505 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3506 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3507
3508 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3509 rather than from window.
3510 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3511 overlay_arrow_p members.
3512 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3513 if not default.
3514
3515 * window.h (struct window): Remove member overlay_arrow_bitmap.
3516
3517 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3518
3519 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3520 Calls changed. Don't check for overlay-arrow-bitmap property here.
3521 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3522 fringe is present, return Lisp integer for bitmap (or -1 for default).
3523 Fix value of overlay-arrow-bitmap property to be a symbol, use
3524 lookup_fringe_bitmap to parse it.
3525 (display_line): Change call to overlay_arrow_at_row. Store integer
3526 return value as overlay bitmap in row rather than window.
3527 Only show overlay arrow if row displays text, or if no other overlay
3528 arrow is seen in window (if overlay marker is at point-max).
3529
3530 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3531
3532 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3533
3534 2005-04-18 Lute Kamstra <lute@gnu.org>
3535
3536 * lread.c (Vloads_in_progress): Static.
3537 * fns.c (Vloads_in_progress): Remove extern.
3538 (load_in_progress): Add extern.
3539 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3540
3541 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3542
3543 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3544
3545 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3546
3547 * macterm.c (XTread_socket): Don't beep on keyboard input even if
3548 no frame is visible.
3549
3550 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
3551
3552 * term.c (struct keys): Add support for shifted keys.
3553
3554 2005-04-16 Richard M. Stallman <rms@gnu.org>
3555
3556 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
3557 (set_message): Call with_echo_area_buffer with WHICH = 0.
3558 (set_message_1): Erase the echo area buffer first thing.
3559 (echo_area_display): Don't clear echo_message_buffer.
3560
3561 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3562
3563 * Makefile.in (mac.o): Depend on charset.h and coding.h.
3564
3565 * mac.c: Include charset.h and coding.h.
3566 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
3567 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
3568 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
3569
3570 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3571
3572 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
3573
3574 * macterm.c (x_autoselect_window_p): Remove variable.
3575 (last_window): New variable.
3576 (XTreassert_line_highlight, x_change_line_highlight):
3577 Remove declarations.
3578 (mac_focus_changed, x_detect_focus_change): New functions and
3579 declarations.
3580 (XTextExtents16, front_emacs_window): Remove function.
3581 (mac_focus_frame): New function.
3582 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
3583 (mac_check_for_quit_char): Use it instead of front_emacs_window.
3584 (x_scroll_bar_report_motion): Obtain window from control owner.
3585 (x_make_frame_invisible): Set window manager size hint.
3586 (do_mouse_moved): Remove function.
3587 (XTread_socket): Move its contents here. Generate select-window
3588 event on mouse movement if needed. Use x_detect_focus_change on
3589 activate/deactivate events. Don't deiconify frame or invalidate
3590 window rectangle when dnd items are dropped.
3591 Don't activate/deactivate root control.
3592 (frame_highlight, frame_unhighlight): Activate/deactivate root
3593 control here.
3594 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
3595
3596 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
3597 New extern.
3598
3599 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
3600
3601 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
3602 (lisp): Use it.
3603 (SOME_MACHINE_LISP): Add tooltip.
3604
3605 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3606
3607 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
3608 Don't include TextEncodingConverter.h.
3609 (mac_system_script_code, Vmac_system_locale): New variables.
3610 (syms_of_mac): Defvar them.
3611 (mac_get_system_locale): New function.
3612
3613 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
3614 Use ENCODE_SYSTEM to encode title bar string.
3615 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
3616 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
3617 Use CFStringGetSystemEncoding to get system default string encoding.
3618
3619 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
3620 TextEncodingConverter.h.
3621
3622 2005-04-13 Steven Tamm <steventamm@mac.com>
3623
3624 * macterm.c (syms_of_macterm): Remove redundant definition of
3625 mac-pass-control-to-system.
3626
3627 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3628
3629 * window.c (Fset_window_configuration): Be careful when you choose
3630 among several possible points for the new_current_buffer.
3631
3632 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3633
3634 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
3635 poll_for_input_1. Set interrupt_input_pending to 1 instead.
3636 (Qlanguage_change) [MAC_OS]: New variable.
3637 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
3638 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
3639
3640 * macterm.c (mac_keyboard_text_encoding)
3641 (current_mac_keyboard_text_encoding): Remove variables.
3642 (XTread_socket): Store language-change event if keyboard script change
3643 is detected. Don't convert input to `mac_keyboard_text_encoding'.
3644 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
3645
3646 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
3647
3648 2005-04-10 Richard M. Stallman <rms@gnu.org>
3649
3650 * emacs.c (standard_args): Rename --bare-bones to --quick.
3651 Add -D aka --basic-display.
3652
3653 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
3654
3655 2005-04-09 Richard M. Stallman <rms@gnu.org>
3656
3657 * keymap.c (where_is_internal): Convert a string used as event type
3658 into "(any string)".
3659
3660 * lread.c (Vloads_in_progress): Not static.
3661 * fns.c (Vloads_in_progress): Add extern.
3662 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
3663
3664 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
3665
3666 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
3667
3668 2005-04-09 Lute Kamstra <lute@gnu.org>
3669
3670 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
3671 within the accessible part of the buffer.
3672
3673 2005-04-09 Kim F. Storm <storm@cua.dk>
3674
3675 * lread.c (readevalloop): Add args START and END as region in
3676 current buffer to read. Callers changed.
3677 When specified, narrow to this region only when reading,
3678 not during eval. Track next point to read from during eval.
3679 Also restore point to "real" buffer position before eval.
3680 (Feval_region): Don't save excursion and restriction here, and
3681 don't narrow to region. Just pass region to readevalloop.
3682 Note: Point is now preserved even when PRINTFLAG is nil.
3683
3684 2005-04-08 Kim F. Storm <storm@cua.dk>
3685
3686 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
3687
3688 2005-04-06 Kim F. Storm <storm@cua.dk>
3689
3690 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
3691
3692 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3693
3694 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
3695 (Fmac_get_preference): Doc fix.
3696
3697 * macfns.c (Fx_create_frame, x_create_tip_frame):
3698 Add "fontset-mac" to fallback font/fontsets.
3699
3700 2005-04-04 Kim F. Storm <storm@cua.dk>
3701
3702 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
3703
3704 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
3705 Call it again after autoload.
3706
3707 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3708
3709 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
3710 mallopt.
3711
3712 * ralloc.c (r_alloc_init): Ditto.
3713
3714 2005-04-01 Kenichi Handa <handa@m17n.org>
3715
3716 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
3717 (Vascii_eqv_table): Extern them.
3718
3719 * casetab.c (set_case_table): If standard is nonzero, setup
3720 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
3721
3722 * search.c (looking_at_1): Use current_buffer->case_canon_table,
3723 not DOWNCASE_TABLE.
3724 (string_match_1): Likewise.
3725 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
3726 Vascii_downcase_table.
3727 (fast_string_match_ignore_case): Likewise.
3728 (search_buffer): Fix checking of boyer-moore usability.
3729 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
3730 No need of tranlating characters in PAT. Fix calculation of
3731 simple_translate.
3732
3733 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3734
3735 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
3736 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
3737 Use XtNtopShadowPixel and XtNbottomShadowPixel.
3738 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
3739 really work and that breaks with some versions of Xaw3d.
3740
3741 2005-03-31 Kenichi Handa <handa@m17n.org>
3742
3743 * coding.c (syms_of_coding): Fix previous change.
3744
3745 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
3746
3747 * fileio.c (search_embedded_absfilename): Fix last change.
3748
3749 2005-03-25 Kenichi Handa <handa@m17n.org>
3750
3751 * coding.c (syms_of_coding): Suggest to use set-coding-category in
3752 the docstring of coding-category-list.
3753
3754 2005-03-31 Kim F. Storm <storm@cua.dk>
3755
3756 * keyboard.c (Qmouse_fixup_help_message): New var.
3757 (syms_of_keyboard): Intern and staticpro it.
3758 (show_help_echo): Apply mouse-fixup-help-message to help string.
3759
3760 2005-03-30 Kim F. Storm <storm@cua.dk>
3761
3762 * xdisp.c (display_line): Allow multiple overlay arrows in window.
3763
3764 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3765
3766 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
3767 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
3768 (Ffile_name_absolute_p): Use it.
3769 (search_embedded_absfilename): New fun, extracted from
3770 Fsubstitute_in_file_name. Use file_name_absolute_p.
3771 Free the pw data after use.
3772 (Fsubstitute_in_file_name): Use it.
3773 After cutting a prefix, re-check file-name-handler.
3774
3775 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
3776
3777 * w32term.h (x_output): Add focus_state.
3778
3779 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
3780 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
3781
3782 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
3783
3784 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
3785 Use Fexit_minibuffer.
3786 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
3787
3788 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3789
3790 * dired.c (Ffile_attributes): Add a missing gcpro.
3791
3792 * alloc.c (make_number): The arg can be bigger than `int'.
3793 * lisp.h (make_number): Make prototype more precise.
3794
3795 * process.c, dired.c (Vfile_name_coding_system)
3796 (Vdefault_file_name_coding_system):
3797 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
3798 (Vdefault_file_name_coding_system): Remove unused declarations.
3799
3800 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3801
3802 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
3803 if it failed to pop up (Gnome "show pointer on ctrl" option makes
3804 menus fail to pop up).
3805
3806 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3807
3808 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
3809 Just prepend a backslash without replacing the NBSP by an SPC.
3810
3811 2005-03-22 Kim F. Storm <storm@cua.dk>
3812
3813 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
3814 * dispextern.h (lookup_derived_face): Fix prototype.
3815 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
3816
3817 * xdisp.c (handle_single_display_spec): Derive left-fringe and
3818 right-fringe face from fringe face.
3819
3820 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
3821 Derive face from fringe face.
3822
3823 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3824
3825 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
3826
3827 2005-03-22 David Kastrup <dak@gnu.org>
3828
3829 * textprop.c (Fnext_char_property_change)
3830 (Fprevious_char_property_change): Allow marker as limit.
3831 (Fnext_single_char_property_change)
3832 (Fprevious_single_char_property_change): Check that limit is a
3833 number in strings.
3834 (Fnext_single_char_property_change): Coerce position to integer.
3835 (Fprevious_single_char_property_change): Same here.
3836
3837 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
3838
3839 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
3840
3841 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
3842
3843 * frame.c (Fignore_event): Remove.
3844 (syms_of_frame): Don't defsubr it.
3845
3846 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
3847 redundant `ignore-event'.
3848
3849 2005-03-19 Eli Zaretskii <eliz@gnu.org>
3850
3851 * unexec.c (write_segment, unexec): Move these functions to avoid
3852 forward references (which cause errors with "gcc -gcoff").
3853
3854 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3855
3856 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
3857 that it doesn't become "tooltip". The specbind is enough.
3858
3859 * xrdb.c (x_load_resources): Use different char *helv when I18N
3860 is present.
3861
3862 2005-03-17 Kenichi Handa <handa@m17n.org>
3863
3864 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
3865
3866 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3867
3868 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
3869 Use xic_create_fontsetname even for non-Motif menus.
3870 Don't forget to free the fontsetname.
3871
3872 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
3873
3874 2005-03-17 Richard M. Stallman <rms@gnu.org>
3875
3876 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
3877
3878 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
3879 (Fmake_symbolic_link): Use G to read the new file name.
3880
3881 * callint.c (Finteractive): Document G option.
3882 (Fcall_interactively): Implement G option.
3883
3884 * buffer.c (buffer_lisp_local_variables): New function,
3885 broken out from Fbuffer_local_variables.
3886 (clone_per_buffer_values): Use buffer_lisp_local_variables.
3887
3888 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3889
3890 * xfns.c (xic_create_fontsetname): Add `motif' argument.
3891 Always return a freshly allocated string.
3892 (xic_create_xfontset): Adjust call.
3893
3894 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
3895 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
3896 (dump_realized_face): Fix warning.
3897
3898 * emacs.c (Fkill_emacs): YAILOM.
3899
3900 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
3901
3902 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3903
3904 * mac.c (HASHKEY_TERMINAL): Remove.
3905 (HASHKEY_MAX_NID): New macro.
3906 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
3907 argument.
3908 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
3909 (xrm_create_database, xrm_q_put_resource)
3910 (xrm_merge_string_database, xrm_q_get_resource_1)
3911 (xrm_q_get_resource): Change resource database representation so
3912 that it may not use multiple hash tables for a single database.
3913 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
3914
3915 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
3916
3917 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
3918
3919 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
3920 locale-coding-system, as was already done for WINDOWSNT.
3921
3922 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
3923 translation for chars in the 0-255 range.
3924
3925 2005-03-16 Lute Kamstra <lute@gnu.org>
3926
3927 * floatfns.c (Ffloor): Doc fix.
3928
3929 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3930
3931 * mac.c: Include macterm.h instead of directly including Carbon.h.
3932 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
3933 (Qarray, Qdictionary): New variables.
3934 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3935 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
3936 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
3937 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
3938 in callback for CFDictionaryApplyFunction.
3939 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3940 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3941 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
3942 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
3943 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
3944 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3945 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3946 (skip_white_space, parse_comment, parse_include_file)
3947 (parse_binding, parse_component, parse_resource_name, parse_value)
3948 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
3949 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
3950 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
3951 New functions.
3952
3953 * macfns.c (mac_get_rdb_resource): Remove function.
3954 (x_get_string_resource): Use xrm_get_resource.
3955
3956 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
3957
3958 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
3959 name_list_element.
3960 (mac_make_rdb): Create resource database from preferences and
3961 argument string.
3962 (mac_term_init): Save resource database to cddr part of
3963 name_list_element.
3964
3965 * macterm.h (xrm_merge_string_database, xrm_get_resource)
3966 (xrm_get_preference_database): Add externs.
3967 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3968 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3969 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
3970
3971 * process.c (init_process): Change `#ifdef DARWIN' to `#if
3972 defined (DARWIN) || defined (MAC_OSX)'
3973
3974 * s/darwin.h (DARWIN): Don't define.
3975
3976 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3977
3978 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
3979 Remove unused variables.
3980 (syms_of_macfns): Don't initialize them. Likewise for
3981 Qface_set_after_frame_default. Defvar and initialize
3982 Vx_window_horizontal_drag_shape.
3983 (x_set_mouse_color): Change mouse pointer shape.
3984 (mac_window) [!MAC_OSX]: Create root control.
3985 (Fx_create_frame): Remove initializations of mouse pointer shapes.
3986 (hourglass_started): New function (from xfns.c).
3987 (start_hourglass, cancel_hourglass): Put function body in #ifdef
3988 MAC_OSX.
3989 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
3990 indicator for each non-tooltip frame if needed, and show it.
3991 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
3992
3993 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
3994 Controls.h. Use ThemeCursor instead of CursHandle.
3995
3996 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
3997 Remove functions and declarations.
3998 (mac_set_colors): Take argument for saving background color.
3999 All callers changed.
4000 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
4001 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
4002 background color.
4003 (x_update_end, mac_do_track_drag): Don't reset background color.
4004 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
4005 Use SetThemeCursor.
4006 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
4007 indicator control to the upper-right corner of the window.
4008 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
4009 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
4010 (do_window_update): Update controls after updating content area.
4011 (mac_handle_window_event): Remove unused extern.
4012 (XTread_socket): Check both control handle and control part code
4013 to determine whether a scroll bar is clicked. Activate/deactivate
4014 root control instead of contained scroll bar controls.
4015 (make_mac_terminal_frame): Use ThemeCursor constants.
4016
4017 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
4018 New member hourglass_control.
4019 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
4020 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
4021
4022 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4023
4024 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
4025 coincides with that in Apple X11 except `clear', `enter' on
4026 laptops, and fn + `enter' on laptops.
4027
4028 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
4029
4030 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
4031 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
4032 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
4033
4034 * xfns.c (xic_defaut_fontset): New constant.
4035 (xic_create_fontsetname): New function.
4036 Extracted from create_frame_xic. Try to generate a slightly
4037 better fontset.
4038 (xic_create_xfontset): Use it.
4039 (create_frame_xic): Simplify.
4040
4041 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
4042
4043 * fileio.c (Fmake_symbolic_link): Fix last change.
4044
4045 2005-03-11 Richard M. Stallman <rms@gnu.org>
4046
4047 * fileio.c (Frename_file, Fadd_name_to_file)
4048 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
4049 expand the basename of FILE relative to it.
4050
4051 2005-03-11 Kenichi Handa <handa@m17n.org>
4052
4053 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
4054 before calling setup_coding_system so that autoloading of a coding
4055 system work.
4056
4057 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4058
4059 * xfns.c (hourglass_started): New function.
4060
4061 * dispextern.h: Declare hourglass_started.
4062
4063 * keyboard.c (Fexecute_extended_command): Restart hourglass
4064 after call to Fcompleting_read if already started.
4065
4066 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
4067 GTK main loop is entered in xterm.c, thus doing the redraw.
4068
4069 2005-03-10 Kim F. Storm <storm@cua.dk>
4070
4071 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
4072
4073 2005-03-08 Kenichi Handa <handa@m17n.org>
4074
4075 * frame.c (x_set_font): Call set_default_ascii_font if an
4076 available font is found.
4077
4078 * fontset.c (set_default_ascii_font): New function.
4079 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
4080
4081 * fontset.h (set_default_ascii_font): Extern it.
4082
4083 2005-03-07 Kim F. Storm <storm@cua.dk>
4084
4085 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
4086 (clear_image_cache_count): New var.
4087 (redisplay_internal): Don't clear face and image caches in the
4088 middle of redisplay; do it afterwards.
4089
4090 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
4091
4092 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
4093 is valid. If not, clear phys_cursor_on_p and return.
4094
4095 2005-03-07 Andreas Schwab <schwab@suse.de>
4096
4097 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
4098
4099 2005-03-06 Richard M. Stallman <rms@gnu.org>
4100
4101 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
4102
4103 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
4104 (Feval, Ffuncall): Use CHECK_CONS_LIST.
4105
4106 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
4107
4108 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
4109 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
4110
4111 2005-03-05 Juri Linkov <juri@jurta.org>
4112
4113 * emacs.c (USAGE1): Replace Info node name "command arguments"
4114 with "emacs invocation".
4115 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
4116 allow arguments `--color' and `MODE' to be separated by space.
4117 Add --no-blinking-cursor, -nbc.
4118 (standard_args): Add -nbc, --no-blinking-cursor.
4119
4120 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4121
4122 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
4123 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
4124 * fileio.c (Fexpand_file_name) [VMS]:
4125 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
4126 * doc.c (munge_doc_file_name) [VMS]: Likewise.
4127 (Fsnarf_documentation): Call munge_doc_file_name.
4128
4129 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4130
4131 * s/vms.h (FILE_SYSTEM_CASE): New macro.
4132 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
4133 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
4134
4135 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4136
4137 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
4138 defined (MAC_OSX) && defined (HAVE_CARBON)'.
4139
4140 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
4141
4142 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4143 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
4144 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
4145 (mac_clear_font_name_table): Move extern to macterm.h.
4146
4147 * macfns.c (install_window_handler): Move extern to macterm.h.
4148 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
4149 valid. Don't check !NILP (dir) because it is already checked with
4150 CHECK_STRING.
4151 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
4152 specifying the default location and obtaining the selected filename.
4153
4154 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4155
4156 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
4157 are included via Carbon.h.
4158
4159 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
4160 Define USE_CARBON_EVENTS to 1.
4161 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
4162 (x_free_frame_resources): Call remove_window_handler for
4163 non-tooltip windows.
4164 [TARGET_API_MAC_CARBON]: Don't include headers that are included
4165 via Carbon.h.
4166 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
4167 (mac_do_receive_dragUPP): New variables.
4168 (mac_handle_service_event, init_service_handler): Put declarations
4169 and definitions in #ifdef MAC_OSX.
4170 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
4171 drag-and-drop handler functions and register them.
4172 (remove_window_handler): New function.
4173 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
4174 Use fsspec_to_posix_pathname.
4175 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
4176 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
4177 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
4178 Set default cursors.
4179 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
4180 init_service_handler or init_quit_char_handler.
4181 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
4182
4183 * macterm.h (install_window_handler, remove_window_handler)
4184 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
4185 (mac_clear_font_name_table): New externs.
4186
4187 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4188
4189 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
4190 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
4191 (Fexpand_file_name): Likewise.
4192
4193 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4194
4195 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
4196 no longer special-case VMS. Add bogus return value.
4197
4198 2005-03-02 Kim F. Storm <storm@cua.dk>
4199
4200 * dispextern.h (XASSERTS): Define to 0 if not already defined.
4201 (xassert) [!XASSERTS]: Define dummy version.
4202
4203 2005-03-02 Kim F. Storm <storm@cua.dk>
4204
4205 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
4206 Reported by David Kastrup.
4207
4208 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
4209
4210 * xdisp.c (get_next_display_element): Fix control and escape
4211 glyph from display vector.
4212
4213 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
4214
4215 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
4216
4217 2005-02-27 Richard M. Stallman <rms@gnu.org>
4218
4219 * xdisp.c (fast_find_position): Rename END to BEG.
4220 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
4221
4222 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4223
4224 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
4225 gtk_window_resize and x_wm_set_size_hint.
4226
4227 2005-02-25 Kim F. Storm <storm@cua.dk>
4228
4229 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
4230
4231 * xdisp.c (init_from_display_pos): Don't read past end of
4232 it->overlay_strings array.
4233
4234 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
4235
4236 * buffer.c (syms_of_buffer): Fix typo.
4237
4238 2005-02-23 Lute Kamstra <lute@gnu.org>
4239
4240 * buffer.c (Foverlay_buffer): Doc fix.
4241
4242 2005-02-22 Kim F. Storm <storm@cua.dk>
4243
4244 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
4245 and symbol keys in alists and hash tables.
4246
4247 * xdisp.c (fast_find_position): Fix search for start of overlay.
4248
4249 2005-02-21 Kim F. Storm <storm@cua.dk>
4250
4251 * window.c (window_scroll_pixel_based): When scrolling backwards,
4252 handle partial visible line at end of window even when we hit PT.
4253
4254 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
4255
4256 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
4257
4258 2005-02-21 Kim F. Storm <storm@cua.dk>
4259
4260 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
4261 I think those asserts are bogus if buffer contains invisible text
4262 or images.
4263
4264 2005-02-21 David Kastrup <dak@gnu.org>
4265
4266 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
4267
4268 2005-02-20 Kim F. Storm <storm@cua.dk>
4269
4270 * xdisp.c (pos_visible_p): Be sure to move to the specified
4271 position. Always get the full ascent / descent of the
4272 corresponding row, to return reliable rtop and rbot values.
4273 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
4274 Must look one character back, as back_to_previous_line_start
4275 returns position after the newline.
4276 (move_it_vertically_backward): Fix heuristic for when to move further
4277 back in case line_height * 2/3 is larger than window height.
4278 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
4279 as it does not do anything anymore. Add arg current_matrix_p to
4280 use current matrix rather than desired matrix when set.
4281 (try_cursor_movement): Don't scroll to make cursor row fully
4282 visible if cursor didn't move. This avoids unexpected recentering
4283 in case of blinking cursor or accepting process output.
4284 Use current matrix to check cursor row visibility.
4285 (redisplay_window): Fix whether to recenter or move to top in case
4286 cursor line is taller than window height.
4287 (find_first_unchanged_at_end_row): Stop search if we reach a row
4288 which not enabled (instead of abort).
4289
4290 2005-02-18 Kim F. Storm <storm@cua.dk>
4291
4292 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
4293 to be nil in a :box attribute value list; customize prints that
4294 as lisp value when no box color is specified.
4295
4296 * .gdbinit (pitx, pit): Pretty print display iterator.
4297 (prowx, prow): Pretty print glyph row.
4298 (pcursorx, pcursor): Pretty print a window cursor.
4299 (pwinx, pwin): Pretty print struct window.
4300
4301 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
4302
4303 * alloc.c (BLOCK_BYTES): Harmless typo.
4304
4305 2005-02-17 Andreas Schwab <schwab@suse.de>
4306
4307 * xfns.c (hack_wm_protocols): Use correct type for last parameter
4308 of XGetWindowProperty to avoid aliasing issues.
4309 (Fx_window_property): Likewise.
4310
4311 * xselect.c (Fx_disown_selection_internal): Use union of struct
4312 input_event and struct selection_input_event to avoid aliasing issues.
4313
4314 * xterm.c (handle_one_xevent): Use union of struct input_event and
4315 struct selection_input_event to avoid aliasing issues.
4316 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
4317
4318 2005-02-17 Kim F. Storm <storm@cua.dk>
4319
4320 * dispextern.h (enum it_method): New enum.
4321 (GET_FROM_*): Its members.
4322 (struct it): Change member method from function pointer to enum.
4323
4324 * xdisp.c (check_it, init_from_display_pos, handle_stop)
4325 (setup_for_ellipsis, handle_single_display_spec)
4326 (handle_composition_prop, next_overlay_string)
4327 (get_overlay_strings, reseat_1, reseat_to_string)
4328 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
4329 (in_display_vector_p, display_line, get_next_display_element):
4330 Change it->method from function pointer to enum.
4331 (get_next_element): New array to map it->method to function.
4332 (get_next_display_element): Use it.
4333 (set_iterator_to_next): Use switch instead of if/else chain.
4334
4335 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4336
4337 * w32select.c: Summary: Thorough rework to implement Unicode
4338 clipboard operations and delayed rendering.
4339
4340 Drop last_clipboard_text and related code, keep track of
4341 ownership via clipboard_owner instead. Drop old #if0 sections.
4342
4343 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
4344 (clipboard_owner, modifying_clipboard, cfg_coding_system)
4345 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
4346 (current_coding_system, current_requires_encoding)
4347 (current_num_nls, current_clipboard_type, current_lcid):
4348 New static variables.
4349
4350 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
4351 (render, render_all, run_protected, lisp_error_handler)
4352 (owner_callback, create_owner, setup_config)
4353 (enum_locale_callback, cp_from_locale, coding_from_cp):
4354 New local functions.
4355
4356 (term_w32select, globals_of_w32select): New global functions.
4357
4358 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
4359 clipboard_owner instead. Use delayed rendering and provide
4360 all text formats. Provide CF_LOCALE if necessary.
4361
4362 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
4363 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
4364 available. Force DOS line-ends for decoding.
4365
4366 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
4367
4368 (syms_of_w32select): Init and register new variables.
4369
4370 * w32.h: Add prototypes for globals_of_w32select and
4371 term_w32select. Make the neighboring K&R declarations into
4372 prototypes, too.
4373
4374 * emacs.c: Include w32.h to get function prototypes.
4375 (main): Call globals_of_w32select.
4376
4377 * w32.c (term_ntproc): Call term_w32select.
4378
4379 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
4380
4381 2005-02-16 Kim F. Storm <storm@cua.dk>
4382
4383 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
4384 at end of display vector.
4385
4386 2005-02-15 Richard M. Stallman <rms@gnu.org>
4387
4388 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
4389 for mode and header lines.
4390
4391 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
4392
4393 * keymap.h (describe_map_tree): Change decl.
4394
4395 * keyboard.c (command_loop_1): Always use safe_run_hooks
4396 to run Qdeferred_action_function.
4397
4398 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
4399 (describe_map, describe_vector): Likewise. When it's 1,
4400 don't omit shadowed bindings, instead mark them as shadowed.
4401
4402 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
4403 for describe_map_tree. Pass 1 for MENTION_SHADOW.
4404
4405 * data.c (Fsetq_default): Allow no arg case.
4406
4407 2005-02-14 Kenichi Handa <handa@m17n.org>
4408
4409 * coding.c (encode_coding_string): Always return a unibyte string.
4410 If NOCOPY is nonzero and there's no need of encoding, make STR
4411 unibyte directly.
4412
4413 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
4414 multibyte string, signal an error instead of aborting.
4415
4416 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
4417
4418 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
4419
4420 2005-02-12 Kim F. Storm <storm@cua.dk>
4421
4422 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
4423
4424 2005-02-10 Kim F. Storm <storm@cua.dk>
4425
4426 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
4427 if it moves outside window or it doesn't display text.
4428
4429 2005-02-09 Kim F. Storm <storm@cua.dk>
4430
4431 * undo.c (Fprimitive_undo): Check that undo function does not
4432 switch buffer.
4433
4434 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4435
4436 * xselect.c (selection_data_to_lisp_data): For the special case
4437 type == XA_ATOM, data contains array of int, not array of Atom.
4438 (x_property_data_to_lisp, selection_data_to_lisp_data):
4439 Comment update: data must be array of int for format == 32.
4440
4441 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
4442
4443 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
4444
4445 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4446
4447 * xfns.c (Fx_change_window_property): Use long array when format is 32.
4448 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
4449 convert long array returned from XGetWindowProperty to an int array.
4450 (x_set_tool_bar_lines): Check that width and height is greater than
4451 zero before clearing area.
4452
4453 * xselect.c (x_reply_selection_request): Pass long array to
4454 XChangeProperty so that 64 bit longs are handeled correctly.
4455 (x_get_window_property): If format is 32 and long is bigger than 32
4456 bits convert data from XGetWindowProperty from long array to int array.
4457 (lisp_data_to_selection_data): When the input is a vector and the
4458 format is 32, allocate a long array even if long is bigger than 32 bits.
4459 (x_fill_property_data): Use char, short and long as the man page
4460 for XChangeProperty specifies. This way the data returned is OK for
4461 both 32 and 64 bit machines.
4462 (x_handle_dnd_message): Calculate size correctly even for 64 bit
4463 machines.
4464 (Fx_send_client_event): Undo change from 2005-02-05,
4465 x_fill_property_data now handles that case.
4466
4467 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
4468 reason for the approach in the code.
4469
4470 2005-02-07 Kim F. Storm <storm@cua.dk>
4471
4472 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
4473
4474 2005-02-06 Richard M. Stallman <rms@gnu.org>
4475
4476 * eval.c (Frun_hook_with_args)
4477 (Frun_hook_with_args_until_success)
4478 (Frun_hook_with_args_until_failure): Doc fixes.
4479
4480 2005-02-05 Andreas Schwab <schwab@suse.de>
4481
4482 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
4483
4484 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4485
4486 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
4487 the longs in a XClientMessageEvent correctly when long is 64 bits.
4488
4489 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4490
4491 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4492 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4493
4494 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4495
4496 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4497 events so the menu event comes after them. This is to prevent sit-for
4498 from exiting on buffered events directly after a menu selection,
4499 lisp code for Help => About Emacs uses sit-for.
4500
4501 * gtkutil.c (create_menus): Connect selection-done event instead of
4502 the deactivate event to deactivate_cb. This will make the last
4503 leave event come before the call to deactivate_cb, so the leave
4504 event does not make sit-for exit after a menu selection.
4505
4506 2005-02-03 Kim F. Storm <storm@cua.dk>
4507
4508 * dispnew.c (build_frame_matrix_from_leaf_window)
4509 [!GLYPH_DEBUG]: Fix xassert.
4510
4511 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4512
4513 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4514
4515 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4516
4517 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4518 the compiling OS version.
4519
4520 * macfns.c (x_create_tip_frame): Likewise.
4521
4522 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4523
4524 2005-02-03 Richard M. Stallman <rms@gnu.org>
4525
4526 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4527
4528 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4529
4530 * buffer.c (Fbury_buffer): Doc fix.
4531
4532 2005-02-02 Steven Tamm <steventamm@mac.com>
4533
4534 * macfns.c (unwind_create_frame): Fix compile error due to
4535 xassert being uncondition, but predicate is.
4536 * dispnew.c (update_window): Fix compile error due to
4537 xassert being uncondition, but predicate is.
4538
4539 2005-02-02 Miles Bader <miles@gnu.org>
4540
4541 * dispextern.h (xassert): Enable unconditionally.
4542
4543 2005-02-02 Kim F. Storm <storm@cua.dk>
4544
4545 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4546
4547 2005-02-02 Kenichi Handa <handa@m17n.org>
4548
4549 * casefiddle.c (casify_object): Enable changing characters of
4550 different byte length.
4551 (casify_region): Fix loop condition, args to replace_range_2, and
4552 update opoint_byte.
4553
4554 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
4555
4556 2005-02-01 Kim F. Storm <storm@cua.dk>
4557
4558 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
4559 stack before calling handle_display_prop.
4560
4561 2005-01-31 Kim F. Storm <storm@cua.dk>
4562
4563 * undo.c (Qapply): New lisp var.
4564 (syms_of_undo): Intern and staticpro it.
4565 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
4566 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
4567
4568 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4569
4570 2005-01-30 Jesper Harder <harder@phys.au.dk>
4571
4572 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
4573 <mac-emulate-three-button-mouse>: Fix docstring indentation.
4574
4575 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
4576
4577 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
4578 Increase value to 3 Meg.
4579
4580 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4581
4582 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
4583 button events are not received otherwise.
4584
4585 2005-01-29 Richard M. Stallman <rms@gnu.org>
4586
4587 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4588
4589 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
4590
4591 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
4592
4593 * keymap.c (access_keymap): YAILOM.
4594
4595 2005-01-27 Kim F. Storm <storm@cua.dk>
4596
4597 * xdisp.c (get_phys_cursor_geometry): New function to calculate
4598 phys cursor position and size for hollow cursor. Position is
4599 aligned with get_glyph_string_clip_rect and ensures that a hollow
4600 cursor is shown, even when the actual glyph is not visible.
4601
4602 * dispextern.h (get_phys_cursor_geometry): Add prototype.
4603
4604 * xterm.c (x_clip_to_row): Ensure y >= 0.
4605 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4606
4607 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4608
4609 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4610
4611 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
4612
4613 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
4614
4615 2005-01-27 Kim F. Storm <storm@cua.dk>
4616
4617 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
4618 glyph, even when row is only partially visible and actual cursor
4619 position is not visible.
4620
4621 2005-01-24 Richard M. Stallman <rms@gnu.org>
4622
4623 * xterm.c (x_error_quitter): No longer static, and moved after
4624 x_error_handler.
4625
4626 2005-01-24 Kim F. Storm <storm@cua.dk>
4627
4628 * xdisp.c (move_it_by_lines): If we move forward after going too
4629 far back, cancel move if end position is same as start position.
4630
4631 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4632
4633 * dispextern.h (struct glyph_string): New members clip_head and
4634 clip_tail.
4635
4636 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
4637 region to the area between clip_head and clip_tail.
4638 (draw_glyphs): Record the area that need to be actually redrawn to
4639 the new variables clip_head and clip_tail when there are
4640 overhangs. Set values of these variables to the corresponding
4641 members in struct glyph_string. Refine x coordinates for
4642 notice_overwritten_cursor using clip_head and clip_tail.
4643
4644 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
4645
4646 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
4647 QDTextBounds.
4648 (x_draw_glyph_string): Don't fill the background of the successor
4649 of a glyph with a right overhang if the successor will draw a cursor.
4650 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
4651 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4652
4653 2005-01-24 Kim F. Storm <storm@cua.dk>
4654
4655 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
4656 direction if window height was smaller than next-screen-context-lines.
4657 Now always scroll at least one line in the requested direction.
4658 Ensure that we actually do scroll backwards when requested to do so.
4659
4660 * xdisp.c (redisplay_window): Only try to make cursor line fully
4661 visible once (to avoid redisplay loop).
4662
4663 2005-01-23 Kim F. Storm <storm@cua.dk>
4664
4665 * window.c (Fpos_visible_in_window_p): Simplify return value for
4666 partially visible rows.
4667 (window_scroll_pixel_based): Adapt to that change.
4668
4669 * window.c (window_scroll_pixel_based): Force moving to next line
4670 if scrolling doesn't move start point, e.g. if looking at tall image.
4671
4672 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
4673 Clear last_height before calling line_bottom_y to get real height.
4674 Fix calculation of y.
4675
4676 2005-01-22 Steven Tamm <steventamm@mac.com>
4677
4678 * s/darwin.h: Removed PTY_ITERATION from here.
4679 (DARWIN): Define.
4680
4681 * process.c (init_process): Default process-connection-type to
4682 nil on darwin 6 or less, t if it is 7 or higher. This way the
4683 broken pty behavior is still allowed on darwin 6 for interactive
4684 processes for people that know what they are doing.
4685
4686 2005-01-22 Kim F. Storm <storm@cua.dk>
4687
4688 * window.c (auto_window_vscroll_p): New boolean.
4689 (syms_of_window): DEFVAR_BOOL it.
4690 (Fpos_visible_in_window_p): Extend return value to include RTOP
4691 and RBOT values if FULLY is nil.
4692 (window_scroll_pixel_based): Adjust vscroll for partially visible
4693 rows if auto_window_vscroll_p is set.
4694 (Fset_window_vscroll): Do nothing if vscroll is not modified.
4695
4696 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
4697 to return number of partially invisible pixels at top and bottom
4698 of the dislay row at POS.
4699
4700 * lisp.h (pos_visible_p): Fix prototype.
4701
4702 2005-01-21 Richard M. Stallman <rms@gnu.org>
4703
4704 * fileio.c (Fcopy_file): Doc fix.
4705
4706 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4707
4708 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
4709 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
4710 start of function for older compilers.
4711
4712 2005-01-20 Richard M. Stallman <rms@gnu.org>
4713
4714 * editfns.c (Fmessage): If arg is "", return "" (as before).
4715
4716 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
4717
4718 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
4719 variable.
4720
4721 2005-01-20 Steven Tamm <steventamm@mac.com>
4722
4723 * editfns.c (Voperating_system_release): Add.
4724 (init_editfns): Assign new variable operating-system-release
4725 based on call to uname if available.
4726 (get_operating_system_release): Add function to
4727 allow c-level access to operating system release.
4728
4729 * config.h: Regenerated.
4730
4731 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
4732 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
4733 using ptys as '7'.
4734
4735 2005-01-20 Kim F. Storm <storm@cua.dk>
4736
4737 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
4738
4739 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
4740 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
4741
4742 * macterm.c (x_draw_glyph_string_box): Likewise.
4743
4744 * w32term.c (x_draw_glyph_string_box): Likewise.
4745
4746 * indent.c (Fvertical_motion): Temporarily disable selective display.
4747
4748 2005-01-19 Kim F. Storm <storm@cua.dk>
4749
4750 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
4751 image property.
4752
4753 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
4754
4755 2005-01-18 Kim F. Storm <storm@cua.dk>
4756
4757 * xdisp.c (fast_find_position): Backtrack to find first row if
4758 charpos is inside a display overlay that spans multiple lines.
4759
4760 2005-01-18 Kenichi Handa <handa@m17n.org>
4761
4762 * coding.c (decode_coding_iso2022): Translate invalid codes if
4763 translation-table is specified.
4764
4765 2005-01-18 Kim F. Storm <storm@cua.dk>
4766
4767 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
4768 change. If handle_display_prop indicates newline is replaced by
4769 image or text, move back to start of relevant overlay or interval
4770 and continue scan from there. Simplify.
4771
4772 2005-01-17 Kim F. Storm <storm@cua.dk>
4773
4774 * dispnew.c (mode_line_string, marginal_area_string):
4775 Fix off-by-one error in search for glyph.
4776
4777 2005-01-16 Kim F. Storm <storm@cua.dk>
4778
4779 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
4780
4781 2005-01-16 Steven Tamm <steventamm@mac.com>
4782
4783 * macterm.c (mac_to_x_fontname): Remove spurious argument.
4784
4785 2005-01-16 Andreas Schwab <schwab@suse.de>
4786
4787 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
4788
4789 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4790
4791 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
4792 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
4793
4794 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4795
4796 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
4797 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
4798 New flags for readable_events.
4799 (get_filtered_input_pending, readable_filtered_events): Remove.
4800 (tracking_off): Call readable_events and get_input_pending with
4801 flag READABLE_EVENTS_DO_TIMERS_NOW.
4802 (readable_events): Move code from old readable_filtered_events here,
4803 but check new READABLE_EVENTS_* in argument flags instead of previous
4804 two boolean arguments do_timers_now and filter_events.
4805 If we are doing mouse tracking and the mouse moved, return only if
4806 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
4807 (swallow_events): Call get_input_pending with flag
4808 READABLE_EVENTS_DO_TIMERS_NOW.
4809 (get_input_pending): Move code from old get_filtered_input_pending
4810 here. Replace boolean arguments do_timers_now, filter_events with
4811 flags, and pass flags to readable_events. Document new
4812 READABLE_EVENTS_* flags.
4813 (detect_input_pending_ignore_squeezables): New function.
4814 (detect_input_pending_run_timers): Call get_input_pending with flag
4815 READABLE_EVENTS_DO_TIMERS_NOW.
4816 (Finput_pending_p): Call get_input_pending with flags
4817 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
4818
4819 * dispnew.c (update_window, update_frame_1): Replace calls to
4820 detect_input_pending with detect_input_pending_ignore_squeezables
4821 so that redisplay is not paused if the event queue contains only
4822 mouse movements.
4823
4824 * lisp.h: Declare detect_input_pending_ignore_squeezables.
4825
4826 2005-01-15 Steven Tamm <steventamm@mac.com>
4827
4828 * macterm.c (Vmac_use_core_graphics): Declare variable for
4829 mac-allow-anti-aliasing.
4830 (syms_of_macterm): DEFVAR_LISP and initialize it.
4831 (mac_draw_string_common): Use core graphics text rendering if
4832 mac-allow-anti-aliasing is enabled.
4833
4834 * macfns.c (Fx_file_dialog): Save As dialog includes only the
4835 file name in the text box.
4836
4837 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4838
4839 * macfns.c (x_set_foreground_color, x_set_background_color):
4840 Sync with xfns.c.
4841 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
4842 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
4843 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
4844
4845 2005-01-14 Kim F. Storm <storm@cua.dk>
4846
4847 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
4848
4849 2005-01-13 Richard M. Stallman <rms@gnu.org>
4850
4851 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
4852 if Voverriding_terminal_local_map is non-nil.
4853
4854 * keyboard.c (syms_of_keyboard): Doc fix.
4855
4856 2005-01-13 Kim F. Storm <storm@cua.dk>
4857
4858 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
4859 (specify 0 for FACE instead). Reorder arg list. Doc fix.
4860
4861 2005-01-12 Richard M. Stallman <rms@gnu.org>
4862
4863 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
4864 face property for characters that don't specify one.
4865
4866 * fns.c (Frequire): Record in load-history unconditionally.
4867
4868 2005-01-10 Kim F. Storm <storm@cua.dk>
4869
4870 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
4871
4872 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
4873 Callers changed.
4874 Add support to merge with lisp face id too (if face_name is t).
4875
4876 * xdisp.c (get_next_display_element, next_element_from_display_vector):
4877 Don't lookup lface_id from display table glyphs here; instead use
4878 merge_faces to merge the lisp face id into current face.
4879
4880 2005-01-09 Kim F. Storm <storm@cua.dk>
4881
4882 * dispextern.h (struct it): New member dpvec_face_id.
4883 (merge_into_realized_face): Add prototype.
4884
4885 * xfaces.c (merge_into_realized_face): New function. Used to
4886 merge escape-glyph face or face from display table into current face.
4887
4888 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
4889 (syms_of_xdisp): DEFVAR_LISP it.
4890 (escape_glyph_face): Remove var.
4891 (redisplay_window): Don't initialize it.
4892 (setup_for_ellipsis, get_next_display_element):
4893 Set it->dpvec_face_id to -1.
4894 (get_next_display_element): Test Vshow_nonbreak_escape.
4895 Do not setup escape_glyph_face.
4896 Properly merge escape-glyph face or face from display table with
4897 current face for escape and control characters.
4898 Set it->dpvec_face_id to relevant face id instead of adding it to each
4899 element of display vector.
4900 (next_element_from_display_vector): If it->dpvec_face_id is set,
4901 use that instead of lface_id from glyph itself.
4902
4903 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4904
4905 * xterm.h (struct x_output): New member, toolbar_detached.
4906
4907 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
4908 38.
4909 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
4910 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
4911 (xg_create_tool_bar): Initialize toolbar_detached.
4912 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
4913 toolbar_detached is zero.
4914
4915 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4916
4917 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
4918 gtk_menu_popup if not for_click, so callbacks for the menu are called.
4919
4920 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
4921 (xg_tool_bar_callback, xg_tool_bar_help_callback)
4922 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
4923
4924 * xselect.c (x_get_foreign_selection, x_fill_property_data)
4925 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
4926 XFLOAT_DATA to get extract number from Lisp object.
4927
4928 2005-01-07 Kim F. Storm <storm@cua.dk>
4929
4930 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
4931 Set stop_charpos to current charpos instead of 0.
4932
4933 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
4934
4935 * xdisp.c (Fformat_mode_line): First arg now required.
4936
4937 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4938
4939 * macterm.c (XLoadQueryFont): Correctly handle 0 size
4940 font widths that are returned from some Japanese fonts.
4941
4942 2005-01-06 Kim F. Storm <storm@cua.dk>
4943
4944 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
4945 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
4946 (destroy_fringe_bitmap): Set fringe_faces element to nil.
4947 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
4948 fringe_faces array and init elements to nil.
4949 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
4950 non-persistent face id.
4951 (mark_fringe_data): New function for GC.
4952
4953 * alloc.c (mark_fringe_data): Declare extern.
4954 (Fgarbage_collect): Call mark_fringe_data.
4955
4956 * alloc.c (overrun_check_free): Invalidate freed memory if
4957 XMALLOC_CLEAR_FREE_MEMORY is defined.
4958
4959 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4960
4961 * macfns.c: Include sys/param.h.
4962 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
4963 and function.
4964 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
4965 of filename string. Set event callback function when creating
4966 dialog boxes. Add code conversions for filenames. Don't dispose
4967 of apple event descriptor record if failed to create it.
4968
4969 * macterm.c: Include sys/param.h.
4970 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
4971 kEventWindowUpdate.
4972 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
4973 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
4974 of FSSpec from apple event descriptor record.
4975 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
4976 size of filename string.
4977 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
4978 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
4979 file dialog is in action.
4980 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
4981 Reject only when there are no filename items. Set background color
4982 before (un)highlighting the window below the dragged items.
4983 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
4984
4985 2005-01-05 Romain Francoise <romain@orebokech.com>
4986
4987 * term.c (encode_terminal_code): Fix buffer size computation.
4988
4989 2005-01-04 Richard M. Stallman <rms@gnu.org>
4990
4991 * xdisp.c (Fformat_mode_line): Doc fix.
4992
4993 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
4994
4995 * alloc.c (refill_memory_reserve): Move.
4996 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
4997 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
4998
4999 2005-01-03 Richard M. Stallman <rms@gnu.org>
5000
5001 * window.c (window_scroll_pixel_based): Don't correct preserve_y
5002 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
5003
5004 2005-01-03 Jason Rumney <jasonr@gnu.org>
5005
5006 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
5007 fontp->space_width to FONT_WIDTH so they are valid.
5008
5009 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
5010 average width. Set fontp->average_width and fontp->space_width to
5011 their appropriate values.
5012
5013 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
5014 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
5015 fontp->space_width.
5016
5017 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5018
5019 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
5020 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
5021 metrics for max and min bounds.
5022 (x_load_font): Correctly calculate average font width metrics.
5023
5024 2005-01-02 Richard M. Stallman <rms@gnu.org>
5025
5026 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
5027
5028 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5029
5030 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
5031
5032 2004-12-31 Richard M. Stallman <rms@gnu.org>
5033
5034 * xdisp.c (setup_for_ellipsis, get_next_display_element):
5035 Set it->ellipsis_p to 1 or 0.
5036 (display_line): Record whether row ends in mid-ellipsis.
5037 (set_cursor_from_row): If ends in ellipsis, find start of it.
5038 (cursor_row_p): If PT's at the end of the ellipsis the row
5039 ends within, don't display cursor on this row.
5040
5041 * dispextern.h (struct it): New element ellipsis_p.
5042 (struct glyph_row): New element ends_in_ellipsis_p.
5043
5044 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
5045 position if we're reading from something other than the buffer.
5046
5047 * window.c (window_scroll_pixel_based): Only look at
5048 Vscroll_preserve_screen_position if the old PT can't be kept.
5049 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
5050
5051 2004-12-30 Kim F. Storm <storm@cua.dk>
5052
5053 * xdisp.c (get_line_height_property): New function extracted from
5054 original calc_line_height_property.
5055 (calc_line_height_property): Rework. Handle t and (nil . ratio).
5056 (x_produce_glyphs): Use them to handle line-height and
5057 line-spacing according to new height spec.
5058 (Qtotal): Remove.
5059 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
5060
5061 2004-12-30 Kenichi Handa <handa@m17n.org>
5062
5063 * fileio.c (Finsert_file_contents): Don't use
5064 current_buffer->buffer_file_coding_system even if REPLACE is
5065 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
5066
5067 * fontset.h (struct font_info): New members space_width and
5068 average_width.
5069
5070 * frame.h (struct frame): New member space_width.
5071 (FRAME_SPACE_WIDTH): New macro.
5072
5073 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
5074
5075 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
5076 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
5077 fontp->space_width.
5078 (x_load_font): Calculate fontp->space_width and fontp->average_width.
5079 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
5080
5081 * xdisp.c (x_produce_glyphs): Calculate tab width by
5082 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
5083
5084 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
5085
5086 * macterm.c (SelectionRange): Add Xcode position apple event struct.
5087 (do_ae_open_documents): Handle Xcode-style file position open events.
5088
5089 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
5090
5091 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
5092
5093 2004-12-29 Richard M. Stallman <rms@gnu.org>
5094
5095 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
5096
5097 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5098
5099 * macfns.c (install_window_handler): Modify extern to return OSErr
5100 value.
5101 (mac_window): Handle return value of install_window_handler.
5102
5103 * macterm.c (reflect_byte): Remove function.
5104 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
5105 Lookup table instead.
5106 (mac_do_font_lists): Simplify calculation of the longest
5107 nonspecial string.
5108 (init_mac_drag_n_drop): Remove function and declaration.
5109 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
5110 init_mac_drag_n_drop.
5111 (mac_do_track_drag): New function and declaration.
5112 (install_window_handler): Return OSErr value.
5113 (install_window_handler) [TARGET_API_MAC_CARBON]:
5114 Register handlers for tracking/receiving drag-and-drop items.
5115 (do_ae_open_documents): Generate unibyte strings for filenames.
5116 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
5117 Reject only non-filename items. Set event modifiers, and return value.
5118
5119 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5120
5121 * coding.c (decode_coding): Fix previous change.
5122
5123 2004-12-28 Richard M. Stallman <rms@gnu.org>
5124
5125 * xdisp.c (back_to_previous_visible_line_start):
5126 Don't call handle_display_prop.
5127
5128 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5129
5130 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
5131 (decode_coding_emacs_mule, encode_coding_emacs_mule)
5132 (decode_coding_iso2022, encode_designation_at_bol)
5133 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
5134 (decode_coding): Constify arguments and local vars.
5135
5136 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5137
5138 * xmenu.c (popup_get_selection): Only pop down dialogs
5139 on C-g and Escape.
5140 (popup_get_selection): Remove parameter down_on_keypress.
5141 (create_and_show_popup_menu, create_and_show_dialog):
5142 Remove parameter down_on_keypress to popup_get_selection.
5143
5144 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5145
5146 * dispextern.h: Change HAVE_CARBON to MAC_OS.
5147 (struct glyph_string): Likewise.
5148
5149 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
5150 mac_initialize.
5151
5152 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
5153 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
5154
5155 * fns.c (vector): Change MAC_OSX to MAC_OS.
5156
5157 * frame.c (x_set_frame_parameters, x_report_frame_params)
5158 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
5159 (x_set_border_width, Vdefault_frame_scroll_bars):
5160 Change HAVE_CARBON to MAC_OS.
5161
5162 * image.c [MAC_OS]: Include sys/stat.h.
5163 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
5164 QuickTimeComponents.h.
5165
5166 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
5167 [!MAC_OSX] (select): Use mac_wait_next_event.
5168 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
5169 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
5170 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5171 (mac_clear_font_name_table): Add extern.
5172 (Fmac_clear_font_name_table): New defun.
5173 (syms_of_mac): Defsubr it.
5174 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
5175 [MAC_OSX] (select_and_poll_event): New function.
5176 [MAC_OSX] (sys_select): Use it.
5177 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
5178 [MAC_OSX && SELECT_USE_CFSOCKET]
5179 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
5180 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
5181 RunLoop for simultaneously monitoring two kinds of inputs, window
5182 events and process outputs, without periodically polling.
5183
5184 * macfns.c (mac_initialized): Remove extern.
5185 (stricmp): Put in #if 0. All callers changed to use xstricmp in
5186 xfaces.c.
5187 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
5188 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
5189 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
5190 (mac_get_rdb_resource): New function (from w32reg.c).
5191 (x_get_string_resource): Use it.
5192 (install_window_handler): Add extern.
5193 (mac_window): New function.
5194 (Fx_create_frame): Use it instead of make_mac_frame.
5195 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
5196 (Fx_open_connection, Fx_close_connection): New defuns.
5197 (syms_of_macfns): Defsubr them.
5198 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
5199 Add kWindowNoUpdatesAttribute to the window attribute.
5200 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
5201 (x_create_tip_frame): Don't call ShowWindow.
5202 (Fx_show_tip): Call ShowWindow.
5203 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
5204 TARGET_API_MAC_CARBON'.
5205 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
5206 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
5207
5208 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
5209 (Window): Typedef to WindowPtr and move outside `#if
5210 TARGET_API_MAC_CARBON'.
5211 (XSizeHints): New struct.
5212
5213 * macterm.c (x_update_begin, x_update_end)
5214 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
5215 frame.
5216 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5217 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
5218 (construct_mouse_click): Put in #if 0.
5219 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
5220 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
5221 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5222 (activate_scroll_bars, deactivate_scroll_bars)
5223 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
5224 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
5225 if the position is neither user-specified nor program-specified.
5226 (x_free_frame_resources): Free size_hints.
5227 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
5228 (mac_clear_font_name_table): New function.
5229 (mac_do_list_fonts): Initialize font_name_table if needed.
5230 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
5231 around mac_do_list_fonts.
5232 (mac_unload_font): New function.
5233 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
5234 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
5235 and definitions with #if TARGET_API_MAC_CARBON.
5236 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
5237 (install_window_handler): Add decl.
5238 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
5239 window. Use UpdateControls. Get the rectangle that should be
5240 updated and restrict the target of expose_frame to it.
5241 (do_grow_window): Set minimum height/width according to size_hints.
5242 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
5243 (do_zoom_window): Don't use x_set_window_size.
5244 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
5245 (install_window_handler): New function.
5246 [!USE_CARBON_EVENTS] (mouse_region): New variable.
5247 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
5248 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
5249 GetEventDispatcherTarget inside BLOCK_INPUT.
5250 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
5251 Update mouse_region when mouse is moved.
5252 (make_mac_frame): Remove.
5253 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
5254 Initialize mouse pointer shapes. Change values of f->left_pos and
5255 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
5256 Don't call ShowWindow.
5257 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
5258 Vinvocation_name and Vsystem_name.
5259 (mac_make_rdb): New function (from w32term.c).
5260 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
5261 already been opened. Don't pass argument to
5262 mac_initialize_display_info. Don't set dpyinfo->height/width.
5263 Add entries to x_display_list and x_display_name_list.
5264 (x_delete_display): New function.
5265 (mac_initialize): Don't call mac_initialize_display_info.
5266 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
5267
5268 * macterm.h (check_mac): Add extern.
5269 (struct mac_output): New member size_hints.
5270 (FRAME_SIZE_HINTS): New macro.
5271 (mac_unload_font): Add extern.
5272
5273 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
5274
5275 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
5276
5277 2004-12-27 Richard M. Stallman <rms@gnu.org>
5278
5279 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
5280 (syms_of_buffer): Don't defsubr it.
5281
5282 * process.c (list_processes_1): Set undo_list instead
5283 of calling Fbuffer_disable_undo.
5284
5285 * xdisp.c (single_display_spec_string_p): Rename from
5286 single_display_prop_string_p.
5287 (single_display_spec_intangible_p): Rename from
5288 single_display_prop_intangible_p.
5289 (handle_single_display_spec): Rename from handle_single_display_prop.
5290 Rewritten to be easier to understand.
5291
5292 Change in load-history format. Functions now get (defun . NAME),
5293 and variables get just NAME.
5294
5295 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5296
5297 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5298 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
5299 (Qdefvar): Var deleted.
5300 (syms_of_eval): Don't initialze it.
5301
5302 * lread.c (syms_of_lread) <load-history>: Doc fix.
5303
5304 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5305
5306 * xmenu.c (popup_get_selection): Pop down on C-g.
5307 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
5308 pops down menu on C-g.
5309 (xdialog_show): If dialog popped down and no button in the dialog was
5310 pushed, call Fsignal to quit.
5311 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
5312 Fsignal to quit.
5313
5314 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
5315
5316 * gtkutil.c (xg_initialize): Install bindings for C-g so that
5317 dialogs and menus pop down.
5318
5319 2004-12-27 Kenichi Handa <handa@m17n.org>
5320
5321 * coding.c (code_convert_region): Fix calculation of `ratio'.
5322
5323 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5324
5325 * gtkutil.c (update_frame_tool_bar): Make the value of
5326 tool-bar-button-margin control margins of images in tool bar.
5327
5328 * alloc.c (check_depth): New variable.
5329 (overrun_check_malloc, overrun_check_realloc): Only add
5330 overhead and write check pattern if check_depth is 1 (to handle
5331 recursive calls). Increase/decrease check_depth in entry/exit.
5332 (overrun_check_free): Only check for overhead if check_depth is 1.
5333 Increase/decrease check_depth in entry/exit.
5334
5335 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5336
5337 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
5338 before touching input_available_clear_time, to avoid accessing it
5339 from multiple threads.
5340
5341 2004-12-23 Jason Rumney <jasonr@gnu.org>
5342
5343 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
5344 of JPEG library.
5345
5346 2004-12-22 Richard M. Stallman <rms@gnu.org>
5347
5348 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
5349
5350 * lisp.h (Vundo_outer_limit): Fix decl.
5351
5352 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
5353 Uses changed.
5354 (syms_of_undo): Initialize appropriately.
5355 (truncate_undo_list): If it's nil, there's no limit.
5356
5357 2004-12-22 Kenichi Handa <handa@m17n.org>
5358
5359 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
5360
5361 2004-12-21 Richard M. Stallman <rms@gnu.org>
5362
5363 * eval.c (unwind_to_catch): Clear immediate_quit.
5364
5365 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
5366 specially as `\ ' and `\-'.
5367
5368 * keyboard.c (kbd_buffer_store_event_hold):
5369 In the code for while-no-input, handle immediate_quit.
5370
5371 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
5372 Call that at the very start.
5373 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
5374 (syms_of_alloc): Don't define undo-limit,
5375 undo-strong-limit and undo-outer-limit here.
5376
5377 * undo.c (truncate_undo_list): Return void.
5378 Take just one argument, the buffer.
5379 Make it current, and inhibit recursive GC.
5380 Access and update the undo list directly; return void.
5381 Refer to the undo...limit variables directly.
5382 Test undo_outer_limit only after counting the whole current command.
5383 When it's exceeded, call the function in undo-outer-limit-function.
5384 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
5385 (Vundo_outer_limit_function): New variable.
5386 (syms_of_undo): Define undo-limit, undo-strong-limit
5387 and undo-outer-limit here, and undo-outer-limit-function.
5388 Doc fixes.
5389
5390 * lisp.h (truncate_undo_list): Update decl.
5391
5392 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
5393
5394 * fileio.c (Fread_file_name): Delete duplicates in
5395 file-name-history when history_delete_duplicates is true.
5396
5397 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5398
5399 * macterm.c (mac_do_list_fonts): Fix memory leak
5400
5401 2004-12-20 Richard M. Stallman <rms@gnu.org>
5402
5403 * regex.c (re_match_2_internal) <symend, wordend>:
5404 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
5405
5406 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5407
5408 * macterm.c (endif, x_font_name_to_mac_font_name):
5409 Use maccentraleurroman instead of maccentraleuropean
5410 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
5411 quickly finding a specific font without needing regexps.
5412
5413 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5414
5415 * syssignal.h: Declare main_thread.
5416 (SIGNAL_THREAD_CHECK): New macro.
5417
5418 * keyboard.c (input_available_signal): Move thread checking code
5419 to macro SIGNAL_THREAD_CHECK and call that macro.
5420 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
5421
5422 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
5423
5424 * emacs.c: Define main_thread.
5425 (main): Initialize main_thread.
5426 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
5427 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
5428
5429 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
5430
5431 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
5432
5433 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
5434
5435 * process.c (send_process_trap, sigchld_handler):
5436 Call SIGNAL_THREAD_CHECK.
5437
5438 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
5439
5440 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
5441
5442 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
5443 returning when xg_ignore_gtk_scrollbar is true.
5444
5445 2004-12-14 Kim F. Storm <storm@cua.dk>
5446
5447 * keyboard.c (read_char): Save and restore echo_string when
5448 handling input method.
5449
5450 2004-12-13 Richard M. Stallman <rms@gnu.org>
5451
5452 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
5453
5454 * keyboard.c (Vthrow_on_input): New variable.
5455 (syms_of_keyboard): Defvar and initialize it.
5456 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
5457
5458 * lisp.h (QUIT): Check for Vthrow_on_input.
5459 (Vthrow_on_input): Declare it.
5460
5461 2004-12-13 Kim F. Storm <storm@cua.dk>
5462
5463 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
5464 vector.
5465
5466 2004-12-12 Richard M. Stallman <rms@gnu.org>
5467
5468 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
5469
5470 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
5471 (Ftry_completion): Really use outer `zero'; eliminate inner one.
5472
5473 2004-12-12 Kenichi Handa <handa@m17n.org>
5474
5475 * term.c (encode_terminal_code): Fix previous change.
5476
5477 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
5478
5479 * keyboard.c (handle_async_input): Remove pthread mutex handling.
5480 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
5481
5482 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
5483 in macro arguments.
5484
5485 * minibuf.c (Ftry_completion, Fall_completions): Don't use
5486 XFASTINT blindly.
5487
5488 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5489
5490 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5491
5492 * w32term.c (x_calc_absolute_position): Remove calculation of
5493 difference between inner and outer window. Don't subtract difference
5494 for left and top calculations.
5495
5496 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5497 for left and top calculations. Remove call to x_real_positions.
5498 [Bug report by Drew Adams in November]
5499 (x_check_expected_move): Do not set change_gravity to 1 when calling
5500 x_set_offset.
5501
5502 2004-12-08 Richard M. Stallman <rms@gnu.org>
5503
5504 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5505 control chars and escaped octal codes.
5506 (Qescape_glyph): New variable.
5507 (syms_of_xdisp): Initialize it.
5508 (escape_glyph_face): New variable.
5509 (redisplay_window): Initialize it.
5510
5511 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5512
5513 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5514 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5515
5516 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5517
5518 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5519 reset_malloc_hooks.
5520
5521 * keyboard.c (handle_async_input, input_available_signal):
5522 Add ! defined (SYSTEM_MALLOC) around thread code.
5523
5524 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5525
5526 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5527
5528 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5529
5530 * config.in: Regenerate.
5531
5532 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5533
5534 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5535 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5536 if not given by a mouse click to correspond with x-popup-menu
5537 documentation.
5538
5539 * config.in: Regenerate.
5540
5541 * gtkutil.c: Include signal.h and syssignal.h.
5542 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5543
5544 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5545 new variables main_thread and alloc_mutex,
5546 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5547 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
5548 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
5549 (UN)BLOCK_INPUT.
5550 (emacs_blocked_free, emacs_blocked_malloc)
5551 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
5552 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
5553 (reset_malloc_hooks): New function.
5554
5555 * lisp.h: Declare reset_malloc_hooks.
5556
5557 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
5558
5559 * keyboard.c: Conditionally include pthread.h
5560 (handle_async_input, input_available_signalt): If not in the main
5561 thread, block signal, send signal to main thread and return.
5562
5563 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
5564 Set current folder in file chooser if default_filename is a directory.
5565
5566 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
5567
5568 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
5569 Remove redundant correctness checks.
5570 (regex_compile): Fix up error codes for \{..\} expressions.
5571
5572 2004-12-05 Richard M. Stallman <rms@gnu.org>
5573
5574 * regex.c (regex_compile): Fix end-of-pattern case for space.
5575
5576 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5577
5578 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
5579 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
5580 crashes with invalid characters.
5581 * macmenu.c (add_menu_item): Use it.
5582 * image.c (image_load_quartz2d): Likewise.
5583 * macfns.c (x_set_name, x_set_title): Likewise.
5584 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
5585 creating them each time for labels.
5586
5587 2004-12-02 Richard M. Stallman <rms@gnu.org>
5588
5589 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
5590 don't use it here.
5591
5592 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
5593 (interactive_p): Skip Scalled_interactively_p frames
5594 like Sinteractive_p frames.
5595 (unwind_to_catch): Clear handling_signal.
5596
5597 * data.c (Fmake_variable_buffer_local): Doc fix.
5598 (Fmake_local_variable): Doc fix.
5599
5600 * insdel.c (insert_from_string_before_markers)
5601 (insert_from_string): Don't modify buffer on empty insertion.
5602
5603 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
5604
5605 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5606
5607 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
5608 menu text as UTF8 fails.
5609
5610 2004-12-01 Kim F. Storm <storm@cua.dk>
5611
5612 * alloc.c: Add commentary for last change.
5613 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
5614 sizeof(size_t) != 4.
5615 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
5616 Use them. Also clear header and trailer of freed memory.
5617 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
5618 (string_overrun_cookie): Rename from string_overrun_pattern.
5619 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
5620
5621 2004-12-01 Andreas Schwab <schwab@suse.de>
5622
5623 * lisp.h: Declare string_to_multibyte.
5624
5625 2004-12-01 Kenichi Handa <handa@m17n.org>
5626
5627 * w32console.c (w32con_write_glyphs): Decide coding here.
5628 Adjusted for the change of encode_terminal_code.
5629
5630 * term.c (encode_terminal_code): Don't make it "static".
5631
5632 2004-11-30 Kenichi Handa <handa@m17n.org>
5633
5634 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
5635 (encode_terminal_code): Argument changed. Encode all
5636 characters at once, and return a pointer to the result of encoding.
5637 (write_glyphs): Decide coding here. Adjusted for the above change.
5638 (insert_glyphs): Likewise.
5639 (term_init): Initialize encode_terminal_bufsize to 0.
5640
5641 * coding.c (Vcode_conversion_workbuf_name): New variable.
5642 (syms_of_coding): Initialize and staticpro it.
5643 (set_conversion_work_buffer): New function.
5644 (run_pre_post_conversion_on_str): Use it.
5645 (run_pre_write_conversin_on_c_str): New function.
5646
5647 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
5648
5649 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5650
5651 * keyboard.c: Don't undef SIGIO
5652 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
5653 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
5654 (macfns.o): Don't depend on ccl.h.
5655 * macfns.c (mac_frame_parm_handlers): Set handlers for
5656 Qleft_fringe and Qright_fringe.
5657 * macterm.c (mac_fill_rectangle_to_pixmap)
5658 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
5659 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
5660 Put in #if 0.
5661 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
5662 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
5663 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
5664 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5665 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
5666 XDrawImageString. Always draw background and foreground separately.
5667 (x_draw_image_foreground): Use clipping instead of computing the
5668 intersection rectangle.
5669 (x_draw_image_glyph_string): Don't draw an image with mask to a
5670 pixmap.
5671 (x_redisplay_interface): Set flush_display_optional member to 0.
5672 (XTread_socket): Correctly reset the TEConverter
5673 object.
5674
5675 2004-11-30 Kim F. Storm <storm@cua.dk>
5676
5677 * lisp.h: New defines to enable buffer overrun checking.
5678 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
5679 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
5680
5681 * alloc.c: Add more checks for buffer overruns.
5682 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
5683 xmalloc_overrun_check_trailer, overrun_check_malloc)
5684 overrun_check_realloc, overrun_check_free): Add.
5685 (GC_STRING_EXTRA, string_overrun_pattern): Add.
5686 (check_sblock, allocate_string_data, compact_small_strings):
5687 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
5688 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
5689 (check_string_free_list): Add.
5690 (allocate_string, sweep_strings): Call check_string_free_list.
5691
5692 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
5693 XMALLOC_OVERRUN_CHECK to avoid crash during load.
5694
5695 2004-11-29 Kim F. Storm <storm@cua.dk>
5696
5697 * fns.c (concat): Use SAFE_ALLOCA.
5698
5699 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
5700
5701 * sysdep.c (emacs_write): Don't use QUIT.
5702
5703 2004-11-29 Kenichi Handa <handa@m17n.org>
5704
5705 * buffer.c (init_buffer): Set current_buffer->directory to a
5706 multibyte string made by string_to_multibyte.
5707
5708 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
5709
5710 2004-11-27 Andreas Schwab <schwab@suse.de>
5711
5712 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
5713
5714 * s/gnu-linux.h: Enable no-op gcpros on ia64.
5715 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
5716
5717 * filelock.c (lock_file_1): Call get_boot_time early.
5718 Increase buffer size.
5719
5720 2004-11-27 Eli Zaretskii <eliz@gnu.org>
5721
5722 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
5723 is not defined.
5724
5725 2004-11-27 Kim F. Storm <storm@cua.dk>
5726
5727 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
5728 marker out of doc string.
5729
5730 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
5731
5732 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
5733 which was not mentioned in the log.
5734
5735 2004-11-26 Kim F. Storm <storm@cua.dk>
5736
5737 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
5738 angle bitmaps at top/bottom line.
5739
5740 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
5741 set it when it->method is set to next_element_from_display_vector.
5742 (setup_for_ellipsis): Add LEN argument. Callers changed.
5743 Set it->saved_face_id.
5744 (get_next_display_element): Use loop instead of recursion.
5745 Set it->saved_face_id. Combine duplicate code for ctr chars.
5746 (next_element_from_display_vector): Do not set it->saved_face_id.
5747 (next_element_from_ellipsis): Use setup_for_ellipsis.
5748
5749 2004-11-26 Eli Zaretskii <eliz@gnu.org>
5750
5751 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
5752 prevent compiler warnings.
5753
5754 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
5755
5756 * keyboard.c (command_loop_1): Print a message describing the key
5757 the user just pressed when this key has no binding.
5758
5759 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
5760 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
5761
5762 * lread.c (readchar): Check QUIT when `getc' is interrupted.
5763
5764 2004-11-24 Richard M. Stallman <rms@gnu.org>
5765
5766 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
5767
5768 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
5769
5770 2004-11-24 Kim F. Storm <storm@cua.dk>
5771
5772 * xdisp.c (move_it_in_display_line_to, display_line):
5773 Restore saved_face_id also when truncate-lines or hscrolled.
5774
5775 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5776
5777 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
5778 x-use-old-gtk-file-dialog.
5779
5780 * xfns.c: Define x_use_old_gtk_file_dialog.
5781 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
5782 outside ifdef USE_GTK.
5783
5784 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
5785
5786 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
5787 Don't use XFASTINT blindly.
5788
5789 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
5790
5791 * indent.c (skip_invisible): Avoid non-idempotent side-effects
5792 in macro arguments.
5793
5794 * keymap.c (Flookup_key): Check INTEGERP before XINT.
5795
5796 * lread.c (oblookup): Don't use XFASTINT blindly.
5797
5798 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
5799 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
5800
5801 2004-11-23 Kim F. Storm <storm@cua.dk>
5802
5803 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
5804 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
5805
5806 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
5807 signal_p is zero and face name is unknown.
5808 (Fx_list_fonts): Don't signal error in lookup_named_face.
5809 (Fface_font): Signal error in lookup_named_face.
5810 (ascii_face_of_lisp_face): Likewise.
5811
5812 * dispextern.h (lookup_named_face): Fix prototype.
5813
5814 * xdisp.c (handle_single_display_prop): Don't signal error in
5815 lookup_named_face for unknown fringe face name.
5816 (highlight_trailing_whitespace): Don't signal error in
5817 lookup_named_face if trailing-whitespace face unknown.
5818 (calc_line_height_property): Don't signal error in
5819 lookup_named_face if specified face name is unknown.
5820
5821 * fringe.c (update_window_fringes): Show top row indicator if
5822 window has header-line. Don't show arrow at bob and eob
5823 if the boundary indicators are not used.
5824 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
5825
5826 * window.c (set_window_buffer): Clear display_error_modiff.
5827
5828 2004-11-22 Kim F. Storm <storm@cua.dk>
5829
5830 * fringe.c (update_window_fringes): Provide sensible fall-back
5831 value for non-nil indicate-buffer-boundaries setting.
5832
5833 2004-11-22 Markus Rost <rost@ias.edu>
5834
5835 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
5836
5837 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
5838
5839 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
5840
5841 2004-11-21 Kim F. Storm <storm@cua.dk>
5842
5843 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
5844
5845 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
5846 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5847
5848 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
5849 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5850
5851 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
5852 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5853
5854 * xdisp.c (move_it_in_display_line_to, display_line):
5855 Restore saved_face_id if overflow-newline-into-fringe is enabled and
5856 line is continued before or in middle of element from display vector.
5857
5858 * indent.c (Fvertical_motion): Fix last change. Use another
5859 method to detect if iterator moved too far ahead after reseat.
5860
5861 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
5862 expand matrix width for overflow in zero-width area.
5863 (append_glyph, append_composite_glyph, produce_image_glyph)
5864 (append_stretch_glyph): Use it to avoid loop in redisplay.
5865 (note_mode_line_or_margin_highlight): Don't let help-echo from
5866 string override help-echo from image map.
5867
5868 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
5869
5870 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
5871 * callint.c (Fcall_interactively): Ditto.
5872
5873 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
5874
5875 * minibuf.c (Fminibuffer_complete_and_exit):
5876 Fixup the case of the completed value, for case-indep completion.
5877
5878 2004-11-20 Richard M. Stallman <rms@gnu.org>
5879
5880 * lisp.h (Fread_from_minibuffer): Add arg in decl.
5881
5882 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
5883 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
5884
5885 * search.c (Vsearch_spaces_regexp):
5886 Rename from Vsearch_whitespace_regexp. All uses changed.
5887
5888 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
5889
5890 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
5891
5892 2004-11-19 Richard M. Stallman <rms@gnu.org>
5893
5894 * search.c (Vsearch_whitespace_regexp): New variable.
5895 (syms_of_search): Defvar it.
5896 (compile_pattern_1): Call re_set_whitespace_regexp with it.
5897 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
5898 is non-nil.
5899 (struct regexp_cache): New element whitespace_regexp.
5900 (syms_of_search): Initialize whitespace_regexp elements.
5901 (compile_pattern): Compare whitespace_regexp elements.
5902 (compile_pattern_1): Set whitespace_regexp elements.
5903
5904 * regex.c (regex_compile): Substitute whitespace_regexp
5905 for spaces, if it is nonzero.
5906 (whitespace_regexp): New variable.
5907 (re_set_whitespace_regexp): New function.
5908
5909 2004-11-19 Kim F. Storm <storm@cua.dk>
5910
5911 * indent.c (Fvertical_motion): Fix last change.
5912
5913 2004-11-18 Kim F. Storm <storm@cua.dk>
5914
5915 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
5916 Instead, move back again if reseating moves too far ahead.
5917
5918 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
5919
5920 * xdisp.c (message3): Call clear_message.
5921
5922 2004-11-17 Kim F. Storm <storm@cua.dk>
5923
5924 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
5925
5926 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5927
5928 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
5929
5930 * xmenu.c (x_menu_in_use): Remove.
5931 (x_menu_set_in_use): Also set popup_activated_flag.
5932
5933 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5934 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
5935
5936 * xterm.h (x_menu_in_use): Remove.
5937
5938 2004-11-16 Richard M. Stallman <rms@gnu.org>
5939
5940 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
5941 Use map-keymap-internal to implement that.
5942
5943 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
5944
5945 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
5946
5947 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
5948 a window before using XWINDOW.
5949
5950 * window.c (make_window, Fselect_window, make_dummy_parent)
5951 (save_window_save):
5952 * frame.c (make_frame):
5953 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
5954
5955 * lisp.h (NILP): Use EQ rather than XFASTINT.
5956
5957 2004-11-16 Kim F. Storm <storm@cua.dk>
5958
5959 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
5960
5961 * indent.c (Fvertical_motion): Fix last change. Only reseat when
5962 moving backwards.
5963
5964 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
5965
5966 * dispextern.h: Extern reseat_at_previous_visible_line_start.
5967
5968 2004-11-16 Kenichi Handa <handa@m17n.org>
5969
5970 * xdisp.c (display_mode_element): Fix previous change (calculate
5971 end position of substring to display correctly).
5972
5973 2004-11-16 Kim F. Storm <storm@cua.dk>
5974
5975 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
5976 Reported by Andrew M. Scott.
5977
5978 2004-11-15 Kim F. Storm <storm@cua.dk>
5979
5980 * fns.c (Fsafe_plist_get): New defun.
5981 (syms_of_fns): Defsubr it.
5982
5983 * lisp.h (Fsafe_plist_get): Add EXFUN.
5984
5985 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
5986 Use Fsafe_plist_get.
5987 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5988 Fix image map element parsing. Use Fsafe_plist_get.
5989
5990 2004-11-15 Richard M. Stallman <rms@gnu.org>
5991
5992 * xdisp.c (get_next_display_element): Fix previous change.
5993
5994 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5995
5996 * window.c (shrink_windows): Handle special case of one window left
5997 when trying to shrink the final reminder. Grow windows if
5998 total_removed is less than total_shrink.
5999
6000 * xmenu.c (pop_down_menu): Remove global variable current_menu,
6001 extract pointer from arg with XSAVE_VALUE.
6002 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
6003 Construct arg to record_unwind_protect with make_save_value.
6004
6005 2004-11-13 Richard M. Stallman <rms@gnu.org>
6006
6007 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
6008 (get_next_display_element): Fix previous change to apply only to \n.
6009
6010 * indent.c (Fvertical_motion): Scan to PT from start of line to
6011 make iterator consistent.
6012
6013 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6014
6015 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6016
6017 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
6018
6019 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
6020 Record unwind with clean_up_file_dialog.
6021
6022 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
6023 Declare.
6024
6025 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
6026
6027 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6028
6029 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6030 (xg_file_sel_destroy): Remove.
6031 (xg_file_response_cb, pop_down_file_dialog)
6032 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
6033 New functions.
6034 (xg_get_file_with_chooser, xg_get_file_with_selection):
6035 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
6036 Move common code to xg_get_file_name. Return widget created.
6037 (xg_get_file_name): Set name, transient for, modal and destroy
6038 with parent here. Connect response signal to xg_file_response_cb,
6039 connect delete-event to gtk_true. Record pop_down_file_dialog
6040 for unwind. Do event loop and call x_menu_wait_for_event in loop.
6041 (xg_create_widget): Make dialogs modal.
6042
6043 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
6044 Lisp_Object.
6045 (popup_get_selection): Move unwind protect ...
6046 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
6047 Move destroy of widget to pop_down_menu.
6048 (popup_widget_loop): Move unwind protect ...
6049 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
6050 Move destroy of widget to pop_down_menu.
6051 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6052 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
6053 x_mouse_leave and grabbed = 0 to pop_down_menu.
6054
6055 2004-11-13 Kim F. Storm <storm@cua.dk>
6056
6057 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
6058 (syms_of_xdisp): DEFVAR_BOOL it.
6059 (make_cursor_line_fully_visible, try_cursor_movement)
6060 (try_window_id): Use it.
6061
6062 2004-11-12 Kim F. Storm <storm@cua.dk>
6063
6064 * dispextern.h (struct glyph_row): New member extra_line_spacing.
6065 (struct it): New member max_extra_line_spacing.
6066 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
6067 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
6068 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
6069 part of last line is only extra line spacing (so the text on the
6070 line is fully visible). Use helper macros.
6071 Add W arg (to use them). All callers changed.
6072 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
6073 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
6074
6075 * window.c (window_scroll_pixel_based, Frecenter):
6076 Use move_it_vertically_backward directly.
6077 (Frecenter): Fix calculation of new start pos for negative arg.
6078 Before, the new start pos was sometimes chosen too far back, so
6079 the last line became only partially visible, and thus would be
6080 either only semi-visible or automatically scrolled to the middle
6081 of the window by redisplay.
6082
6083 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
6084 (move_it_vertically_backward): Don't recure to move further back.
6085 (move_it_vertically): Remove superfluous condition.
6086 (move_it_by_lines): Clear last_height when moved 0 lines.
6087 (resize_mini_window): Use it.max_extra_line_spacing.
6088 (display_tool_bar_line): Clear row->extra_line_spacing.
6089 (try_scrolling): Use move_it_vertically_backward directly.
6090 (redisplay_window): Likewise.
6091 (compute_line_metrics): Set row->extra_line_spacing.
6092 (display_line, display_string): Likewise.
6093 (x_produce_glyphs): Update it->max_extra_line_spacing.
6094
6095 * xmenu.c (pop_down_menu): Return nil.
6096
6097 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6098
6099 * xmenu.c (x_menu_wait_for_event): New function.
6100 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
6101 to handle timers.
6102 (popup_widget_loop): Add argument do_timers.
6103 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
6104 do_timers to popup_widget_loop.
6105 (xmenu_show): Call XMenuActivateSetWaitFunction so that
6106 x_menu_wait_for_event is called by XMenuActivate.
6107 (create_and_show_popup_menu): Pass 1 for do_timers to
6108 popup_get_selection.
6109 (pop_down_menu): New function.
6110 (popup_get_selection, popup_widget_loop): Unwind protect to
6111 pop_down_menu.
6112 (popup_widget_loop): Add argument widget.
6113 (create_and_show_popup_menu, create_and_show_dialog): Pass new
6114 argument widget to popup_widget_loop.
6115
6116 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
6117
6118 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
6119
6120 2004-11-09 Kim F. Storm <storm@cua.dk>
6121
6122 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
6123 Fix various comments referring to XEvents instead of input events.
6124 (x_queue_event): Fix format strings.
6125 (x_stop_queuing_selection_requests): Likewise.
6126
6127 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
6128 (pint2hrstr): Add extra braces to silence compiler.
6129
6130 * print.c (print_object): Fix format string.
6131
6132 * lread.c (read1): Fix next_char matching.
6133
6134 * lisp.h (Fdelete): Add EXFUN.
6135 (replace_range_2): Add prototype.
6136
6137 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
6138
6139 * intervals.h (NULL_INTERVAL_P): Add separate version when
6140 ENABLE_CHECKING is not defined to silence compiler.
6141 (compare_string_intervals): Add prototype.
6142
6143 * fringe.c (destroy_fringe_bitmap): Fix return type.
6144 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
6145
6146 * emacs.c (Fdump_emacs): Fix format string.
6147
6148 * doc.c: Include <ctype.h>.
6149 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
6150
6151 * data.c (store_symval_forwarding): Remove unused variables.
6152
6153 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
6154
6155 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6156
6157 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
6158 to ${OLDXMENU}.
6159
6160 2004-11-09 Kim F. Storm <storm@cua.dk>
6161
6162 * process.c (Fmake_network_process): Remove kludge for interrupted
6163 connects on BSD. If connect is interrupted, just close socket and
6164 start over rather than sleeping and retry with same socket.
6165
6166 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6167
6168 * .cvsignore: Add buildobj.lst.
6169
6170 * doc.c: New variable Vbuild_files.
6171 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
6172 file names from buildobj.lst. Only attach docstrings from files
6173 that are in Vbuild_files.
6174 (syms_of_doc): Defvar Vbuild_files.
6175
6176 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
6177 and w32*.o.
6178 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6179 (mostlyclean): Rm buildobj.lst
6180
6181 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
6182 is linked.
6183
6184 2004-11-09 Kim F. Storm <storm@cua.dk>
6185
6186 * fringe.c (update_window_fringes): Update fringe bitmaps if
6187 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
6188 also update previous row to get rid of misc. artifacts.
6189
6190 2004-11-08 Kim F. Storm <storm@cua.dk>
6191
6192 * xdisp.c (fast_find_position): Fix start pos if header line present.
6193 (note_mouse_highlight): Clear mouse face if we move out of text area.
6194
6195 2004-11-08 Eli Zaretskii <eliz@gnu.org>
6196
6197 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
6198 Don't include <sys/time.h> explicitly.
6199 Include <stdio.h> unconditionally, not just on MacOS.
6200
6201 2004-11-08 Kenichi Handa <handa@m17n.org>
6202
6203 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
6204 don't pay attention to '\' before '*'.
6205 (fontset_pattern_regexp): Change the meaning of the second arg.
6206 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
6207 (check_fontset_name): Try NAME as literal at first, and if it
6208 failes, try NAME as pattern.
6209
6210 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6211
6212 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
6213
6214 2004-11-07 Andreas Schwab <schwab@suse.de>
6215
6216 * lisp.h (Fmsdos_downcase_filename): Declare.
6217 * dired.c (Fmsdos_downcase_filename): Don't declare here.
6218 * fileio.c: Likewise.
6219
6220 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6221
6222 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
6223 comparisons with integers instead of Lisp_Object address.
6224 (Fmsdos_set_keyboard): Declare argument allkeys.
6225
6226 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
6227
6228 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
6229 int/Lisp_Object mixup.
6230
6231 * fileio.c: Ditto.
6232
6233 2004-11-06 Steven Tamm <steventamm@mac.com>
6234
6235 * editfns.c: Need to include sys/time.h before resource.h on darwin.
6236
6237 2004-11-06 Richard M. Stallman <rms@gnu.org>
6238
6239 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
6240
6241 * xfaces.c (merge_named_face): GCPRO the face_name in the
6242 named_merge_point struct that we make.
6243 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
6244
6245 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
6246 before deciding whether to inactivate mark.
6247
6248 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
6249
6250 * config.in: Regenerate (add HAVE_GETRUSAGE).
6251 * editfns.c (Fget_internal_run_time): New function.
6252 (syms_of_data): Defsubr it.
6253 * fns.c (sxhash): As far as possible, merge calculation of
6254 hash code for symbols and strings.
6255
6256 2004-11-06 Eli Zaretskii <eliz@gnu.org>
6257
6258 * frame.c (syms_of_frame): Fix the example in the doc string.
6259
6260 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6261
6262 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
6263
6264 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
6265 (create_and_show_dialog): Revert change from 2004-10-31.
6266
6267 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
6268
6269 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
6270
6271 2004-11-05 Kim F. Storm <storm@cua.dk>
6272
6273 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
6274
6275 * fileio.c (Ffile_modes): Doc fix.
6276 (auto_save_1): Check for Ffile_modes nil value.
6277
6278 2004-11-05 Kim F. Storm <storm@cua.dk>
6279
6280 * xselect.c (struct selection_event_queue, selection_queue)
6281 (x_queue_selection_requests, x_queue_event)
6282 (x_start_queuing_selection_requests)
6283 (x_stop_queuing_selection_requests): Add new queue for selection
6284 input events to replace previous XEvent queue in xterm.c.
6285 (queue_selection_requests_unwind): Adapt to new queue.
6286 (x_reply_selection_request): Adapt to new queue.
6287 Unexpect wait_object in case of x errors (memory leak).
6288 (x_handle_selection_request, x_handle_selection_clear): Make static.
6289 (x_handle_selection_event): New function. May queue selection events.
6290 (wait_for_property_change_unwind): Use save_value instead of cons.
6291 Clear property_change_reply_object.
6292 (wait_for_property_change): Abort if already waiting.
6293 Use save_value instead of cons for unwind data.
6294 (x_handle_property_notify): Skip events already arrived, but don't
6295 free them, as "arrived" field is checked by wait_for_property_change,
6296 and it will be freed by unwind or explicit unexpect_property_change.
6297 (x_get_foreign_selection): Add to new queue.
6298 (receive_incremental_selection): Don't unexpect wait_object when done
6299 as it has already been freed by previous wait_for_property_change.
6300
6301 * xterm.h (x_start_queuing_selection_requests)
6302 (x_stop_queuing_selection_requests, x_handle_selection_request)
6303 (x_handle_selection_clear): Remove prototypes.
6304 (x_handle_selection_event): Add prototype.
6305
6306 * xterm.c (handle_one_xevent): Don't queue X selection events
6307 here, it may be too late if we start queuing after we have already
6308 stored some selection events into the kbd buffer.
6309 (struct selection_event_queue, queue, x_queue_selection_requests)
6310 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
6311 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
6312 (x_catch_errors_unwind): Block input around final XSync.
6313
6314 * keyboard.h (kbd_buffer_unget_event): Add prototype.
6315
6316 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
6317 (kbd_buffer_unget_event): New function.
6318 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
6319 and use x_handle_selection_event.
6320 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
6321
6322 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6323
6324 * xselect.c (TRACE3): New debug macro.
6325 (x_reply_selection_request): Use it.
6326 (receive_incremental_selection): In call to TRACE0, the name of
6327 a symbol is in xname.
6328
6329 2004-11-05 Kim F. Storm <storm@cua.dk>
6330
6331 * fontset.c (fontset_pattern_regexp): Use unsigned char.
6332
6333 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6334
6335 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
6336
6337 * gtkutil.h (use_old_gtk_file_dialog): Declare.
6338
6339 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
6340 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
6341 * xfns.c (syms_of_xfns): ... to here.
6342
6343 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
6344 it doesn't start with /.
6345
6346 2004-11-04 Kenichi Handa <handa@m17n.org>
6347
6348 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
6349 treat it as a literal character.
6350
6351 2004-11-03 Kim F. Storm <storm@cua.dk>
6352
6353 * .gdbinit (ppt): New function.
6354
6355 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6356
6357 * xterm.c (x_window_to_scroll_bar): Only call
6358 xg_get_scroll_id_for_window if toolkit scroll bars are used.
6359
6360 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
6361 of save.
6362
6363 2004-11-02 Andreas Schwab <schwab@suse.de>
6364
6365 * window.c (Fscroll_right): Fix last change.
6366
6367 2004-11-02 Kim F. Storm <storm@cua.dk>
6368
6369 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
6370
6371 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6372
6373 * callproc.c (Fcall_process): Block input around vfork.
6374
6375 2004-11-02 Kim F. Storm <storm@cua.dk>
6376
6377 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
6378 (syms_of_eval): Defsubr it.
6379
6380 2004-11-02 Richard M. Stallman <rms@gnu.org>
6381
6382 * insdel.c (replace_range_2): New function.
6383
6384 * casefiddle.c (casify_region): Handle changes in byte-length
6385 using replace_range_2.
6386
6387 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
6388
6389 * xdisp.c (back_to_previous_visible_line_start):
6390 Subtract 1 from pos when checking previous newline for invisibility.
6391
6392 * window.c (window_scroll_pixel_based): Update preserve_y
6393 for header line if any.
6394 (Fscroll_left, Fscroll_right): Don't call interactive_p;
6395 use a new second argument instead.
6396
6397 * eval.c (Fcall_interactive_p): New function.
6398 (interactive_p): Don't test INTERACTIVE here.
6399 (Finteractive_p): Doc fix.
6400
6401 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
6402
6403 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6404
6405 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
6406 comparing font names.
6407
6408 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6409
6410 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
6411 Fx_file_dialog if only directories should be read.
6412
6413 * lisp.h: Fx_file_dialog takes 5 parameters.
6414
6415 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
6416 Add parameter only_dir_p.
6417 In Motif version, don't put DEFAULT_FILENAME in filter part of the
6418 dialog, just text field part. Do not add DEFAULT_FILENAME
6419 to list of files if it isn't there.
6420 In GTK version, pass only_dir_p parameter to xg_get_file_name.
6421
6422 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
6423 Check only_dir_p instead of comparing prompt to "Dired". When using
6424 a save dialog, add option kNavDontConfirmReplacement, change title
6425 to "Enter name", change text for save button to "Ok".
6426
6427 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
6428 Check only_dir_p instead of comparing prompt to "Dired".
6429
6430 * gtkutil.c (xg_get_file_with_chooser)
6431 (xg_get_file_with_selection): New functions, only defined ifdef
6432 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
6433 respectively.
6434 (xg_get_file_name): Add parameter only_dir_p.
6435 Call xg_get_file_with_chooser or xg_get_file_with_selection
6436 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
6437 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
6438
6439 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
6440
6441 * config.in: Rebuild (added HAVE_GTK_FILE_*).
6442
6443 2004-11-01 Kim F. Storm <storm@cua.dk>
6444
6445 * process.c (connect_wait_mask, num_pending_connects):
6446 Only declare and use them if NON_BLOCKING_CONNECT is defined.
6447 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
6448 (IF_NON_BLOCKING_CONNECT): New helper macro.
6449 (wait_reading_process_output): Only declare and use local vars
6450 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
6451
6452 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
6453
6454 * w32term.c (x_scroll_run): Delete region objects after use.
6455
6456 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6457
6458 * xmenu.c: Add prototypes for forward function declarations.
6459 (popup_get_selection): Remove parameter do_timers, remove call to
6460 timer_check.
6461 (create_and_show_popup_menu, create_and_show_dialog):
6462 Remove parameter do_timers from call to popup_get_selection.
6463
6464 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
6465 tool_bar_items and assign the result to f->tool_bar_items if
6466 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
6467 tool_bar_items to assignment of result.
6468
6469 * atimer.c (alarm_signal_handler): Do not call set_alarm if
6470 pending_atmers is non-zero.
6471
6472 2004-10-31 Kim F. Storm <storm@cua.dk>
6473
6474 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
6475
6476 2004-10-28 Will <will@glozer.net>
6477
6478 * macterm.c: Allow user to assign key modifiers to the Mac Option
6479 key via a 'mac-option-modifier' variable.
6480
6481 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6482
6483 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
6484 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
6485 (x_handle_selection_request, x_handle_selection_clear)
6486 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
6487
6488 2004-10-28 Richard M. Stallman <rms@gnu.org>
6489
6490 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6491
6492 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6493
6494 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6495
6496 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6497 comment-starter over a 1-char one.
6498
6499 2004-10-27 Richard M. Stallman <rms@gnu.org>
6500
6501 * xdisp.c (get_next_display_element): In mode lines,
6502 treat newline and tab like other control characters.
6503
6504 * editfns.c (Fmessage): Doc fix.
6505
6506 * indent.c (vmotion): When moving up, check the newline before.
6507 Make prevline an int, not a Lisp_Object.
6508
6509 2004-10-27 Kim F. Storm <storm@cua.dk>
6510
6511 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6512 Only allocate info and discarded tables once.
6513
6514 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6515 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6516 (SAFE_FREE): Test it to determine if we need to unwind to free.
6517 Remove size arg. All users changed.
6518 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6519
6520 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6521
6522 * gtkutil.c: Put empty line between comment and function body.
6523 (xg_destroy_widgets): Rename from remove_from_container.
6524 Just destroy all widgets in list. Argument wcont removed.
6525 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6526 instead of remove_from_container.
6527 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6528 (free_frame_tool_bar): Add comment.
6529
6530 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6531 is not NULL before strcmp.
6532
6533 2004-10-26 Kim F. Storm <storm@cua.dk>
6534
6535 * callint.c (Fcall_interactively): Add 'U' code to get the
6536 up-event discarded by a previous 'k' or 'K' argument.
6537
6538 2004-10-26 David Kastrup <dak@gnu.org>
6539
6540 * buffer.c (syms_of_buffer): Fix a few typos.
6541
6542 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6543
6544 * xsmfns.c: Put empty line between comment and function body.
6545 Use two spaces before comment end.
6546
6547 2004-10-25 Kenichi Handa <handa@m17n.org>
6548
6549 * fontset.c (fontset_pattern_regexp): Optimize for the case that
6550 PATTERN is full XLFD.
6551
6552 2004-10-24 Kenichi Handa <handa@m17n.org>
6553
6554 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
6555
6556 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
6557 (regex_compile): Return REG_ERANGEX if appropriate.
6558
6559 2004-10-22 Kenichi Handa <handa@m17n.org>
6560
6561 * editfns.c (Ftranslate_region_internal): New function.
6562 (syms_of_editfns): Defsubr it.
6563
6564 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6565
6566 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
6567
6568 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6569
6570 * xterm.h (x_output): New member `xic_base_fontname'.
6571 (FRAME_XIC_BASE_FONTNAME): New macro.
6572 (xic_free_xfontset): Declare.
6573
6574 * xfns.c (xic_create_xfontset): Share fontsets between frames
6575 based on base_fontname.
6576 (xic_free_xfontset): New function.
6577 (free_frame_xic): Use it.
6578 (xic_set_xfontset): Ditto.
6579
6580 * xterm.c (xim_destroy_callback): Ditto.
6581
6582
6583 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
6584
6585 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
6586
6587 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6588
6589 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
6590 XSync.
6591
6592 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
6593 New variables and constant.
6594 (main): Calculate heap_bss_diff. If we are dumping and the
6595 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
6596 and exec ourself again.
6597 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
6598 print a warning.
6599
6600 * lastfile.c: Make my_endbss and my_endbss_static available on all
6601 platforms.
6602
6603 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
6604 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
6605
6606 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
6607
6608 * data.c (Flocal_variable_if_set_p): Doc fix.
6609
6610 2004-10-19 Jason Rumney <jasonr@gnu.org>
6611
6612 * w32.c (init_environment): Set emacs_dir correctly when running
6613 emacs from the build directory.
6614
6615 2004-10-19 Richard M. Stallman <rms@gnu.org>
6616
6617 * editfns.c (Fdelete_and_extract_region):
6618 If region is empty, return null string.
6619
6620 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6621
6622 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
6623 and canon_width.
6624 (xg_frame_cleared): Remove.
6625
6626 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
6627 (xg_find_top_left_in_fixed): Remove.
6628 (xg_create_scroll_bar): Put an event box widget between
6629 the scroll bar widget and the edit widget.
6630 (xg_show_scroll_bar): Show the parent widget (the event box).
6631 (xg_remove_scroll_bar): Destroy parent (the event box) also.
6632 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
6633 Move the parent (the event box) widget inside the fixed widget.
6634 Move window clear to xterm.c.
6635
6636 * gtkutil.h (xg_frame_cleared): Remove.
6637
6638 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
6639 (x_scroll_bar_create, XTset_vertical_scroll_bar):
6640 Remove arguments left and width to xg_update_scrollbar_pos.
6641 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
6642
6643 2004-10-19 Kenichi Handa <handa@m17n.org>
6644
6645 * xdisp.c (display_mode_element): Fix display of wide chars.
6646
6647 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6648
6649 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
6650 gdk_window_clear and move gdk_window_process_all_updates after
6651 clear so events are sent to the X server in correct order.
6652
6653 2004-10-18 Kenichi Handa <handa@m17n.org>
6654
6655 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
6656 comparing font names.
6657 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6658 (list_fontsets): Likewise.
6659
6660 * search.c (fast_string_match_ignore_case): New function.
6661
6662 * lisp.h (fast_string_match_ignore_case): Extern it.
6663
6664 2004-10-17 Kim F. Storm <storm@cua.dk>
6665
6666 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
6667 than bitmap if there is not left fringe.
6668 (get_overlay_arrow_glyph_row): Also used on windows system.
6669 (display_line): Display overlay string if no left fringe.
6670
6671 2004-10-16 Jason Rumney <jasonr@gnu.org>
6672
6673 * w32fns.c (w32_font_match): Encode font name being matched.
6674
6675 2004-10-16 Richard M. Stallman <rms@gnu.org>
6676
6677 * window.c (Fspecial_display_p): Doc fix.
6678
6679 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
6680
6681 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
6682 Don't ignore menus, because where-is-internal already does it for us.
6683
6684 2004-10-15 Kim F. Storm <storm@cua.dk>
6685
6686 * xdisp.c (redisplay_window): Only update fringes and vertical
6687 border on window frames.
6688
6689 2004-10-14 Andreas Schwab <schwab@suse.de>
6690
6691 * m/ia64.h (DATA_SEG_BITS): Don't define.
6692
6693 2004-10-14 Kim F. Storm <storm@cua.dk>
6694
6695 * xterm.h: Include Xutil.h after keysym.h to work around bug
6696 in some X versions.
6697
6698 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6699
6700 * fns.c (map_char_table): Add missing gcpros.
6701
6702 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6703
6704 * keymap.c (get_keymap): An autoload form is not a keymap.
6705
6706 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
6707
6708 2004-10-13 Kim F. Storm <storm@cua.dk>
6709
6710 * callproc.c (Fcall_process): Simplify handling of display arg.
6711 Resume `display_on_the_fly' once a coding system is determined.
6712
6713 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
6714
6715 2004-10-12 Kim F. Storm <storm@cua.dk>
6716
6717 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
6718 caller, such as call-process, is not going to poll for input.
6719 (calc_line_height_property): Handle case where it->object is nil.
6720
6721 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
6722
6723 2004-10-12 Kenichi Handa <handa@m17n.org>
6724
6725 * xdisp.c (get_next_display_element):
6726 If unibyte_display_via_language_environment is zero, display 8-bit
6727 chars in octal in unibyte buffer.
6728
6729 2004-10-12 Kim F. Storm <storm@cua.dk>
6730
6731 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
6732 are no ordinary bindings.
6733
6734 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6735
6736 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
6737
6738 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6739
6740 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
6741 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
6742 (make_mac_frame): Add BLOCK_INPUT around the making of a
6743 terminal frame.
6744 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
6745 * macgui.h (mktime): Use emacs_mktime.
6746 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
6747 Make a cancel file-open dialog be like C-g.
6748 * mac.c (mktime): Use emacs_mktime.
6749 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
6750 (Fmac_paste_function): Add better error handling for carbon cut/paste.
6751
6752 2004-10-10 Kim F. Storm <storm@cua.dk>
6753
6754 * keyboard.c (timer_resume_idle): New function to resume idle
6755 timer without resetting timers on the idle list.
6756 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
6757 (timer_start_idle, timer_stop_idle): Declare static.
6758 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
6759
6760 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
6761
6762 2004-10-08 Steven Tamm <steventamm@mac.com>
6763
6764 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
6765 * macterm.c (mac_check_for_quit_char): Remove warning for using
6766 NULL where 0 should be used.
6767 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
6768 objc/malloc.h
6769 * mac.c: Include time.h for Tiger compatibility.
6770
6771 2004-10-07 Kim F. Storm <storm@cua.dk>
6772
6773 * xdisp.c (redisplay_window): Fix flicker on vertical line between
6774 windows. Update vertical line after drawing window fringes, but
6775 only if actually drawing any bitmaps--or there is no fringe.
6776
6777 * xterm.c (x_update_window_end): Likewise.
6778 * macterm.c (x_update_window_end): Likewise.
6779 * w32term.c (x_update_window_end): Likewise.
6780
6781 * fringe.c (draw_window_fringes): Return value now indicates if
6782 any fringe bitmaps were redrawn (or there are no fringes).
6783
6784 * dispextern.h (draw_window_fringes): Update prototype.
6785
6786 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6787
6788 * macfns.c (mac_get_window_bounds): Add extern.
6789 (x_real_positions): Use mac_get_window_bounds.
6790
6791 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
6792 xmenu.c (YAILOM).
6793
6794 * macterm.c [!MAC_OSX]: Include Windows.h.
6795 (front_emacs_window): Rename from mac_front_window. All uses
6796 changed. Return the frontmost non-tooltip emacs window.
6797 (mac_get_window_bounds): New function.
6798 (x_calc_absolute_position): Use the difference of width and height
6799 between the inner and outer window.
6800 (x_set_offset): Specify window position by the coordinae of the
6801 outer window. Adjust the position if the title bar is completely
6802 outside the screen.
6803 (app_is_suspended, app_sleep_time): Remove unused variables.
6804 (do_app_resume, do_app_suspend): Remove their contents because
6805 window-activate/deactivate events will do the job.
6806 (do_zoom_window): Remove unused variables. Make compliant to the
6807 standard way of zooming. Set f->left_pos and f->top_pos.
6808 (XTread_socket): Don't use argument `expected'. Don't use
6809 FrontWindow to determine the clicked window. Exclude unprocessed
6810 mouseUp cases in the early stage. Add parentheses to fix operator
6811 precedence.
6812 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
6813
6814 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
6815
6816 * config.in: Regenerate.
6817
6818 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
6819 HAVE_EXECSHIELD.
6820
6821 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6822
6823 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
6824 a row if Alt or Meta has been found for that row. Also stop scanning
6825 for Keysyms for that row.
6826
6827 2004-10-04 Kim F. Storm <storm@cua.dk>
6828
6829 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
6830 to list. Include overlay arrow bitmap in return value.
6831
6832 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
6833 bars with fractional column width. If scroll bar separates two
6834 windows, move it towards the window it belongs to. Only update
6835 the padding area below the scroll bar widget when necessary,
6836 i.e. when scroll bar widget is created, moved, or resized.
6837
6838 * xdisp.c (define_frame_cursor1): Do not change frame cursor
6839 while tracking/dragging mouse.
6840 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
6841
6842 * window.c (coordinates_in_window): Relax check for cursor
6843 on vertial border between mode lines.
6844 (Fset_window_fringes): Do not allow negative widths.
6845 (Fset_window_scroll_bars): Likewise.
6846
6847 * .gdbinit (pp): Shorthand for p ARG + pr.
6848 (ff): New command: flush frame updates (X only).
6849
6850 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
6851
6852 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
6853
6854 2004-09-30 Kenichi Handa <handa@m17n.org>
6855
6856 * process.c (send_process): Free composition data.
6857
6858 * fileio.c (Finsert_file_contents): Free composition data.
6859
6860 * coding.c (code_convert_region): Don't skip ASCIIs if there are
6861 compositions to encode.
6862 (encode_coding_string): Likewise. Free composition data.
6863
6864 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
6865
6866 * coding.c (code_convert_region): Free composition data.
6867
6868 2004-09-29 Kim F. Storm <storm@cua.dk>
6869
6870 * fringe.c: Remove limit on number of bitmaps.
6871 (fringe_bitmaps, fringe_faces): Change to pointers.
6872 (max_fringe_bitmaps): New var.
6873 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
6874 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
6875
6876 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
6877 (struct glyph_row): Reorder fringe_bitmap related fields.
6878 (struct it): Likewise.
6879
6880 * w32term.c (fringe_bmp): Change to pointer.
6881 (max_fringe_bmp): New var.
6882 (w32_define_fringe_bitmap): Expand fringe_bmp.
6883 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
6884 (w32_destroy_fringe_bitmap): Likewise.
6885
6886 2004-09-29 Kim F. Storm <storm@cua.dk>
6887
6888 * fringe.c: Simplify last change.
6889 (lookup_fringe_bitmap): New function.
6890 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
6891 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
6892 Keep standard bitmaps in Vfringe_bitmaps.
6893 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
6894 (Fset_fringe_bitmap_face): Likewise.
6895
6896 * dispextern.h (lookup_fringe_bitmap): Add prototype.
6897 (valid_fringe_bitmap_p): Remove prototype.
6898
6899 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
6900
6901 2004-09-29 Kim F. Storm <storm@cua.dk>
6902
6903 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
6904 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
6905
6906 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
6907
6908 * fringe.c (Vfringe_bitmaps): New variable.
6909 (syms_of_fringe): DEFVAR_LISP it.
6910 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
6911 Change arg to Lisp_Object and fail if not an integer.
6912 (get_fringe_bitmap_name, resolve_fringe_bitmap)
6913 (destroy_fringe_bitmap): New functions.
6914 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
6915 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
6916 clear its fringe property.
6917 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
6918 Fdestroy_fringe_bitmap.
6919 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
6920 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
6921 and set fringe property. Signal error if no free slots.
6922 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
6923 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
6924
6925 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
6926 symbols with a fringe property.
6927
6928 2004-09-27 Kim F. Storm <storm@cua.dk>
6929
6930 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
6931 Doc fix. Format may now be a symbol or alist, not a cons.
6932
6933 * fringe.c (update_window_fringes): Handle new formats of
6934 indicate-buffer-boundaries (symbol or alist). No longer
6935 allow a simple cons.
6936 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
6937
6938 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6939
6940 * config.in: Rebuild.
6941
6942 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6943
6944 * config.in: Rebuild.
6945
6946 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
6947
6948 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
6949
6950 * xterm.c (x_term_init): Work around a bug in some X servers.
6951
6952 2004-09-18 Richard M. Stallman <rms@gnu.org>
6953
6954 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
6955
6956 * xdisp.c (try_window_reusing_current_matrix):
6957 Handle the case where we reach the old displayed text,
6958 out of sync with the old line boundary.
6959
6960 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
6961
6962 * fileio.c (Finsert_file_contents): Fix case of replacement in a
6963 narrowed buffer.
6964
6965 2004-09-14 Kim F. Storm <storm@cua.dk>
6966
6967 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
6968
6969 * xfaces.c (Qface_no_inherit): New var.
6970 (syms_of_xfaces): Intern and staticpro it.
6971 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
6972 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
6973 Don't increment face_change_count when face has non-nil
6974 face-no-inherit property.
6975
6976 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
6977
6978 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
6979 (Fbyte_code): Remove dead code after `wrong_type_argument'.
6980
6981 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
6982 before doing the mark_stack_check_gcpros since they're not on the stack.
6983
6984 2004-09-12 Kim F. Storm <storm@cua.dk>
6985
6986 * editfns.c (Fformat): Handle format strings with multiple text
6987 properties. Reverse text property list from the format string,
6988 so the positions are in increasing order.
6989
6990 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6991
6992 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
6993 x_uncatch_errors so that possible protocol errors are delivered.
6994
6995 2004-09-10 Eli Zaretskii <eliz@gnu.org>
6996
6997 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
6998 blockinput.h.
6999 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
7000 charset.h, and coding.h
7001 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
7002 (term.o): Depend on window.h and keymap.h.
7003 (abbrev.o): Depend on syntax.h.
7004 (callint.o): Depend on keymap.h.
7005 (casefiddle.o): Depend on charset.h and keymap.h.
7006 (category.o): Depend on keymap.h.
7007 (coding.o): Depend on dispextern.h.
7008 (cmds.o): Depend on keyboard.h and keymap.h.
7009 (dispnew.o): Depend on indent.h and intervals.h.
7010 (doc.o): Depend on keymap.h.
7011 (editfns.o): Depend on frame.h.
7012 (emacs.o): Depend on dispextern.h.
7013 (fileio.o): Don't depend on ccl.h.
7014 (filelock.o): Depend on charset.h and coding.h.
7015 (frame.o): Depend on w32term.h and macterm.h.
7016 (insdel.o): Depend on region-cache.h.
7017 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
7018 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
7019 (search.o): Depend on $(INTERVALS_SRC).
7020 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
7021 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
7022 xterm.h, w32term.h, and macterm.h.
7023 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
7024 w32term.h, and macterm.h.
7025 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
7026 region-cache.h, xterm.h, w32term.h, and macterm.h.
7027 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
7028 (data.o): Depend on frame.h.
7029 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
7030 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
7031 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
7032 (intervals.o): Depend on keymap.h.
7033
7034 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
7035 Add debugging print-out to termscript.
7036
7037 2004-09-09 Richard M. Stallman <rms@gnu.org>
7038
7039 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
7040
7041 2004-09-08 Richard M. Stallman <rms@gnu.org>
7042
7043 * window.c (Fset_window_buffer): Doc fix.
7044
7045 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
7046
7047 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
7048
7049 * minibuf.c (history_delete_duplicates): New variable.
7050 (read_minibuf): Use it.
7051 (syms_of_minibuf): Create the corresponding lisp variable.
7052
7053 2004-09-08 Kim F. Storm <storm@cua.dk>
7054
7055 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
7056 overlay just before point.
7057
7058 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
7059
7060 * buffer.h (struct buffer): Add auto_save_file_format field.
7061 * buffer.c (reset_buffer, init_buffer_once):
7062 Handle auto_save_file_format field.
7063 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
7064 `buffer-auto-save-file-format'.
7065 * fileio.c: Delete declaration for removed Vauto_save_file_format.
7066 (build_annotations): Adapt to replacement of
7067 `auto-save-file-format' with the new buffer-local variable
7068 `buffer-auto-save-file-format'.
7069 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
7070
7071 2004-09-07 Jason Rumney <jasonr@gnu.org>
7072
7073 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
7074
7075 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
7076 Handle Unicode menu titles.
7077
7078 2004-09-07 Kim F. Storm <storm@cua.dk>
7079
7080 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
7081 property from text property or overlay strings at point.
7082
7083 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7084
7085 * xmenu.c (update_submenu_strings): YAILOM.
7086 (set_frame_menubar): Make sure last_i is initialized.
7087
7088 2004-09-03 Jason Rumney <jasonr@gnu.org>
7089
7090 * w32menu.c (_widget_value): Add lname and lkey.
7091 (digest_single_submenu): Set lname and lkey in widget_value
7092 instead of name and key.
7093 (update_submenu_strings): New function.
7094 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7095 call update_submenu_strings.
7096
7097 * w32menu.c (globals_of_w32menu): Check for Unicode API.
7098 (digest_single_submenu, w32_menu_show): Encode menu strings as
7099 UTF-8 if Unicode API is available.
7100 (utf8to16): New function.
7101 (add_menu_item): Use it when calling Unicode API.
7102
7103 2004-09-03 Kim F. Storm <storm@cua.dk>
7104
7105 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
7106 in overlay or text-property strings; set cursor on corresponding
7107 glyph rather than at end of the string.
7108
7109 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7110
7111 * macfns.c (x_real_positions): Save the current window port and
7112 set a new one before obtaining the global coordinate.
7113 Use FRAME_MAC_WINDOW.
7114 (x_set_name, x_set_title): Encode title to UTF8.
7115 Use SetWindowTitleWithCFString.
7116 (Fx_server_version): Get correct OS version.
7117
7118 * macmenu.c (add_menu_item): Remove unused variable `i'.
7119 Don't let separator items destroy refence constants of other menu items.
7120
7121 * macterm.c (x_update_end): Move SetPortWindowPort to inside
7122 BLOCK_INPUT.
7123 (x_set_offset): Use FRAME_MAC_WINDOW.
7124
7125 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
7126 nontext_cursor if it is on a scroll bar.
7127
7128 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
7129 Carbon support.
7130 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
7131 Use LIBS_CARBON.
7132
7133 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7134
7135 * xfns.c (x_set_name_internal): New function. Check if we shall call
7136 xfree before ENCODE_UTF_8.
7137 (x_set_name, x_set_title): Call x_set_name_internal.
7138
7139 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
7140
7141 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
7142 reload it.
7143
7144 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7145
7146 * macmenu.c (_widget_value): Add lname and lkey.
7147 (single_submenu): Set lname and lkey in widget_value
7148 instead of name and key.
7149 (update_submenu_strings): New function.
7150 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7151 call update_submenu_strings.
7152
7153 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
7154 instead of name and key.
7155 (update_submenu_strings): New function.
7156 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7157 call update_submenu_strings.
7158
7159 * gtkutil.h (_widget_value): Added lname and lkey.
7160
7161 2004-08-30 Steven Tamm <steventamm@mac.com>
7162
7163 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
7164 by using different names for inner loop variables.
7165
7166 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7167
7168 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
7169 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
7170
7171 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
7172 tool bar items is 0.
7173
7174 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7175
7176 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
7177 strings in menu items.
7178 (single_submenu): Use ENCODE_MENU_STRING
7179 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
7180 button release isn't passed to event loop
7181 (add_menu_item): Use SetMenuItemWithCFString
7182
7183 2004-08-26 Steven Tamm <steventamm@mac.com>
7184
7185 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
7186 tool-bar/menu click.
7187 * macfns.c (Fx_file_dialog): Implement using NavServices.
7188
7189 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7190
7191 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
7192
7193 * xfns.c (x_window_to_frame, x_any_window_to_frame)
7194 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7195 (x_top_window_to_frame): Return 0 if wdesc is None.
7196
7197 2004-08-22 Richard M. Stallman <rms@gnu.org>
7198
7199 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
7200 HAVE_TERMIOS]: If there's no char for this signal, drop through
7201 and use system calls.
7202
7203 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
7204
7205 2004-08-20 Kim F. Storm <storm@cua.dk>
7206
7207 * process.c (wait_reading_process_output): Rename from
7208 wait_reading_process_input. All uses changed.
7209 (wait_reading_process_output_1): Rename from
7210 wait_reading_process_input_1. All uses changed.
7211
7212 * dispnew.c (Fsleep_for): Remove obsolete code.
7213
7214 2004-08-20 Kenichi Handa <handa@m17n.org>
7215
7216 * syntax.c (skip_chars): Fix for unibyte case.
7217
7218 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
7219
7220 * syntax.c (char_quoted): Mixup byte/char pos.
7221 (back_comment): Fixup globals in all cases.
7222
7223 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7224
7225 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
7226 passing it to gtk_window_set_title.
7227
7228 2004-08-19 Kim F. Storm <storm@cua.dk>
7229
7230 * process.c (wait_reading_process_input): Clean up.
7231 Add wait_for_cell, wait_proc, and just_wait_proc args
7232 to avoid overloading `read_kbd' and `do_display' args.
7233 Change read_kbd arg to int. All callers changed.
7234
7235 * process.c (process_send_signal): Use CDISABLE.
7236
7237 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
7238
7239 2004-08-18 Kim F. Storm <storm@cua.dk>
7240
7241 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
7242 forward to wait_reading_process_input via DO_DISPLAY arg.
7243 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
7244 object, only process output from that process; also inhibit
7245 running timers if DO_DISPLAY==-2.
7246
7247 2004-08-17 Kim F. Storm <storm@cua.dk>
7248
7249 * process.c (process_send_signal): Fix last change--use
7250 _POSIX_VDISABLE instead of CVDISABLE when available.
7251
7252 2004-08-16 Richard M. Stallman <rms@gnu.org>
7253
7254 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
7255 Set VQUIT and VINTR chars to the standard ones if they are unset.
7256 [AIX]: Don't do that here. And don't force VINTR to standard
7257 when SIGNALS_VIA_CHARACTERS.
7258
7259 * process.c (process_send_signal)
7260 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
7261 Do nothing if the character is CVDISABLE.
7262
7263 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
7264
7265 * intervals.c (move_if_not_intangible):
7266 Force POSITION to be between BEGV and ZV.
7267
7268 2004-08-14 John Paul Wallington <jpw@gnu.org>
7269
7270 * buffer.c (Frestore_buffer_modified_p): Doc fix.
7271
7272 * fileio.c (Fread_file_name): Doc fix.
7273
7274 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
7275
7276 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
7277
7278 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
7279
7280 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
7281
7282 * keyboard.c: Declare Qdisabled_command_function instead of
7283 Qdisabled_command_hook.
7284 (Fcommand_execute): Use Qdisabled_command_function instead of
7285 Qdisabled_command_hook.
7286 (syms_of_keyboard): Ditto.
7287
7288 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
7289
7290 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
7291 (syms_of_keymap) <key-translation-map>: Doc fixes.
7292
7293 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
7294
7295 * window.c (window_list_1): YAILOM.
7296
7297 * fileio.c (make_temp_name): Handle multibyte prefixes.
7298
7299 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
7300
7301 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
7302 Doc fix.
7303
7304 2004-08-03 Kenichi Handa <handa@m17n.org>
7305
7306 * coding.c (decode_coding_string): Adjust coding->consumed, and
7307 etc. with shrinked_bytes.
7308
7309 2004-08-03 Kim F. Storm <storm@cua.dk>
7310
7311 * indent.c (compute_motion): Fix check for full width window
7312 in non-window case. Do not count left truncation glyph on
7313 window systems.
7314
7315 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
7316
7317 * data.c (Finteractive_form): Doc fix.
7318
7319 2004-08-02 Kim F. Storm <storm@cua.dk>
7320
7321 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
7322 properly accounting for continuation glyph on non-window systems.
7323 (Fcompute_motion): Use actual window width if WIDTH is nil, and
7324 actual window width/height if TOPOS is nil, properly accounting for
7325 continuation glyphs on non-window systems, and optional header lines.
7326 (vmotion): Let compute_motion calculate actual window width.
7327
7328 * window.c (window_scroll_line_based): Let compute_motion
7329 calculate actual window width.
7330
7331 2004-08-02 Kim F. Storm <storm@cua.dk>
7332
7333 * process.c (read_process_output): Use whole read buffer.
7334 Don't trigger adaptive read buffering on errors.
7335
7336 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
7337
7338 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
7339
7340 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
7341
7342 * callint.c (Fcall_interactively): Doc fix.
7343
7344 2004-07-30 Richard M. Stallman <rms@gnu.org>
7345
7346 * abbrev.c (Fexpand_abbrev): Undo previous change.
7347
7348 2004-07-30 Kim F. Storm <storm@cua.dk>
7349
7350 * editfns.c (Fformat): Allocate extra (dummy) element in info.
7351
7352 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
7353
7354 * eval.c (Fdefvar, Fdefconst): Doc fixes.
7355
7356 2004-07-27 Kim F. Storm <storm@cua.dk>
7357
7358 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
7359 we have ensured that the glyph fits on the current line (or returned
7360 MOVE_LINE_CONTINUED otherwise).
7361
7362 2004-07-26 Kim F. Storm <storm@cua.dk>
7363
7364 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
7365 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
7366 if target position is at end of display line but char is not a newline.
7367
7368 2004-07-25 Richard M. Stallman <rms@gnu.org>
7369
7370 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
7371 instead of ON_VERTICAL_BORDER, when on scroll bar.
7372 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
7373
7374 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
7375
7376 * window.c (Fcoordinates_in_window_p):
7377 Take account of FRAME_INTERNAL_BORDER_WIDTH.
7378
7379 * alloc.c (check_cons_list): New function (contents commented out).
7380
7381 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
7382
7383 * xfaces.c (Fcolor_supported_p): Doc fix.
7384
7385 * frame.c (Fselect_frame, Fset_frame_selected_window)
7386 (Fframe_visible_p, Fraise_frame): Doc fixes.
7387
7388 2004-07-24 Richard M. Stallman <rms@gnu.org>
7389
7390 * keyboard.h (not_single_kboard_state): Declare.
7391
7392 * fileio.c (Fwrite_region): Doc fix.
7393
7394 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
7395
7396 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
7397 only when a real abbrev is present.
7398
7399 * xfns.c (x_icon_verify): New function.
7400 (Fx_create_frame): Use it.
7401
7402 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
7403
7404 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
7405
7406 2004-07-21 Kim F. Storm <storm@cua.dk>
7407
7408 * window.h (struct glyph_matrix): New members nrows_scale_factor
7409 and ncols_scale_factor.
7410
7411 * window.c (make_window): Initialize nrows_scale_factor and
7412 ncols_scale_factor members.
7413
7414 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
7415 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
7416 (required_matrix_height): Apply nrows_scale_factor.
7417 (required_matrix_width): Apply ncols_scale_factor.
7418
7419 * xdisp.c (display_line): Increment nrows_scale_factor and set
7420 fonts_changed_p if past last allocated row.
7421 (append_glyph, append_composite_glyph, produce_image_glyph)
7422 (append_stretch_glyph): Increment ncols_scale_factor and set
7423 fonts_changed_p if current area is full.
7424
7425 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7426
7427 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
7428
7429 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
7430
7431 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
7432 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
7433 (Fset_window_start, Fscroll_up, Fscroll_down)
7434 (Fother_window_for_scrolling, Fscroll_other_window)
7435 (Fsave_window_excursion, Fset_window_vscroll)
7436 (syms_of_window) <window-size-fixed>: Doc fixes.
7437
7438 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7439
7440 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
7441 ENCODE_SYSTEM for filenames.
7442
7443 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7444
7445 * mac.c (sys_select): Block input around call to
7446 ReceiveNextEvent to prevent breakage. Correctly handle
7447 blocking on event queue only by calling ReceiveNextEvent
7448 instead of select (since GUI events aren't on an fd).
7449 (sys_read): Remove function
7450 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
7451
7452 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7453
7454 * mac.c (sys_select): Redo sys_select to use alarm-based
7455 polling instead of 1 sec timeouts (like solaris).
7456
7457 * macterm.c (x_make_frame_visible): Comment in polling on
7458 frame creation.
7459
7460 * keyboard.c: Undef SIGIO on Carbon
7461
7462 * atimer.c (alarm_signal_handler): Call alarm handlers after
7463 scheduling.
7464
7465 * eval.c (Feval): Remove quit_char test
7466
7467 * process.c (wait_reading_process_input): Remove clearing
7468 stdin for select call on process input.
7469
7470 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
7471
7472 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
7473 capitalization error in docstring.
7474
7475 2004-07-17 Juanma Barranquero <lektu@terra.es>
7476
7477 * keyboard.c (not_single_kboard_state): Do nothing unless
7478 MULTI_KBOARD is defined.
7479
7480 2004-07-17 Richard M. Stallman <rms@gnu.org>
7481
7482 * window.c (coordinates_in_window): Inside the window but outside
7483 its box to the L or R, return ON_VERTICAL_BORDER.
7484 (window_list_1): Rotate the list to start with WINDOW.
7485
7486 * print.c (print_preprocess): Test for print_depth at limit
7487 before entering in being_printed.
7488
7489 * keyboard.c (not_single_kboard_state): New function.
7490 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7491
7492 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7493 this kboard, and we delete its last frame, go to any_kboard_state.
7494
7495 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7496
7497 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7498
7499 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7500 system before passing them to OS functions for display.
7501
7502 2004-07-15 David Kastrup <dak@gnu.org>
7503
7504 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7505 Apparently fixes an abort condition.
7506
7507 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7508
7509 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7510 instead of a cons.
7511
7512 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7513
7514 * keyboard.c (echo_dash): Do nothing if there already is a dash
7515 at the end of the echo string.
7516
7517 2004-07-12 Kim F. Storm <storm@cua.dk>
7518
7519 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7520 if GC_MARK_STACK.
7521
7522 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7523
7524 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7525
7526 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7527 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7528 (Freplace_buffer_in_windows, Fset_window_buffer)
7529 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7530 (syms_of_window): Expand docstring of `display-buffer-function'.
7531
7532 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7533
7534 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7535 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7536 that time values of the type (HIGH . LOW) are considered obsolete.
7537
7538 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7539
7540 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7541 docstring.
7542
7543 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7544
7545 2004-07-06 John Paul Wallington <jpw@gnu.org>
7546
7547 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
7548
7549 * fns.c (Fclear_string): Signal an error if STRING is not a string.
7550
7551 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7552
7553 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
7554 instead of CGMainDisplayID (only in OSX 10.2 and later).
7555
7556 2004-07-04 John Paul Wallington <jpw@gnu.org>
7557
7558 * fileio.c (read_file_name_completion_ignore_case): New variable.
7559 (syms_of_fileio): Declare and initialise it.
7560 (Fread_file_name): Bind `completion-ignore-case' to respect it.
7561
7562 2004-07-03 Eli Zaretskii <eliz@gnu.org>
7563
7564 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
7565 for event.x and event.y.
7566
7567 2004-07-01 Kenichi Handa <handa@m17n.org>
7568
7569 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
7570 after getting a new string by pre-write-conversion.
7571
7572 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
7573
7574 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
7575 (x_calc_absolute_position): Remove unused var `child'.
7576
7577 * xfaces.c (x_supports_face_attributes_p)
7578 (Fdisplay_supports_face_attributes_p): YAILOM.
7579 (tty_supports_face_attributes_p): Remove unused var `i'.
7580
7581 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
7582 back_unibyte_ok.
7583
7584 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
7585
7586 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
7587
7588 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
7589
7590 2004-06-30 Andreas Schwab <schwab@suse.de>
7591
7592 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
7593 (Finit_image_library): Pass LIBRARIES through to
7594 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
7595 (lookup_image_type): Pass Qnil as second argument to
7596 Finit_image_library.
7597
7598 * lisp.h (Finit_image_library): Declare.
7599
7600 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7601
7602 * macterm.c (do_window_activate, do_window_deactivate): Remove.
7603 (XTread_socket): Send mouse button events to the toolbox
7604 dispatcher even when the mouse is grabbed. Don't process window
7605 activate events for non-Emacs windows. Replace function calls to
7606 do_window_activate and do_window_deactivate with their contents.
7607 Reset mouse grabbing status when a window is deactivated.
7608
7609 2004-06-29 Steven Tamm <steventamm@mac.com>
7610
7611 * macterm.c (mac_get_emulated_btn)
7612 (mac_event_to_emacs_modifiers): Fix emulated mouse button
7613 support to correctly mask out modifiers.
7614
7615 2004-06-29 David Kastrup <dak@gnu.org>
7616
7617 * search.c (Fset_match_data): Allow buffer before end of list
7618 which can happen if set-match-data is using a pre-consed list.
7619
7620 2004-06-28 Steven Tamm <steventamm@mac.com>
7621
7622 * macterm.c (XTread_socket): Correctly set the frame position
7623 after the window is moved.
7624
7625 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7626
7627 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
7628 gpix and gmask just before return to avoid memory leak.
7629 (xg_get_image_for_pixmap): Add workaround for monochrome displays
7630 so insensitive and activated icons look ok.
7631
7632 2004-06-27 Jason Rumney <jasonr@gnu.org>
7633
7634 * w32fns.c (file_dialog_callback): Disable edit control if set
7635 to directories only on CDN_INITDONE message.
7636 (Fx_file_dialog): Default to directories only when prompt starts
7637 with "Dired".
7638
7639 2004-06-25 Kim F. Storm <storm@cua.dk>
7640
7641 * alloc.c (allocate_misc): Update total_free_markers.
7642 (free_misc): New function.
7643 (safe_alloca_unwind, free_marker): Use it.
7644
7645 * lisp.h (free_misc): Add prototype.
7646
7647 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
7648
7649 2004-06-24 Richard M. Stallman <rms@gnu.org>
7650
7651 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
7652 (syms_of_emacs): Lisp variables deleted.
7653
7654 2004-06-23 David Kastrup <dak@gnu.org>
7655
7656 * search.c (Freplace_match): Adjust the match-data more thoroughly
7657 when replacing strings in the buffer.
7658 (Fmatch_data): When INTEGERS is non-nil and the last match was in
7659 a buffer, add the buffer as last element to the match data.
7660 (Fset_match_data): If an additional element of the match-data is a
7661 buffer, restore it to last_thing_searched.
7662 (save_search_regs): Save last_thing_searched as part of the match data.
7663 (restore_match_data): Restore it again.
7664
7665 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
7666
7667 * keymap.c (Ftext_char_description): Doc fix.
7668 * doc.c (Fsnarf_documentation): Doc fix.
7669
7670 2004-06-22 Kim F. Storm <storm@cua.dk>
7671
7672 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
7673
7674 * lisp.h (struct Lisp_Save_Value): New member dogc.
7675 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7676 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
7677 (SAFE_FREE_LISP): New macro.
7678
7679 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
7680 (make_save_value): Init new dogc member.
7681 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
7682
7683 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
7684 SAFE_FREE_LISP macros.
7685
7686 2004-06-22 Kim F. Storm <storm@cua.dk>
7687
7688 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
7689 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
7690 in that memory area are unknown to GC. Add comments.
7691
7692 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
7693
7694 2004-06-21 Kim F. Storm <storm@cua.dk>
7695
7696 * lisp.h (MAX_ALLOCA): Define here.
7697 (safe_alloca_unwind): Add prototype.
7698 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
7699
7700 * alloc.c (safe_alloca_unwind): New function.
7701
7702 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
7703
7704 * charset.c (Fstring): Use SAFE_ALLOCA.
7705
7706 * coding.c (MAX_ALLOCA): Remove define.
7707
7708 * data.c (MAX_ALLOCA): Remove define.
7709 (Faset): Use SAFE_ALLOCA.
7710
7711 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
7712
7713 * fns.c (string_make_multibyte, string_to_multibyte)
7714 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
7715 (MAX_ALLOCA): Remove define.
7716 (Fbase64_encode_region, Fbase64_encode_string)
7717 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
7718 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
7719 memory leak if encoding fails.
7720
7721 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
7722
7723 2004-06-21 Eli Zaretskii <eliz@gnu.org>
7724
7725 * print.c (Fwith_output_to_temp_buffer): Doc fix.
7726
7727 2004-06-20 Richard M. Stallman <rms@gnu.org>
7728
7729 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
7730
7731 * search.c (match_limit): Cleaner err msg when no match data available.
7732
7733 * window.c (syms_of_window): Doc fix.
7734
7735 * keyboard.c (command_loop_1): Handle values `only' and `identity'
7736 for Vtransient_mark_mode.
7737
7738 * buffer.c (syms_of_buffer): Doc fix.
7739
7740 2004-06-21 David Kastrup <dak@gnu.org>
7741
7742 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
7743 and unbinding of `case-fold-search' according to
7744 `completion-ignore-case' around calls of string-match and
7745 predicates, respectively. Should give satisfactory performance
7746 in all relevant cases.
7747
7748 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7749
7750 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
7751 clip_x/y_origin.
7752
7753 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
7754
7755 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
7756
7757 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
7758 on Mac OSX.
7759
7760 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
7761
7762 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
7763
7764 2004-06-16 Kim F. Storm <storm@cua.dk>
7765
7766 * dispextern.h (Vimage_types): Remove extern.
7767
7768 2004-06-16 Miles Bader <miles@gnu.org>
7769
7770 * image.c (lookup_image_type): Initialize image type if necessary.
7771
7772 2004-06-15 Kim F. Storm <storm@cua.dk>
7773
7774 * xdisp.c (try_cursor_movement): Exclude header line from scroll
7775 margin at top of window.
7776 (try_window_reusing_current_matrix): Calculate proper cursor position
7777 after scrolling up with non-zero scroll margin, as the old cursor
7778 position corresponds to value of PT before executing this command.
7779 (try_window_id): Consider scroll margin at bottom of window too;
7780 otherwise we fail to scroll when hl-line-mode is enabled.
7781
7782 * syntax.c (skip_chars): Only recognize [:class:] when it has the
7783 proper format and class is a lower-case word.
7784
7785 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7786
7787 * gtkutil.c (xg_get_image_for_pixmap): New function.
7788 (xg_get_gdk_pixmap_and_mask): Remove.
7789 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
7790 xg_get_gdk_pixmap_and_mask.
7791
7792 * xterm.h (struct x_display_info): Typo in comment fixed.
7793
7794 2004-06-14 Juanma Barranquero <lektu@terra.es>
7795
7796 * dispextern.h (Vimage_types): Make it conditional on
7797 HAVE_WINDOW_SYSTEM.
7798
7799 * image.c (Vimage_types): Move from xdisp.c.
7800 (Vimage_type_cache): New variable.
7801 (define_image_type): New argument indicating whether an image
7802 library was loaded; cache loaded status and return t on success,
7803 nil otherwise.
7804 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
7805 (w32_delayed_load): New function to load an image library from a
7806 list of possible filenames.
7807 (init_xpm_functions, init_png_functions, init_jpeg_functions)
7808 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
7809 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
7810 (Finit_image_library): New function, extracted from `init_image'.
7811 Try to initialize an image library on demand and cache whether we
7812 were successful or not.
7813 (syms_of_image): Initialize `Vimage_types' and
7814 `Vimage_type_cache'. Add recognized image types to Vimage_types.
7815 Export `init-image-library'.
7816 (init_image): Remove initialization of all image types, except xbm
7817 and pbm.
7818
7819 * xdisp.c (Vimage_types): Delete (moved to image.c).
7820
7821 2004-06-14 Andreas Schwab <schwab@suse.de>
7822
7823 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7824 Avoid calling specbind when completion-regexp-list is empty.
7825
7826 2004-06-13 Richard M. Stallman <rms@gnu.org>
7827
7828 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7829 (re_wctype, re_iswctype, re_wctype_to_bit):
7830 Non-function definitions moved here from regex.c.
7831
7832 * regex.c (re_wctype, re_iswctype): Function defs longer static.
7833 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7834 (re_wctype, re_iswctype, re_wctype_to_bit):
7835 Non-function definitions moved to regex.h.
7836
7837 * window.c (Fselect_window): Doc fix.
7838
7839 * syntax.c: Include regex.h.
7840 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
7841 If requested, make a list of classes, then check the scanned
7842 chars for membership in them.
7843 (in_classes): New function.
7844 Doc fix.
7845
7846 * keyboard.c (cmd_error): Don't call any_kboard_state
7847 if inside a recursive edit level.
7848
7849 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7850
7851 * keyboard.c (command_loop): Call any_kboard_state before
7852 command_loop_2 when at top level.
7853
7854 2004-06-13 Andreas Schwab <schwab@suse.de>
7855
7856 * print.c (print_object): Always use %ld for printing EMACS_INT.
7857
7858 * keyboard.c (cancel_hourglass_unwind): Return a value.
7859 (modify_event_symbol): Always use %ld for printing EMACS_INT.
7860 (Fexecute_extended_command): Likewise.
7861
7862 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
7863 avoid clashes.
7864 (SYNTAX): Likewise.
7865 (SYNTAX_WITH_FLAGS): Likewise.
7866 (SYNTAX_MATCH): Likewise.
7867
7868 * syntax.c (char_quoted): Avoid warning about undefined operation.
7869 (find_defun_start): Likewise.
7870 (scan_lists): Likewise.
7871 (INC_FROM): Likewise.
7872 (scan_sexps_forward): Likewise.
7873
7874 * image.c: Include <ctype.h>.
7875
7876 * xfaces.c (face_attr_equal_p): Declare parameters.
7877
7878 2004-06-13 Kenichi Handa <handa@m17n.org>
7879
7880 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
7881
7882 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
7883
7884 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
7885
7886 2004-06-12 Kenichi Handa <handa@m17n.org>
7887
7888 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
7889 ccl_prog_stack_struct and update it.
7890 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
7891 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
7892 ccl->eof_ic on EOF.
7893 (ccl_debug_hook): New function.
7894 (struct ccl_prog_stack): New member eof_ic.
7895 (ccl_driver): Handle EOF in subrountine call correctly.
7896
7897 2004-06-11 Kenichi Handa <handa@m17n.org>
7898
7899 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
7900
7901 2004-06-11 Kim F. Storm <storm@cua.dk>
7902
7903 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
7904
7905 2004-06-11 Juanma Barranquero <lektu@terra.es>
7906
7907 * keyboard.c (Fposn_at_point): Doc fix.
7908
7909 2004-06-11 David Kastrup <dak@gnu.org>
7910
7911 * search.c (match_limit): Don't flag an error if match-data
7912 exceeding the allocated search_regs.num_regs gets requested, just
7913 return Qnil.
7914
7915 2004-06-08 Miles Bader <miles@gnu.org>
7916
7917 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
7918
7919 2004-06-07 Juanma Barranquero <lektu@terra.es>
7920
7921 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
7922 (Fcurrent_time_string, Fcurrent_time_zone)
7923 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
7924
7925 2004-06-07 Miles Bader <miles@gnu.org>
7926
7927 * xfaces.c (struct named_merge_point): New type.
7928 (push_named_merge_point): New function.
7929 (merge_named_face): New function.
7930 (merge_face_ref, face_at_buffer_position, face_at_string_position):
7931 Use `merge_named_face'.
7932 (merge_face_inheritance): Function removed.
7933 (merge_face_ref): Rename from `merge_face_vector_with_property'.
7934 Add new `err_msgs' and `named_merge_points' args. Return error
7935 status. Only print error messages if ERR_MSGS is true. Don't try to
7936 do :inherit attribute validation.
7937 (merge_face_heights): Handle `unspecified' in both directions.
7938 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
7939 Call `merge_face_ref' instead of `merge_face_inheritance'.
7940 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
7941 (compute_char_face, face_at_buffer_position)
7942 (face_at_string_position): Call `merge_face_ref' instead of
7943 `merge_face_vector_with_property'.
7944
7945 2004-06-07 Kenichi Handa <handa@m17n.org>
7946
7947 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
7948 the necessary places.
7949
7950 2004-06-07 Kim F. Storm <storm@cua.dk>
7951
7952 * process.c (Fdelete_process): Undo 2004-05-28 change.
7953 Instead, call status_notify also for network process.
7954 (status_message): Use process instead of status as arg.
7955 Give messages "deleted" or "connection broken by remote peer" for
7956 an exited network process.
7957 (status_notify): Change call to status_message.
7958 (read_process_output): Increase readmax to 4096. Do not increase
7959 buffer size for datagram channels (default is now large enough).
7960
7961 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7962
7963 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
7964 problem due to newly defined variable.
7965
7966 2004-06-06 Miles Bader <miles@gnu.org>
7967
7968 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
7969 immediately if non-interactive or not initialized.
7970
7971 2004-06-05 Richard M. Stallman <rms@gnu.org>
7972
7973 * minibuf.c (Fcompleting_read): Doc fix.
7974
7975 2004-06-05 Andreas Schwab <schwab@suse.de>
7976
7977 * macfns.c (x_create_tip_frame): Fix declaration after statement.
7978
7979 2004-06-05 Juanma Barranquero <lektu@terra.es>
7980
7981 * keymap.c (Fdescribe_vector): Fix docstring.
7982 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
7983
7984 2004-06-05 Miles Bader <miles@gnu.org>
7985
7986 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
7987 attributes have different values than the default face.
7988
7989 2004-06-04 Eli Zaretskii <eliz@gnu.org>
7990
7991 * xfaces.c (x_supports_face_attributes_p): Make this function
7992 conditional on HAVE_WINDOW_SYSTEM.
7993 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
7994 Don't call x_supports_face_attributes_p if it was not compiled in.
7995
7996 2004-06-04 Miles Bader <miles@gnu.org>
7997
7998 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
7999 from Ftty_supports_face_attributes_p.
8000 (x_supports_face_attributes_p): New function.
8001 (Ftty_supports_face_attributes_p): Function deleted.
8002 (Fdisplay_supports_face_attributes_p): New function.
8003 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
8004 (face_attr_equal_p): New function.
8005 (lface_equal_p): Use it.
8006
8007 2004-06-03 Juanma Barranquero <lektu@terra.es>
8008
8009 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
8010 (Vw32_color_map): Fix typo in docstring.
8011 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
8012 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
8013 Make argument names match their use in docstring.
8014
8015 2004-06-02 Juanma Barranquero <lektu@terra.es>
8016
8017 Work around bugs/problems with MinGW builds of graphics libraries
8018 called from MSVC builds of Emacs.
8019
8020 * image.c (lookup_image): Make pointer to img static.
8021 (png_read_from_memory): Disable "global" optimization.
8022
8023 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
8024
8025 * eval.c (Fcondition_case): Fix usage. Simplify.
8026
8027 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
8028
8029 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8030
8031 * macfns.c: Don't include ccl.h.
8032 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
8033 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
8034 TextUtils.h.
8035 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
8036 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
8037 display height/width.
8038 (compute_tip_xy, Vx_max_tooltip_size): Declare.
8039 (unwind_create_tip_frame, compute_tip_xy): New functions.
8040 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
8041 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
8042 and last_show_tip_args.
8043
8044 * macgui.h [!MAC_OSX]: Include Gestalt.h.
8045 (Cursor, No_Cursor): New defines.
8046 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
8047 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
8048
8049 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
8050
8051 * macterm.c: Don't include Gestalt.h.
8052 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
8053 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
8054 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
8055 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
8056 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
8057 (construct_mouse_click, XTmouse_position)
8058 (x_scroll_bar_report_motion, x_calc_absolute_position)
8059 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
8060 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
8061 (note_mouse_movement): Clear the mouse face and reset the pointer
8062 shape when the pointer goes outside the frame without grabbing.
8063 (mac_front_window): New function.
8064 (mac_window_to_frame): New macro.
8065 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
8066 (do_window_activate, do_window_deactivate, do_app_resume)
8067 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
8068 (do_zoom_window, mac_do_receive_drag, XTread_socket)
8069 (mac_check_for_quit_char): Use mac_front_window and/or
8070 mac_window_to_frame.
8071 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
8072 scroll-bar click event.
8073 (mac_define_frame_cursor): Change the pointer shape.
8074 (x_free_frame_resources): Reset tip_window to NULL when it is
8075 disposed of.
8076 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
8077 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
8078 (do_window_update): Don't do anything if the updated window is the
8079 tooltip window.
8080 (do_mouse_moved): Handle mouse movement events here (previously in
8081 XTread_socket). Clear the mouse face if
8082 dpyinfo->mouse_face_hidden is set.
8083 (do_os_event, do_events): Remove (now in XTread_socket).
8084 (XTread_socket): Immediately return if interrupt_input_blocked.
8085 Loop until all the events in the queue are processed.
8086 Rearrange codes for mouse grabbing. Add tooltip support. Include the
8087 contents of do_os_event and do_events. Remove mouse movement
8088 handling (now in do_mouse_moved). Add the case where
8089 Vmouse_highlight has an integer value.
8090 (NewMacWindow): Remove.
8091 (make_mac_frame): Do what NewMacWindow previously did. Don't do
8092 excess initializations.
8093 (make_mac_terminal_frame): Previous initializations in
8094 make_mac_frame are moved here.
8095 (mac_initialize_display_info):
8096 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
8097
8098 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
8099 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
8100
8101 2004-05-29 Richard M. Stallman <rms@gnu.org>
8102
8103 * lisp.h (truncate_undo_list): Update decl.
8104
8105 * alloc.c (undo_outer_limit): New variable.
8106 (syms_of_alloc): Defvar it.
8107 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
8108
8109 * undo.c (truncate_undo_list): New arg LIMITSIZE.
8110
8111 * alloc.c (lisp_align_malloc): Check for base == 0
8112 regardless of HAVE_POSIX_MEMALIGN.
8113 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
8114
8115 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8116
8117 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
8118 (marker_blocks_pending_free): Remove.
8119 (Fgarbage_collect): Sweep after cleaning up undo-lists.
8120 Mark the undo lists after claning them up.
8121 Don't free block in marker_blocks_pending_free.
8122 (mark_buffer): Don't mark undo_list.
8123 (gc_sweep): Sweep hash-tables and strings first.
8124 Do free marker blocks that are empty.
8125
8126 2004-05-28 Jim Blandy <jimb@redhat.com>
8127
8128 * regex.c (print_partial_compiled_pattern): Add missing 'break'
8129 after 'case wordend'. For symbeg and symend, print to stderr,
8130 like the other cases.
8131
8132 2004-05-28 Noah Friedman <friedman@splode.com>
8133
8134 * process.c (Fdelete_process): Do not call remove_process.
8135
8136 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8137
8138 * alloc.c (struct backtrace): Remove.
8139 (Fgarbage_collect): Use the new mark_backtrace.
8140
8141 * eval.c (mark_backtrace): New function.
8142
8143 * minibuf.c (run_exit_minibuf_hook): New function.
8144 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
8145 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
8146
8147 2004-05-27 Kim F. Storm <storm@cua.dk>
8148
8149 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
8150 over display properties, e.g. images, that replace buffer text.
8151
8152 2004-05-25 Kim F. Storm <storm@cua.dk>
8153
8154 * alloc.c (marker_blocks_pending_free): New var.
8155 (gc_sweep): Store free marker blocks on that list.
8156 (Fgarbage_collect): Free them after undo-list cleanup.
8157
8158 * process.c (wait_reading_process_input): Check connect_wait_mask
8159 before actually accepting connection in case it has already been
8160 accepted due to recursion.
8161
8162 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8163
8164 * coding.c (Fset_safe_terminal_coding_system_internal):
8165 Set suppress_error in safe_terminal_coding, not terminal_coding.
8166
8167 2004-05-22 Richard M. Stallman <rms@gnu.org>
8168
8169 * alloc.c (Fmake_string): Doc fix.
8170
8171 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
8172 and the alist pairs too.
8173
8174 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
8175
8176 * emacs.c (main): Update copyright year.
8177
8178 * fileio.c (Fread_file_name): Expand DIR if not absolute.
8179
8180 * insdel.c (del_range_2, replace_range): Don't write an anchor
8181 if the gap is empty.
8182
8183 * xdisp.c (try_scrolling): If scroll-up-aggressively or
8184 scroll-down-aggressively is small but positive, put point
8185 near the screen edge.
8186
8187 2004-05-22 Juanma Barranquero <lektu@terra.es>
8188
8189 * keymap.c (Fdefine_key): Doc fix.
8190
8191 2004-05-22 Kim F. Storm <storm@cua.dk>
8192
8193 * alloc.c (struct backtrace): Add debug_on_exit member.
8194 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
8195 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
8196 the removed cons cells.
8197 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
8198 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
8199 any cons cells pointing to unallocated stings.
8200 Do not lisp_free any marker blocks, as there may still be pointers
8201 to them from buffer undo lists at this stage of GC.
8202
8203 * keyboard.c (struct backtrace): Add debug_on_exit member.
8204 (Fcommand_execute): Clear it.
8205
8206 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
8207
8208 * intervals.c (lookup_char_property): Do not prematurely return nil.
8209
8210 2004-05-19 Jim Blandy <jimb@redhat.com>
8211
8212 Add support for new '\_<' and '\_>' regexp operators, matching the
8213 beginning and end of symbols.
8214
8215 * regex.c (enum syntaxcode): Add Ssymbol.
8216 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
8217 (re_opcode_t): New opcodes `symbeg' and `symend'.
8218 (print_partial_compiled_pattern): Print the new opcodes properly.
8219 (regex_compile): Parse the new operators.
8220 (analyse_first): Skip sym(beg|end) (they match only the empty string).
8221 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
8222 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
8223 (re_match_2_internal): Match symbeg and symend.
8224
8225 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
8226
8227 2004-05-19 Kim F. Storm <storm@cua.dk>
8228
8229 * .gdbinit (xsymbol): Fix last change.
8230
8231 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
8232
8233 * .gdbinit (xprintstr): New fun.
8234 (xstring, xprintsym): Use it.
8235
8236 * w32proc.c (create_child): Use INTMASK.
8237
8238 * alloc.c (Fgarbage_collect): Do all the marking before flushing
8239 unmarked elements of the undo list.
8240
8241 2004-05-18 David Ponce <david@dponce.com>
8242
8243 * print.c (print): Reset print_depth before to call print_object.
8244
8245 2004-05-18 Jason Rumney <jasonr@gnu.org>
8246
8247 * w32console.c: Prefix RIF functions with w32con_ to avoid
8248 namespace clash with functions in term.c and w32term.c.
8249
8250 * w32menu.c (add_menu_item, w32_menu_display_help)
8251 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
8252
8253 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
8254
8255 2004-05-18 Eli Zaretskii <eliz@gnu.org>
8256
8257 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
8258
8259 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
8260 with make_number.
8261 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
8262 with XINT.
8263
8264 2004-05-18 Kim F. Storm <storm@cua.dk>
8265
8266 * blockinput.h (INPUT_BLOCKED_P): New macros.
8267
8268 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
8269 (Ftop_level): Unblock input if blocked.
8270
8271 * buffer.h (GET_OVERLAYS_AT): New macro.
8272 * msdos.c (IT_note_mouse_highlight): Use it.
8273 * textprop.c (get_char_property_and_overlay): Use it.
8274 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
8275 * xfaces.c (face_at_buffer_position): Use it.
8276
8277 * print.c (print_object): Increase buf size.
8278
8279 2004-05-17 Jason Rumney <jasonr@gnu.org>
8280
8281 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
8282 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
8283 Lisp_Object using i member.
8284 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
8285 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
8286 consistently.
8287
8288 * w32proc.c (create_child): Use make_number instead of masking pid.
8289
8290 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
8291 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
8292 Use EQ to compare Lisp_Objects.
8293 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
8294
8295 * w32term.c (w32_num_mouse_buttons): Rename from
8296 Vw32_num_mouse_buttons and make it an int.
8297
8298 * w32.c (init_environment): Use it.
8299
8300 * w32fns.c (w32_wnd_proc): Likewise.
8301
8302 * w32proc.c (w32_pipe_read_delay): Rename from
8303 Vw32_pipe_read_delay and make it an int.
8304
8305 * w32.c (_sys_read_ahead): Use it.
8306
8307 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
8308
8309 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
8310
8311 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
8312 (key_event): Don't mix Lisp_Object and int.
8313
8314 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
8315
8316 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
8317 modifiers in language change event.
8318
8319 2004-05-17 Kim F. Storm <storm@cua.dk>
8320
8321 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
8322 Such objects may be freed markers which still exist on an undo list.
8323
8324 2004-05-16 Juanma Barranquero <lektu@terra.es>
8325
8326 * data.c (Fset_default): Make argument names match their use in
8327 docstring.
8328
8329 2004-05-15 Andreas Schwab <schwab@suse.de>
8330
8331 * emacs.c (gdb_array_mark_flag): Define.
8332 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
8333
8334 2004-05-15 Eli Zaretskii <eliz@gnu.org>
8335
8336 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
8337 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
8338 defined for the MS-DOS build.
8339
8340 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
8341
8342 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
8343
8344 2004-05-14 Kenichi Handa <handa@m17n.org>
8345
8346 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
8347
8348 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8349
8350 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
8351 section to frame.c section.
8352 (Fxw_display_color_p, Fx_file_dialog): Declare if
8353 HAVE_WINDOW_SYSTEM defined.
8354
8355 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
8356
8357 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
8358
8359 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
8360 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
8361 (XTread_socket): Fix int/Lisp_Object mixup.
8362 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
8363
8364 * macterm.h (struct frame, struct face, struct image)
8365 (display_x_get_resource, Fx_display_color_p)
8366 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
8367 Add prototypes.
8368
8369 2004-05-14 Kim F. Storm <storm@cua.dk>
8370
8371 * process.c (wait_reading_process_input): Make reentrant.
8372 Make Available and Connecting non-static. Save and restore value
8373 of waiting_for_user_input_p.
8374
8375 2004-05-13 Kim F. Storm <storm@cua.dk>
8376
8377 * keyboard.c (mark_kboards): Don't mark x and y members
8378 that are overloaded in selection request events.
8379
8380 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8381
8382 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
8383
8384 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
8385
8386 * window.c (Fdisplay_buffer, Fsplit_window)
8387 (split-height-threshold): Doc fix.
8388
8389 2004-05-13 Juanma Barranquero <lektu@terra.es>
8390
8391 * xfaces.c (Ftty_supports_face_attributes_p)
8392 (Finternal_copy_lisp_face): Fix typo in docstring.
8393 (Finternal_get_lisp_face_attribute): Fix docstring.
8394
8395 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8396
8397 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
8398
8399 2004-05-11 Steven Tamm <steventamm@mac.com>
8400
8401 * macfns.c (Fx_create_frame): Default to using tool-bar by
8402 setting tool-bar-lines to 1 in default-frame-alist.
8403
8404 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8405
8406 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
8407 (xpm_get_color_table_v, xpm_make_color_table_h)
8408 (xpm_put_color_table_h, xpm_get_color_table_h)
8409 (xpm_str_to_color_key, xpm_load_image, xpm_load)
8410 (syms_of_image): Support XPM on Carbon Emacs. Does not
8411 depend on libXpm, but only supports XPM version 3 without extensions.
8412
8413 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8414
8415 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
8416 instead of FRAME_X_P
8417
8418 2004-05-11 Kim F. Storm <storm@cua.dk>
8419
8420 * process.c (read_process_output): Grow decoding_buf when needed;
8421 this could cause a crash in allocate_string and compact_small_strings.
8422
8423 2004-04-29 Jim Blandy <jimb@redhat.com>
8424
8425 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
8426 against proper opcode.
8427
8428 2004-05-10 Juanma Barranquero <lektu@terra.es>
8429
8430 * process.c (Fstart_process): Fix docstring.
8431
8432 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
8433 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
8434 (Fsplit_char, Fchar_charset): Make argument names match their use
8435 in docstring.
8436
8437 2004-05-10 Richard M. Stallman <rms@gnu.org>
8438
8439 * print.c (print_preprocess): Use being_printed, loop_count and
8440 halftail to detect overdeep nesting and cyclic cdr chains.
8441
8442 2004-05-10 Andreas Schwab <schwab@suse.de>
8443
8444 * lisp.h (Fmake_symbolic_link): Declare.
8445
8446 * fileio.c (Frename_file): Remove extra argument in call to
8447 Fmake_symbolic_link.
8448
8449 2004-05-10 Kim F. Storm <storm@cua.dk>
8450
8451 * xdisp.c (calc_line_height_property): Use string position when
8452 object is a string.
8453
8454 2004-05-10 Kenichi Handa <handa@m17n.org>
8455
8456 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
8457 inhibit-modification-hooks to t temporarily before calling
8458 Ferase_buffer.
8459
8460 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
8461 inhibit-modification-hooks to t temporarily before calling
8462 Ferase_buffer.
8463
8464 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
8465 inhibit-modification-hooks to t temporarily before calling
8466 Ferase_buffer.
8467
8468 * fns.c (count_combining): Delete it.
8469 (concat): Don't check combining bytes.
8470
8471 2004-05-09 Jason Rumney <jasonr@gnu.org>
8472
8473 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
8474 (globals_of_w32fns): Set it.
8475
8476 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
8477
8478 * data.c (Fquo): Simplify.
8479
8480 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
8481
8482 * data.c (Fquo): If any argument is float, do the computation in
8483 floating point.
8484
8485 2004-05-08 Juanma Barranquero <lektu@terra.es>
8486
8487 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8488 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8489 Fix spelling of Emacs on docstring.
8490 (Fset_process_coding_system, Fprocess_coding_system)
8491 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8492 Make argument names match their use in docstring.
8493 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8494 Fix docstring.
8495
8496 * editfns.c (Finsert_buffer_substring): Make argument names match their
8497 use in docstring.
8498
8499 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8500
8501 2004-05-07 Steven Tamm <steventamm@mac.com>
8502
8503 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8504 around call to ReceiveEvent to avoid certain crashes.
8505
8506 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8507
8508 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8509 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8510 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8511 Save/restore the current graphics port and device handle when
8512 drawing into an offscreen graphics world.
8513
8514 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8515 (gif_load): Likewise.
8516
8517 2004-05-07 Juanma Barranquero <lektu@terra.es>
8518
8519 * window.c (Fset_window_buffer): Fix docstring.
8520
8521 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8522
8523 * emacs.c (main) [VMS]: Fix var ref.
8524
8525 2004-05-06 Romain Francoise <romain@orebokech.com>
8526
8527 * data.c (Fsetq_default): Fix docstring.
8528
8529 2004-05-06 Jason Rumney <jasonr@gnu.org>
8530
8531 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8532 to avoid name clash.
8533
8534 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8535
8536 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8537 (Frename_file): Handle renaming of symlinks across file systems.
8538 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8539
8540 2004-05-04 Kim F. Storm <storm@cua.dk>
8541
8542 * xdisp.c (Qtotal): New var.
8543 (syms_of_xdisp): Intern and staticpro it.
8544 (calc_line_height_property): New arg total. Set it if
8545 line-spacing property has format (total . VALUE).
8546 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8547 Handle total line-spacing property.
8548
8549 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8550
8551 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
8552 "under" scroll bar when size/position changes.
8553
8554 2004-05-03 Jason Rumney <jasonr@gnu.org>
8555
8556 * makefile.nt: Remove.
8557
8558 2004-05-02 Eli Zaretskii <eliz@gnu.org>
8559
8560 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
8561 Avoid compiler warnings.
8562
8563 * Makefile.in (region-cache.o): Depend on config.h.
8564
8565 2004-05-02 Romain Francoise <romain@orebokech.com>
8566
8567 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
8568 with continuation lines, too.
8569
8570 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
8571
8572 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
8573
8574 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8575
8576 * xdisp.c (calc_line_height_property): YAILOM (yet another
8577 int/Lisp_Object mixup).
8578
8579 2004-05-01 Eli Zaretskii <eliz@gnu.org>
8580
8581 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
8582 undo bad effect of pack(4) in some versions of system headers.
8583
8584 2004-05-01 Jason Rumney <jasonr@gnu.org>
8585
8586 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
8587
8588 2004-04-30 Kim F. Storm <storm@cua.dk>
8589
8590 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
8591 (syms_of_buffer) <cursor-type>: Doc fix.
8592
8593 * dispextern.h (struct it): Remove member use_default_face.
8594 Add members override_ascent, override_descent, override_boff.
8595
8596 * xdisp.c (init_iterator): Handle line-spacing float value.
8597 Initialize override_ascent member.
8598 (append_space_for_newline): Reset override_ascent.
8599 Remove use_default_face.
8600 (calc_line_height_property): New function to calculate value of
8601 line-height and line-spacing properties. Look at overlays, too.
8602 Set override_ascent, override_descent, override_boff members when
8603 using another face than the current face. Float values are now
8604 relative to the frame default font, by default; accept a cons
8605 of ratio and face name to specify value relative to a specific face.
8606 (x_produce_glyphs): Use calc_line_height_property.
8607 Use override_ascent etc. when set to handle different face heights.
8608 A negative line-spacing property value is interpreted as a total
8609 line height, rather than inter-line spacing.
8610 (note_mouse_highlight): Allocate room for 40 overlays initially.
8611
8612 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8613
8614 * data.c (Fsubr_name): New fun.
8615 (syms_of_data): Defsubr it.
8616
8617 2004-04-29 Kim F. Storm <storm@cua.dk>
8618
8619 * xdisp.c (null_glyph_slice): New var.
8620 (append_glyph, append_composite_glyph, append_stretch_glyph):
8621 Use it to initialize glyph slice.
8622
8623 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8624
8625 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
8626 (on_hot_spot_p): Make sure we always return a value.
8627 (Flookup_image_map): Remove unused var ix and iy.
8628 (note_mode_line_or_margin_highlight): Remove unused var `image'.
8629
8630 2004-04-27 Eli Zaretskii <eliz@gnu.org>
8631
8632 * msdos.c (init_environment): If one of the TMP... environment
8633 variables is set to a drive letter without a trailing slash,
8634 append a slash.
8635
8636 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
8637
8638 * editfns.c (lisp_time_argument): Provide externally.
8639
8640 * fileio.c (Fset_file_times): New function.
8641 (syms_of_fileio): Intern and staticpro it.
8642
8643 2004-04-27 Kim F. Storm <storm@cua.dk>
8644
8645 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
8646 header line strings.
8647
8648 * dispextern.h (struct it): New member use_default_face.
8649
8650 * xdisp.c (Qline_height): New variable.
8651 (syms_of_xdisp): Intern and staticpro it.
8652 (append_space_for_newline): Partially undo 2004-04-25 change;
8653 add default_face_p arg, and restore callers.
8654 Clear it->use_default_face after use.
8655 (x_produce_glyphs): Set default font for ascii char if
8656 it->use_default_font is set. Change line-spacing property to set
8657 just extra line spacing. Handle new line-height property.
8658
8659 2004-04-26 Andreas Schwab <schwab@suse.de>
8660
8661 * print.c (print_object): Print non-ascii characters in bool
8662 vector representation as octal escapes.
8663
8664 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
8665 * print.c (print_object): Use it instead of BITS_PER_CHAR for
8666 bool vectors.
8667 * lread.c (read1): Likewise.
8668 * alloc.c (Fmake_bool_vector): Likewise.
8669 * data.c (Faref, Faset): Likewise.
8670 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
8671 (mapcar1): Likewise.
8672
8673 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8674
8675 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
8676
8677 2004-04-26 Miles Bader <miles@gnu.org>
8678
8679 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
8680
8681 2004-04-26 Juanma Barranquero <lektu@terra.es>
8682
8683 * buffer.c (Fpop_to_buffer): Fix docstring.
8684
8685 2004-04-26 Steven Tamm <steventamm@mac.com>
8686
8687 * lread.c (init_lread): Don't display missing lisp directory
8688 warnings with Carbon Emacs because self-contained bundled Emacs
8689 may be built without correct installation path.
8690
8691 2004-04-25 Kim F. Storm <storm@cua.dk>
8692
8693 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8694
8695 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8696
8697 * xdisp.c (append_space_for_newline): Rename from append_space.
8698 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
8699 (x_produce_glyphs): Handle line-spacing property on newline char.
8700 If value is t, adjust ascent and descent to fit current row height.
8701 If value is an integer or float, set extra_line_spacing to integer
8702 value, or to float value x current line height.
8703
8704 2004-04-23 Kenichi Handa <handa@m17n.org>
8705
8706 * fontset.c (Finternal_char_font): If POSITION is nil, return
8707 font for displaying CH with the default face.
8708
8709 2004-04-23 Juanma Barranquero <lektu@terra.es>
8710
8711 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
8712
8713 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8714
8715 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
8716 Don't make assumptions about the relative place of i and val.
8717 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
8718
8719 2004-04-21 Kim F. Storm <storm@cua.dk>
8720
8721 * dispextern.h (struct glyph_slice): New struct.
8722 (struct glyph): New member slice.
8723 (GLYPH_SLICE_EQUAL_P): New macro.
8724 (GLYPH_EQUAL_P): Use it.
8725 (struct glyph_string): New member slice.
8726 (struct it_slice): New struct.
8727 (struct it): New member slice, add member to stack too.
8728 New member constrain_row_ascent_descent_p.
8729 (image_ascent): Add prototype.
8730
8731 * dispnew.c (buffer_posn_from_coords): Return full image width
8732 and height even for image slices (posn is relative to full image).
8733 (marginal_area_string): Adjust x0,y0 for image slice.
8734
8735 * image.c (image_ascent): Add slice arg; calculate ascent for
8736 image slice (or full image).
8737
8738 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
8739 (syms_of_keyboard): Defsubr them.
8740
8741 * lisp.h (pos_visible_p): Fix prototype.
8742
8743 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8744 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8745 (x_draw_image_foreground, x_draw_image_relief)
8746 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8747 Draw sliced images.
8748
8749 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
8750 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8751 (x_draw_image_foreground, x_draw_image_relief)
8752 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
8753 Draw sliced images.
8754
8755 * w32term.h (image_ascent): Remove prototype.
8756
8757 * window.c (Fpos_visible_in_window_p): Return pixel position if
8758 PARTIALLY arg is non-nil. Simplify. Doc fix.
8759 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
8760 to return/set vscroll in pixels.
8761
8762 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
8763
8764 * xdisp.c (Qslice): New variable.
8765 (syms_of_xdisp): Intern and staticpro it.
8766 (pos_visible_p): Return pixel position in new x and y args.
8767 (init_iterator): Reset it->slice info.
8768 (handle_display_prop): Parse (slice ...) property.
8769 (push_it, pop_it): Save/restore slice info.
8770 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
8771 force repositioning of tall row if window is vscrolled, as that
8772 would reset vscroll.
8773 (append_space): Set it->constrain_row_ascent_descent_p to avoid
8774 increasing row height if row is non-empty.
8775 (fill_image_glyph_string): Copy slice info.
8776 (take_vertical_position_into_account): Simplify.
8777 (produce_image_glyph): Handle iterator slice info, setup glyph
8778 slice info. Do not force minimum line height.
8779 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
8780 do not increase height (ascent/descent) of non-empty row when
8781 adding normal character glyph; instead reduce glyph ascent/descent
8782 appropriately; if row is higher than current glyph, adjust glyph
8783 descent/ascent to reposition glyph within the existing row.
8784 Likewise, when char is newline, only set ascent/descent if row is
8785 currently empty.
8786 (note_mouse_highlight): Handle hotspots with sliced image.
8787
8788 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8789 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8790 (x_draw_image_foreground, x_draw_image_relief)
8791 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8792 Draw sliced images.
8793
8794 * xterm.h (image_ascent): Remove prototype.
8795
8796 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
8797
8798 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
8799
8800 2004-04-20 John Paul Wallington <jpw@gnu.org>
8801
8802 * fns.c (Fassoc, Feql): Fix indentation.
8803
8804 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
8805
8806 2004-04-19 John Paul Wallington <jpw@gnu.org>
8807
8808 * fns.c (Feql): New function.
8809 (syms_of_fns): Defsubr it.
8810
8811 2004-04-18 Jason Rumney <jasonr@gnu.org>
8812
8813 * w32select.c (Fw32_set_clipboard_data): Get sequence number
8814 after closing the clipboard.
8815
8816 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
8817
8818 * buffer.c (Fbuffer_base_buffer): Doc fix.
8819
8820 2004-04-17 Kim F. Storm <storm@cua.dk>
8821
8822 * keymap.c (Fkey_description): Add optional PREFIX arg.
8823 Combine prefix with KEYS to make up the full key sequence to describe.
8824 Correlate meta_prefix_char and following (simple) key to describe
8825 as meta modifier. All callers changed.
8826 (describe_map): Rename arg `keys' to `prefix'. Remove local
8827 `elt_prefix' var. Use Fkey_description with prefix instead of
8828 elt_prefix combined with Fsingle_key_description.
8829 (describe_vector): Declare static. Replace arg `elt_prefix' with
8830 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
8831 if !KEYMAP_P. Use Fkey_description with prefix instead of
8832 Fsingle_key_description.
8833
8834 * keymap.h (Fkey_description): Fix prototype.
8835 (describe_vector): Remove prototype.
8836
8837 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
8838
8839 * image.c (PNG_BG_COLOR_SHIFT): Remove.
8840 (png_load): Fix calculation of transparent background color on X
8841 and W32 platforms.
8842
8843 2004-04-16 Juanma Barranquero <lektu@terra.es>
8844
8845 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
8846 not too large before computing how much to scroll.
8847
8848 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
8849
8850 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
8851
8852 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
8853
8854 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
8855 Add hyperlink to Elisp manual to the docstring.
8856
8857 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
8858
8859 * callint.c (fix_command): Use XDCR.
8860
8861 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
8862
8863 * window.c (Fget_lru_window): Doc fix.
8864
8865 2004-04-14 Kim F. Storm <storm@cua.dk>
8866
8867 * editfns.c (Fformat): Fix allocation size of precision array.
8868
8869 * dispnew.c (update_window): Only set changed_p if
8870 scrolling_window actually did scroll.
8871 (scrolling_window): Only return 1 if we actually did scroll.
8872
8873 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
8874 height to glyph height when cursor row is not fully visible.
8875 (make_cursor_line_fully_visible): Add FORCE_P arg to return
8876 failure in case row is higher than window. Callers changed.
8877 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
8878 Try to scroll partially visible, higher-than-window cursor row.
8879 (redisplay_window): Always try to scroll partially visible,
8880 higher-than-window cursor row - both initially and again with
8881 centering_position = 0.
8882 Clear desired matrix before retrying with centering_position = 0.
8883
8884 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
8885
8886 * syntax.c (scan_lists): Simplify backward string scan.
8887 Fix off-by-one boundary check for string and comment fences.
8888
8889 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
8890
8891 * sheap.c, unexcw.c: New files.
8892
8893 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
8894
8895 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
8896 base buffer has been killed. Correct the error message if the
8897 base buffer does not exist.
8898
8899 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
8900
8901 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
8902 Cygwin itself. Add support for Xaw3d scrollbars.
8903
8904 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
8905
8906 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
8907
8908 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
8909 before Cygwin unexec.
8910
8911 * Makefile.in: Link changes for Cygwin unexec() support.
8912
8913 2004-04-12 Andreas Schwab <schwab@suse.de>
8914
8915 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
8916
8917 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
8918
8919 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
8920 IGNORE argument equals NAME. Doc fix.
8921
8922 2004-04-11 Masatake YAMATO <jet@gyve.org>
8923
8924 * buffer.c (fix_start_end_in_overlays): Make overlays
8925 empty if they are backwards.
8926
8927 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8928
8929 * xfaces.c (face_color_supported_p): Fix compilation without X11.
8930
8931 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
8932
8933 * doc.c (Fsnarf_documentation): Ignore new file name entries.
8934
8935 2004-04-06 Kim F. Storm <storm@cua.dk>
8936
8937 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8938 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
8939
8940 * w32term.c (w32_read_socket): Set mouse_face_hidden after
8941 clearing highlight.
8942
8943 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8944
8945 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
8946 clearing highlight.
8947
8948 * indent.c (vmotion): Do not reserve one column for continuation
8949 marks on window frames.
8950
8951 2004-04-04 Eli Zaretskii <eliz@gnu.org>
8952
8953 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
8954 from GCC.
8955
8956 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8957
8958 * .gdbinit-union: Remove.
8959
8960 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
8961 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
8962 ($nonvalbits): Remove.
8963 ($valmask): Set it by calling xreload to avoid redundancy.
8964
8965 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
8966 (gdb_emacs_intbits): Remove.
8967
8968 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8969
8970 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
8971
8972 2004-03-30 Kenichi Handa <handa@m17n.org>
8973
8974 * editfns.c (Fformat): Fix initialization of the array info.
8975
8976 2004-03-30 Kim F. Storm <storm@cua.dk>
8977
8978 * xterm.c (x_mouse_click_focus_ignore_position): New var.
8979 (syms_of_xterm): DEFVAR_BOOL it.
8980 (ignore_next_mouse_click_timeout): New var.
8981 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
8982 Use it to filter mouse clicks following focus event.
8983
8984 2004-03-29 David Ponce <david@dponce.com>
8985
8986 * callint.c (Fcall_interactively): Fix last change.
8987
8988 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
8989
8990 * eval.c (Fcommandp): Simplify.
8991
8992 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
8993 Extend to handle all kinds of functions.
8994
8995 * lisp.h (Finteractive_form): Declare.
8996
8997 * callint.c (Fcall_interactively): Use it.
8998
8999 2004-03-26 Kim F. Storm <storm@cua.dk>
9000
9001 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
9002 to catch errors in calc_pixel_width_or_height during redisplay.
9003
9004 2004-03-26 Masatake YAMATO <jet@gyve.org>
9005
9006 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
9007
9008 * lisp.h (fix_start_end_in_overlays): Likewise.
9009
9010 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
9011
9012 * editfns.c (Ftranspose_regions): Likewise.
9013
9014 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9015
9016 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
9017
9018 2004-03-19 Richard M. Stallman <rms@gnu.org>
9019
9020 * s/sol2-6.h: Delete previous change.
9021
9022 2004-03-19 Kim F. Storm <storm@cua.dk>
9023
9024 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
9025 to_charpos corresponds to newline in right fringe. Use local
9026 BUFFER_POS_REACHED_P macro.
9027
9028 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9029
9030 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
9031 to compile on non-window system.
9032
9033 2004-03-19 Kim F. Storm <storm@cua.dk>
9034
9035 * dispextern.h (calc_pixel_width_or_height): Add prototype.
9036
9037 * image.c (Qcenter): Move to xdisp.c.
9038
9039 * xdisp.c (Qcenter): Declare here.
9040 (syms_of_xdisp): Intern and staticpro it.
9041 (handle_single_display_prop): Allow space display property on all
9042 platforms.
9043 (display_mode_line): Set mode_line_p before displaying line.
9044 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
9045 handling. Remove complex cases for fringes and scroll-bars.
9046 Add left, right, and center alignment positions. Add text (area)
9047 width/height. Return width or height for image specs.
9048 (produce_stretch_glyph): Improve handling of :align-to. Is now
9049 relative to left of text area by default, but other base offsets
9050 can be specified -- also for text lines.
9051
9052 * term.c (produce_glyphs): Handle IT_STRETCH.
9053 (produce_stretch_glyph): New function to handle space width and
9054 align-to display properties on non-window systems.
9055
9056 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9057
9058 * fileio.c (Fread_file_name): Set completion-ignore-case for
9059 case-insensitive systems.
9060
9061 2004-03-14 Masatake YAMATO <jet@gyve.org>
9062
9063 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
9064 when keymap and cursor are setup.
9065
9066 2004-03-14 Steven Tamm <steventamm@mac.com>
9067
9068 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9069
9070 2004-03-14 Kim F. Storm <storm@cua.dk>
9071
9072 * dispextern.h (x_find_image_file): Add prototype.
9073
9074 * image.c (x_find_image_file): Make extern.
9075
9076 * xfns.c (x_find_image_file): Remove prototype.
9077
9078 2004-03-13 Eli Zaretskii <eliz@gnu.org>
9079
9080 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
9081
9082 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
9083
9084 2004-03-12 Richard M. Stallman <rms@gnu.org>
9085
9086 * fns.c (internal_equal): New arg PROPS controls comparing
9087 text properties. All callers changed.
9088 (Fequal_including_properties): New function.
9089 (syms_of_fns): defsubr it.
9090
9091 2004-03-12 Kim F. Storm <storm@cua.dk>
9092
9093 Fix image support on MAC. From YAMAMOTO Mitsuharu.
9094
9095 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
9096 (image_background, image_background_transparent): Fix prototypes.
9097
9098 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
9099
9100 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
9101 (x_query_font, x_find_ccl_program, x_set_window_size)
9102 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9103 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9104 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
9105
9106 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
9107 (x_query_font, x_find_ccl_program, x_set_window_size)
9108 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9109 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9110 (mac_draw_line_to_pixmap): Add prototypes.
9111
9112 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9113
9114 * macterm.c (XTread_socket): Fix mouse click on tool bar.
9115
9116 2004-03-11 Kim F. Storm <storm@cua.dk>
9117
9118 * dispextern.h: Move image related prototypes from xfns.c section
9119 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
9120 HAVE_X_WINDOWS.
9121
9122 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
9123 Move gtkutil.o to new GTK_OBJ list.
9124 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
9125 (GTK_OBJ) [USE_GTK]: New declaration.
9126 (obj): Add $(GTK_OBJ) to list.
9127
9128 2004-03-11 Steven Tamm <steventamm@mac.com>
9129
9130 * image.c [MAC_OSX]: Include sys/stat.h.
9131
9132 * macfns.c (syms_of_macfns): Remove definitions of things now
9133 defined in image.c.
9134
9135 2004-03-11 Kim F. Storm <storm@cua.dk>
9136
9137 The following changes consolidates the identical/similar image
9138 support code previously found in xfns.c, w32fns.c, and macfns.c
9139 into a new file image.c.
9140
9141 * makefile.w32-in (OBJ1): Add image.o.
9142 ($(BLD)/image.$(O)): Add dependencies.
9143
9144 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
9145 (image.o): Add dependencies.
9146
9147 * image.c: New file with consolidated image support code.
9148 (COLOR_TABLE_SUPPORT): New define to control whether
9149 color table support is available (X only).
9150 (Bitmap_Record): Common name for x_bitmap_record,
9151 w32_bitmap_record, and mac_bitmap_record.
9152 (XImagePtr): Common name for pointer to XImage or equivalent.
9153 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
9154 to XImagePtr on X+MAC, and to HDC on W32.
9155 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
9156 (NO_PIXMAP): Common name for "None" or equivalent.
9157 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
9158 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
9159 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
9160 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
9161 Define with suitable equivalents on W32 and MAC for code sharing.
9162 (XDrawLine): Define on MAC for code sharing.
9163 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
9164 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
9165 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9166 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9167 (x_reference_bitmap, x_create_bitmap_from_data)
9168 (x_create_bitmap_from_file, x_destroy_bitmap)
9169 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9170 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9171 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9172 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9173 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9174 (define_image_type, lookup_image_type, valid_image_p)
9175 (image_error, enum image_value_type, struct image_keyword)
9176 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9177 (make_image, free_image, prepare_image_for_display, image_ascent)
9178 (four_corners_best, image_background, image_background_transparent)
9179 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9180 (make_image_cache, free_image_cache, clear_image_cache)
9181 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9182 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9183 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9184 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9185 (init_image_func_pointer, image_load_quartz2d)
9186 (struct ct_color, init_color_table, free_color_table)
9187 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9188 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9189 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9190 (x_disable_image, x_build_heuristic_mask)
9191 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9192 (TIFF support, GIF support, Ghostscript support): Consolidate image
9193 code from xfns.c, w32fns.c, and macfns.c.
9194 (syms_of_image): Consolidate image related symbol setup here.
9195 (init_image): Consolidate image related initializations here.
9196
9197 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
9198 and init_image. Remove call to init_xfns.
9199
9200 * macterm.h (struct mac_bitmap_record): Add file member.
9201 Not currently used, but simplifies code sharing.
9202
9203 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9204 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9205 (x_reference_bitmap, x_create_bitmap_from_data)
9206 (x_create_bitmap_from_file, x_destroy_bitmap)
9207 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9208 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9209 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9210 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9211 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9212 (define_image_type, lookup_image_type, valid_image_p)
9213 (image_error, enum image_value_type, struct image_keyword)
9214 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9215 (make_image, free_image, prepare_image_for_display, image_ascent)
9216 (four_corners_best, image_background, image_background_transparent)
9217 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9218 (make_image_cache, free_image_cache, clear_image_cache)
9219 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9220 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9221 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9222 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9223 (init_image_func_pointer, image_load_quartz2d)
9224 (struct ct_color, init_color_table, free_color_table)
9225 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9226 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9227 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9228 (x_disable_image, x_build_heuristic_mask)
9229 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9230 (TIFF support, GIF support, Ghostscript support): Merge with image
9231 code from xfns.c and macfns.c into image.c.
9232 (syms_of_xfns): Move image related symbols to image.c.
9233 (init_external_image_libraries, init_xfns): Remove; initialization
9234 moved to init_image in image.c.
9235
9236 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9237 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9238 (x_reference_bitmap, x_create_bitmap_from_data)
9239 (x_create_bitmap_from_file, x_destroy_bitmap)
9240 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9241 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9242 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9243 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9244 (define_image_type, lookup_image_type, valid_image_p)
9245 (image_error, enum image_value_type, struct image_keyword)
9246 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9247 (make_image, free_image, prepare_image_for_display, image_ascent)
9248 (four_corners_best, image_background, image_background_transparent)
9249 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9250 (make_image_cache, free_image_cache, clear_image_cache)
9251 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9252 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9253 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9254 (struct ct_color, init_color_table, free_color_table)
9255 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9256 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9257 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9258 (x_disable_image, x_build_heuristic_mask)
9259 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9260 (TIFF support, GIF support, Ghostscript support): Merge with image
9261 code from xfns.c and macfns.c into image.c.
9262 (syms_of_xfns): Move image related symbols to image.c.
9263 (init_external_image_libraries, init_xfns): Remove; initialization
9264 moved to init_image in image.c.
9265
9266 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9267 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9268 (x_reference_bitmap, x_create_bitmap_from_data)
9269 (x_create_bitmap_from_file, x_destroy_bitmap)
9270 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9271 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9272 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9273 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9274 (define_image_type, lookup_image_type, valid_image_p)
9275 (image_error, enum image_value_type, struct image_keyword)
9276 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9277 (make_image, free_image, prepare_image_for_display, image_ascent)
9278 (four_corners_best, image_background, image_background_transparent)
9279 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9280 (make_image_cache, free_image_cache, clear_image_cache)
9281 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9282 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9283 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9284 (struct ct_color, init_color_table, free_color_table)
9285 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9286 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9287 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9288 (x_disable_image, x_build_heuristic_mask)
9289 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9290 (TIFF support, GIF support, Ghostscript support): Merge with
9291 w32fns.c and macfns.c image code into image.c.
9292 (syms_of_xfns): Move image related symbols to image.c.
9293 (init_xfns): Remove; initialization moved to init_image in image.c.
9294
9295 * lisp.h (syms_of_image, init_image): Add protoypes.
9296 (init_xfns): Remove prototype.
9297
9298 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9299 (x_reference_bitmap, x_create_bitmap_from_data)
9300 (x_create_bitmap_from_file, x_destroy_bitmap)
9301 (x_create_bitmap_mask): Move prototypes from dispextern.h.
9302 (gamma_correct) [MAC_OS]: Add prototype.
9303
9304 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9305 (x_reference_bitmap, x_create_bitmap_from_data)
9306 (x_create_bitmap_from_file, x_destroy_bitmap)
9307 (x_create_bitmap_mask): Move prototypes to dispextern.h.
9308
9309 2004-03-09 Kenichi Handa <handa@etlken2>
9310
9311 * coding.c (decode_coding_emacs_mule): Handle insufficent source
9312 correctly.
9313
9314 2004-03-04 Richard M. Stallman <rms@gnu.org>
9315
9316 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
9317
9318 * window.c (Fdisplay_buffer): Doc fix.
9319
9320 * buffer.c (Fpop_to_buffer): Doc fix.
9321
9322 2004-03-03 Kim F. Storm <storm@cua.dk>
9323
9324 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
9325
9326 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
9327
9328 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
9329
9330 2004-03-02 Richard M. Stallman <rms@gnu.org>
9331
9332 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
9333
9334 2004-03-02 Kenichi Handa <handa@m17n.org>
9335
9336 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
9337
9338 2004-03-02 Kim F. Storm <storm@cua.dk>
9339
9340 * window.h (struct window): New member overlay_arrow_bitmap.
9341
9342 * window.c (make_window): Initialize overlay_arrow_bitmap.
9343
9344 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
9345 implement and integrate multiple overlay arrows with redisplay.
9346 (syms_of_xdisp): DEFVAR_LISP and initialize it.
9347 (last_arrow_position, last_arrow_string): Replace by properties.
9348 (Qlast_arrow_position, Qlast_arrow_string)
9349 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
9350 (syms_of_xdisp): Intern and staticpro them.
9351 (overlay_arrow_string_or_property, update_overlay_arrows)
9352 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
9353 (overlay_arrow_at_row): New functions for multiple overlay arrows.
9354 (redisplay_internal): Use them instead of directly accessing
9355 Voverlay_arrow_position etc. for multiple overlay arrows.
9356 (mark_window_display_accurate): Use update_overlay_arrows.
9357 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
9358 (try_window_id): Use overlay_arrows_changed_p.
9359 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
9360 (display_line): Use overlay_arrow_at_row to check multiple
9361 overlay arrows, and get relevant overlay-arrow-string and
9362 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
9363 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
9364 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
9365
9366 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
9367 (update_window_fringes): Remove unused code.
9368
9369 2004-03-01 Jason Rumney <jasonr@gnu.org>
9370
9371 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
9372
9373 2004-03-01 Juanma Barranquero <lektu@terra.es>
9374
9375 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
9376
9377 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
9378
9379 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9380
9381 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
9382 how many colors can be displayed.
9383
9384 2004-03-01 Kenichi Handa <handa@m17n.org>
9385
9386 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
9387 correctly.
9388
9389 2004-02-28 Kim F. Storm <storm@cua.dk>
9390
9391 * dispnew.c (update_window): Update header line also if there are
9392 no other changes in window (move code after set_cursor label).
9393
9394 * lisp.h (mark_window_display_accurate): Remove prototype.
9395
9396 * window.c (window_loop, Fforce_window_update): Force mode line
9397 updates by setting prevent_redisplay_optimizations_p and
9398 update_mode_lines.
9399
9400 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9401
9402 * xfns.c (x_window): Fix indentation.
9403
9404 * xterm.c (x_calc_absolute_position): Call x_real_positions
9405 to get WM window sizes and use those to calculate position.
9406 (x_set_offset): Remove code commented out.
9407
9408 2004-02-28 Miles Bader <miles@gnu.org>
9409
9410 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
9411
9412 2004-02-28 Kim F. Storm <storm@cua.dk>
9413
9414 * keyboard.c (kbd_buffer_store_event_hold): New function to store
9415 an event into kbd fifo, but with special handling of quit event;
9416 a quit event is saved for later, and further events are discarded
9417 until the saved quit event has been processed.
9418 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
9419 (gen_help_event): Store help event in kbd fifo.
9420 (NREAD_INPUT_EVENTS): Remove.
9421 (read_avail_input): Adapt to new read_socket_hook interface.
9422 Remove allocation and initialization of local input_event buffer,
9423 as read_socket_hook stores events directly in fifo. Allocate and
9424 initialize local hold_quit event to handle postponed quit event
9425 (and store it if set by kbd_buffer_store_event_hold).
9426
9427 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
9428 (gen_help_event): Fix prototype.
9429
9430 * macterm.c (XTread_socket): Remove bufp_r and
9431 numcharsp args. Add hold_quit arg.
9432 Rework to use just one, local, inev input_event. Store inev
9433 directly in fifo using kbd_buffer_store_event_hold.
9434
9435 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
9436 (read_input_waiting): Adapt to new read_socket_hook interface.
9437 Remove allocation and initialization of local input_event buffer,
9438 as read_socket_hook stores events directly in fifo. Allocate and
9439 initialize local hold_quit event to handle postponed quit event
9440 (and store it if set by kbd_buffer_store_event_hold).
9441
9442 * term.c (read_socket_hook): Fix arg list.
9443
9444 * termhooks.h (read_socket_hook): Fix prototype.
9445
9446 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
9447 numcharsp args. Add hold_quit arg.
9448 Rework to use just one, local, inev input_event. Store inev
9449 directly in fifo using kbd_buffer_store_event_hold.
9450
9451 * w32inevt.h (w32_console_mouse_position): Fix prototype.
9452
9453 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
9454 Add hold_quit arg. Rework to use just one, local, inev
9455 input_event. Store inev directly in fifo using
9456 kbd_buffer_store_event_hold. Update count in one place.
9457 Postpone call to gen_help_event until inev is stored; use new
9458 local do_help for this.
9459 Remove local emacs_event in handing of ButtonPress event; just use
9460 inev instead (so no reason to copy it later).
9461
9462 * xsmfns.c (x_session_check_input): Remove numchars arg.
9463
9464 * xterm.c (x_focus_changed, x_detect_focus_change):
9465 Remove numchars arg. Always store event into bufp arg.
9466 Return nothing. Callers changed accordingly.
9467 (glyph_rect): Simplify.
9468 (STORE_KEYSYM_FOR_DEBUG): New macro.
9469 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
9470 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
9471 (current_hold_quit) [USE_GTK]: Add.
9472 (event_handler_gdk): Adapt to new handle_one_xevent.
9473 (handle_one_xevent): Remove bufp_r and numcharsp args.
9474 Add hold_quit arg. Rework to use just one, local, inev
9475 input_event. Store inev directly in fifo using
9476 kbd_buffer_store_event_hold. Update count in one place.
9477 Postpone call to gen_help_event until inev is stored; use new
9478 local do_help for this.
9479 Simplify handling of keysyms (consolidate common code). Fix bug
9480 where count was updated with nchars instead of nbytes.
9481 Remove local emacs_event in handing of ButtonPress event; just use
9482 inev instead (so no reason to copy it later).
9483 Remove `out' label. Rename label `ret' to `done'; add various
9484 `goto done' to clarify code flow in deeply nested blocks.
9485 (x_dispatch_event): Simplify as handle_one_xevent now calls
9486 kbd_buffer_store_event itself.
9487 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9488 arg. Call handle_one_xevent with new arglist. Store event from
9489 x_session_check_input in fifo.
9490 [USE_GTK]: Setup current_hold_quit.
9491 Decrement handling_signal before unblocking input.
9492 (x_initialize) [USE_GTK]: Initialize current_count.
9493
9494 * xterm.h (x_session_check_input): Fix prototype.
9495
9496 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9497
9498 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9499
9500 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9501 macgui.h).
9502
9503 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9504
9505 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9506 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9507 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9508 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9509 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9510 (Bitmap): Remove typedef.
9511 (Pixmap): Change int to GWorldPtr.
9512
9513 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9514
9515 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9516 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9517 New #define to extract 16-bit depth color components from unsigned
9518 long representation.
9519 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9520 colors used for masks.
9521 (struct mac_display_info): Add color_p. Remove n_cbits.
9522
9523 * macfns.c: Include sys/types.h and sys/stat.h.
9524 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9525 Include QuickTime/QuickTime.h.
9526 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9527 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9528 functions defined in macterm.c.
9529 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9530 (ZPixmap): New #define for compatibility with xfns.c.
9531 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9532 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9533 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9534 New functions.
9535 (four_corners_best, x_create_x_image_and_pixmap)
9536 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9537 (x_edge_detection, init_color_table, colors_in_color_table)
9538 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9539 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9540 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9541 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9542 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9543 long mixup.
9544 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9545 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9546 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9547 (x_set_cursor_type, Fxw_color_values, valid_image_p)
9548 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
9549 (x_alloc_image_color, clear_image_cache, lookup_image)
9550 (x_find_image_file, xbm_read_bitmap_file_data)
9551 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
9552 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
9553 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
9554 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
9555 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
9556 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
9557 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
9558 #if 0.
9559 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
9560 #if 0. Free white_relief.gc and black_relief.gc.
9561 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
9562 New functions (from xfns.c).
9563 (Fx_create_frame): Record unwind_create_frame.
9564 (Fxw_display_color_p): Use dpyinfo->color_p.
9565 (Fx_display_grayscale_p, Fx_display_planes): Don't use
9566 dpyinfo->n_cbits.
9567 (Fx_display_color_cells): Use dpyinfo->n_planes;
9568 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
9569 (Qheuristic, cross_disabled_images, emboss_matrix)
9570 (laplace_matrix): New variables (from xfns.c).
9571 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
9572 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
9573 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
9574 (image_background_transparent): New function (from xfns.c).
9575 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9576 (image_load_quicktime): Add declaration.
9577 [MAC_OSX] (image_load_quartz2d): Likewise.
9578 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
9579 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
9580 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
9581 (xbm_load_image_from_file, x_laplace_read_row)
9582 (x_laplace_write_row, pbm_read_file): Remove functions.
9583 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
9584 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
9585 (colors_in_color_table): Sync with xfns.c (although not used).
9586 (lookup_rgb_color): Don't lookup color table. Just do gamma
9587 correction.
9588 (COLOR_INTENSITY): New #define (from xfns.c).
9589 (x_disable_image): New function (from xfns.c).
9590 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9591 (x_build_heuristic_mask): Sync with xfns.c.
9592 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9593 (HAVE_PBM): Remove #ifdef.
9594 (pbm_load): Sync with xfns.c. Set img->width and img->height
9595 before IMAGE_BACKGROUND.
9596 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
9597 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
9598 Don't enclose with #if HAVE_PNG.
9599 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
9600 symbol _CGImageCreateWithPNGDataProvider is defined.
9601 Otherwise use image_load_quicktime.
9602 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
9603 [HAVE_PNG] (png_load): Sync with xfns.c.
9604 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9605 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
9606 HAVE_JPEG.
9607 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
9608 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
9609 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
9610 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
9611 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
9612 (tiff_image_p, tiff_load): Don't enclose declarations with #if
9613 HAVE_TIFF.
9614 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
9615 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
9616 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
9617 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
9618 New functions (from xfns.c).
9619 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
9620 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
9621 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
9622 Don't enclose with #if HAVE_GIF.
9623 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
9624 animated gif. Otherwise use image_load_quicktime.
9625 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
9626 gif_DrawText to avoid conflict with QuickdrawText.h.
9627 [HAVE_GIF] (gif_load): Sync with xfns.c.
9628 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
9629 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
9630 Ghostscript is not supported yet).
9631 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
9632 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
9633 cross_disabled_images (from xfns.c). Remove #if 0 for supported
9634 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9635 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
9636 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9637 HAVE_PNG. Call EnterMovies to support animated gifs.
9638 Call init_image_func_pointer to bind a symbol
9639 _CGImageCreateWithPNGDataProvider if it is defined.
9640
9641 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9642 (x_draw_bar_cursor): Sync declaration with xterm.c.
9643 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
9644 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
9645 graphics).
9646 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
9647 (mac_draw_line_to_pixmap, XCreatePixmap)
9648 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
9649 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
9650 New functions.
9651 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
9652 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9653 Cast bits to char *.
9654 (reflect_byte): New function (from w32fns.c).
9655 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
9656 due to byte alignment.
9657 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
9658 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9659 (XSetForeground): Remove static (now used in macfns.c).
9660 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
9661 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
9662 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
9663 (x_draw_glyph_string_box, x_draw_image_foreground)
9664 (x_draw_image_foreground_1, x_draw_image_glyph_string)
9665 (x_draw_stretch_glyph_string, x_draw_glyph_string)
9666 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
9667 Sync with xterm.c.
9668 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
9669 than the xterm.c version when a strictly horizontal or vertical
9670 line is drawn.
9671 (XTset_terminal_window): Add static.
9672 (x_make_frame_visible): Add UNBLOCK_INPUT.
9673 (x_free_frame_resources): New funcion (from xterm.c).
9674 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
9675 occurs in tool bar area.
9676 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
9677 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
9678 Initialize image cache.
9679 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
9680 Enclose unused functions with #if 0.
9681 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
9682 (decode_mac_font_name): New function to apply code conversions
9683 from a mac font name to an XLFD font name according to its script code.
9684 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
9685 font name to a mac font name according to REGISTRY and ENCODING fields.
9686 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
9687 whose name starts with `.'.
9688 (init_font_name_table): Use decode_mac_font_name. Add both
9689 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
9690 of a font is smJapanese.
9691 (mac_do_list_fonts): New function to list fonts that match a given
9692 pattern.
9693 (x_list_fonts, XLoadQueryFont): Use it.
9694 (XLoadQueryFont): Set rbearing field for each variable width
9695 character to avoid needless redraw.
9696 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
9697
9698 2004-02-26 Kim F. Storm <storm@cua.dk>
9699
9700 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
9701 as read_socket_hook handler on X aborts if buffer is too small
9702 and W32 handler doesn't always check buffer limit.
9703
9704 * xdisp.c (handle_single_display_prop): Handle left-fringe and
9705 right-fringe similar to a display margin image. Specifically,
9706 the characters having the fringe prop are no longer shown, and
9707 we use IT_IMAGE/next_element_from_image with image_id = -1 to
9708 do this. Set fringe bitmap face_id in it->face_id.
9709 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
9710 still realize it->face (i.e. the fringe bitmap face).
9711
9712 2004-02-25 Miles Bader <miles@gnu.org>
9713
9714 * xdisp.c (check_it): Check string/string_pos consistency.
9715 (init_iterator): Initialize string-related fields properly.
9716
9717 2004-02-11 Miles Bader <miles@gnu.org>
9718
9719 * xdisp.c (produce_image_glyph): Force negative descents to zero.
9720
9721 2004-02-10 Miles Bader <miles@gnu.org>
9722
9723 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
9724 BLOCK_INPUT can be nested, so it doesn't make much sense.
9725
9726 2004-02-24 Michael Mauger <mmaug@yahoo.com>
9727
9728 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
9729 (xbm_read_bitmap_data): Use unsigned char for image data.
9730
9731 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
9732
9733 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
9734
9735 2004-02-22 Jason Rumney <jasonr@gnu.org>
9736
9737 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
9738 correctly over other bitmaps.
9739
9740 2004-02-21 Eli Zaretskii <eliz@gnu.org>
9741
9742 * emacs.c (USAGE1): Split into two halves.
9743 (USAGE2): Second half of the old USAGE1.
9744 (USAGE3): Rename from USAGE2.
9745 (USAGE4): Rename from USAGE3.
9746
9747 2004-02-21 Juri Linkov <juri@jurta.org>
9748
9749 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
9750 Fix --multibyte. Move --help, --version to USAGE2. Add alias
9751 --file. Fix -f, -l. Sort options. Untabify.
9752 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
9753
9754 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
9755
9756 * category.c (Fdefine_category, Fcategory_docstring)
9757 (Fget_unused_category, Fset_category_table)
9758 (Fcategory_set_mnemonics): Doc fixes.
9759
9760 2004-02-20 Kim F. Storm <storm@cua.dk>
9761
9762 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
9763 The following changes are relative to the 2004-01-21 revision.
9764 (NREAD_INPUT_EVENTS): Define as max number of input events to read
9765 in one call to read_socket_hook. Value is 8.
9766 (read_avail_input): Separate and rework handling of read_socket_hook
9767 and non-read_socket_hook cases. Use smaller input_event buffer
9768 in read_socket_hook case, and repeat if full buffer is read.
9769 Use new local variable 'discard' to skip input after C-g.
9770 In non-read_socket_hook case, just use a single input_event, and
9771 call kbd_buffer_store_event on the fly for each character.
9772
9773 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9774
9775 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
9776 Remove unused `gu' alternative.
9777
9778 2004-02-19 Andreas Schwab <schwab@suse.de>
9779
9780 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
9781 warning.
9782
9783 2004-02-18 Kim F. Storm <storm@cua.dk>
9784
9785 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
9786 Fix last change.
9787
9788 2004-02-17 Kim F. Storm <storm@cua.dk>
9789
9790 * xdisp.c (fast_find_position): Fix return value of new version;
9791 it was inverted compared to the 21.1 version.
9792 (get_window_cursor_type): Don't look at glyph if NULL.
9793 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
9794
9795 * keyboard.c: Rework previous change; it didn't consider that the
9796 buf array was allocated on the stack.
9797 (prev_read): Remove variable.
9798 (read_avail_input_buf): New static event buffer array.
9799 (in_read_avail_input): New static variable to handle re-entrancy.
9800 (read_avail_input): Change buf to pinter to read_avail_input_buf.
9801 Use in_read_avail_input to handle re-entrance; when re-entered,
9802 fully initialize and use tmp_buf array instead of read_avail_input_buf.
9803 Do not initialize read_avail_input_buf in full here; instead assume it
9804 is always cleared on entry. To ensure that, we clear (just) the
9805 entries that were used before we return.
9806 (init_keyboard): Initialize read_avail_input_buf here.
9807
9808 2004-02-16 Jesper Harder <harder@ifa.au.dk>
9809
9810 * cmds.c (Fend_of_line): Doc fix.
9811
9812 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
9813
9814 * keyboard.c (prev_read): New static variable.
9815 (read_avail_input): Use it to zero out only those slots in buf[]
9816 that were used last time we were called.
9817
9818 2004-02-16 Eli Zaretskii <eliz@gnu.org>
9819
9820 * Makefile.in (obj): Move fringe.o from here...
9821 (XOBJ, MAC_OBJ): ...to here.
9822
9823 2004-02-16 Stephen Eglen <stephen@gnu.org>
9824
9825 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
9826
9827 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
9828
9829 * data.c (Fbyteorder):
9830 * fringe.c (Fdefine_fringe_bitmap):
9831 * xdisp.c (handle_single_display_prop):
9832 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
9833
9834 2004-02-16 Jason Rumney <jasonr@gnu.org>
9835
9836 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
9837
9838 2004-02-15 Steven Tamm <steventamm@mac.com>
9839
9840 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
9841 controlling emulation of a three button mouse with option and
9842 command keys.
9843 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
9844 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
9845
9846 2004-02-15 Kim F. Storm <storm@cua.dk>
9847
9848 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
9849
9850 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
9851 Perform byte-swapping.
9852
9853 2004-02-14 Kim F. Storm <storm@cua.dk>
9854
9855 * dispextern.h (struct draw_fringe_bitmap_params): Change member
9856 bits from char to short to facilitate wider bitmaps.
9857 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
9858 member.
9859
9860 * fringe.c (struct fringe_bitmap): Change member bits from char to
9861 short to facilitate 16 bits wide bitmaps. Modify all standard
9862 bitmaps accordingly.
9863 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
9864 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
9865 (draw_fringe_bitmap): Ditto.
9866 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
9867 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
9868 handle up to 16 bits wide bitmaps.
9869 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
9870 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
9871
9872 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
9873 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
9874 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
9875
9876 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
9877 so it is no longer necessary to expand them here.
9878
9879 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
9880
9881 2004-02-12 Kim F. Storm <storm@cua.dk>
9882
9883 * window.c (Fwindow_fringes): Doc fix.
9884
9885 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9886
9887 * xselect.c (x_get_foreign_selection): Add new optional parameter
9888 time_stamp.
9889 (Fx_get_selection_internal): Ditto, pass time_stamp to
9890 x_get_foreign_selection.
9891
9892 * data.c (Fbyteorder): New function.
9893
9894 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9895
9896 * atimer.c: Move include stdio.h to same place as in other files.
9897
9898 * region-cache.c: Ditto.
9899
9900 * sysdep.c: Ditto.
9901
9902 * xfaces.c: Ditto.
9903
9904 2004-02-09 Sam Steingold <sds@gnu.org>
9905
9906 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
9907
9908 2004-02-09 Kim F. Storm <storm@cua.dk>
9909
9910 * fringe.c: New file. Move original fringe related declarations
9911 and code from dispextern.h and xdisp.c here.
9912 Rework code to support user defined fringe bitmaps, redefining
9913 standard bitmaps, ability to overlay user defined bitmap with
9914 overlay arrow bitmap, and add faces to bitmaps.
9915 (Voverflow_newline_into_fringe): Declare here.
9916 (enum fringe_bitmap_align): New enum.
9917 (..._bits): All bitmaps are now defined without bitswapping; that
9918 is now done in init_fringe_once (if necessary).
9919 (standard_bitmaps): New array with specifications for the
9920 standard fringe bitmaps.
9921 (fringe_faces): New array.
9922 (valid_fringe_bitmap_id_p): New function.
9923 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
9924 (draw_fringe_bitmap): New function which draws fringe bitmap,
9925 possibly overlaying bitmap with cursor in right fringe or the
9926 overlay arrow in the left fringe.
9927 (update_window_fringes): Do not handle overlay arrow here.
9928 Compare and copy fringe bitmap faces.
9929 (init_fringe_bitmap): New function.
9930 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
9931 define and destroy user defined fringe bitmaps.
9932 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
9933 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
9934 (syms_of_fringe): New function. Defsubr new DEFUNs.
9935 DEFVAR_LISP Voverflow_newline_into_fringe.
9936 (init_fringe_once, init_fringe): New functions.
9937 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
9938
9939 * Makefile.in (obj): Add fringe.o.
9940 (fringe.o): New dependencies.
9941
9942 * dispextern.h (FRINGE_ID_BITS): New definition for number of
9943 bits allocated to hold a fringe number. Increase number of bits
9944 from 4 to 8 to allow user defined fringe bitmaps.
9945 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
9946 left_user_fringe_face_id, right_user_fringe_bitmap,
9947 right_user_fringe_face_id.
9948 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
9949 Move to new file fringe.c.
9950 (MAX_FRINGE_BITMAPS): Define here.
9951 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
9952 and overlay_p. Change member which to int.
9953 (struct redisplay_interface): New members define_fringe_bitmap
9954 and destroy_fringe_bitmap.
9955 (valid_fringe_bitmap_id_p): Add prototype.
9956 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
9957
9958 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
9959 arrows.
9960 (update_frame): Do flush_display if force_flush_display_p to
9961 ensure display (specifically fringes) are updated in a timely
9962 manner when resizing the frame by dragging the mouse.
9963 (update_window_line): Update row if overlay arrow changed.
9964 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
9965 or overlay arrow changed.
9966
9967 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
9968 syms_of_fringe, and init_fringe.
9969
9970 * frame.h (struct frame): New member force_flush_display_p.
9971
9972 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
9973 Add prototypes.
9974
9975 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
9976 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
9977 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
9978 Use cursor color for displaying cursor in fringe.
9979 (x_redisplay_interface): Add null handlers for
9980 define_fringe_bitmap and destroy_fringe_bitmap functions.
9981
9982 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
9983 xterm.c to handle overlayed fringe bitmaps and to use cursor color
9984 for displaying cursor in fringe.
9985 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
9986 specific functions to define and destroy fringe bitmaps in fringe_bmp.
9987 (w32_redisplay_interface): Add them to redisplay_interface.
9988 (w32_term_init): Call w32_init_fringe instead of explicitly
9989 defining fringe bitmaps in fringe_bmp array.
9990 (x_delete_display): Call w32_reset_fringes instead of explicitly
9991 destroying fringe bitmaps in fringe_bmp array.
9992
9993 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
9994 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
9995 (continued_bits, continuation_bits, ov_bits, first_line_bits)
9996 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
9997 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
9998 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
9999 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
10000 Move fringe handling vars and code to new file fringe.c.
10001 (handle_display_prop): Handle left-fringe and right-fringe
10002 display properties; store user fringe bitmaps in iterator.
10003 (move_it_in_display_line_to): Handle cursor in fringe at eob.
10004 (clear_garbaged_frames): Set force_flush_display_p if resized.
10005 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
10006 (display_line): Handle cursor in fringe at eob.
10007 (display_line): Set row user fringe bitmaps from iterator.
10008
10009 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
10010 Use cursor color for displaying cursor in fringe.
10011 (x_redisplay_interface): Add null handlers for
10012 define_fringe_bitmap and destroy_fringe_bitmap functions.
10013
10014 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10015
10016 * macfns.c (Fx_change_window_property): Make doc string and
10017 parameters same as for X version.
10018
10019 * w32fns.c (Fx_change_window_property): Ditto.
10020
10021 2004-02-07 Kim F. Storm <storm@cua.dk>
10022
10023 * xdisp.c (hscroll_window_tree): Position cursor near to right
10024 margin in hscrolled window when jumping to end of line (rather
10025 than centering cursor).
10026
10027 * process.c (wait_reading_process_input): Don't do adaptive read
10028 buffering if waiting for a specific process.
10029
10030 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
10031
10032 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
10033 (Fread_minibuffer, Feval_minibuffer)
10034 (Fread_string, Fread_no_blanks_input)
10035 (Fcompleting_read): Doc fixes.
10036 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
10037 completion-regexp-list. Define Qcase_fold_search and staticpro it.
10038 (read_minibuf): Fix initial comment.
10039 (Ftry_completion, Fall_completions, Ftest_completion): Bind
10040 case-fold-search to the value of completion-ignore-case when
10041 checking completion-regexp-list.
10042 (Fdisplay_completion_list): Make it handle arguments that are
10043 symbols. Doc fix.
10044
10045 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10046
10047 * xterm.h: Add declaration of free_frame_menubar.
10048
10049 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
10050 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
10051 (Fx_change_window_property): Add declaration of parameters type and
10052 format. Remove unused variable cons.
10053
10054 * xselect.c: Include stdio,h.
10055
10056 2004-02-05 Kenichi Handa <handa@m17n.org>
10057
10058 * fns.c (Fset_char_table_range): Fix previous change.
10059
10060 * buffer.c (Fset_buffer_multibyte): Fix docstring.
10061
10062 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
10063
10064 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
10065
10066 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
10067
10068 * keymap.c (Vmouse_events): Rename from Vmenu_events.
10069 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
10070
10071 2004-02-04 Kenichi Handa <handa@m17n.org>
10072
10073 * fns.c (Fset_char_table_range): Handle charsets ascii,
10074 eight-bit-control, and eight-bit-graphic correctly.
10075
10076 2004-02-03 Jason Rumney <jasonr@gnu.org>
10077
10078 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
10079
10080 * w32fns.c (x_to_w32_font): Likewise.
10081
10082 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10083
10084 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
10085 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
10086
10087 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
10088 ClientMessages.
10089
10090 * xselect.c: Include termhooks.h and X11/Xproto.h
10091 (x_check_property_data, x_fill_property_data)
10092 (x_property_data_to_lisp, mouse_position_for_drop)
10093 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
10094 (Fx_send_client_event): Move here from xfns.c.
10095 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
10096
10097 * xfns.c (x-send-client-message): Move to xselect.c
10098 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
10099 OUTER_P.
10100 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
10101 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
10102 if vector_ret_p is true.
10103 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
10104
10105 2004-02-02 Eli Zaretskii <eliz@gnu.org>
10106
10107 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
10108 basename of FILE relative to it, not FILE itself.
10109
10110 2004-02-02 Kenichi Handa <handa@m17n.org>
10111
10112 * coding.c (coding_restore_composition): Check invalid
10113 composition data more rigidly.
10114
10115 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
10116
10117 * fileio.c (Fread_file_name_internal): Correctly handle the case
10118 where insert-default-directory is nil.
10119 (Fread_file_name): Always return an empty string if the user exits
10120 with an empty minibuffer. Adapt the docstring accordingly.
10121 (syms_of_fileio): Adapt the docstring of insert-default-directory
10122 to the change in Fread_file_name.
10123
10124 2004-01-29 Eli Zaretskii <eliz@gnu.org>
10125
10126 * alloca.c [!alloca]: Fix the prototype for xfree.
10127
10128 2004-01-29 Kenichi Handa <handa@m17n.org>
10129
10130 * fns.c (string_char_to_byte): Optimize for ASCII only string.
10131 (string_byte_to_char): Likewise.
10132
10133 2004-01-28 Peter Runestig <peter@runestig.com>
10134
10135 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
10136
10137 2004-01-27 Steven Tamm <steventamm@mac.com>
10138
10139 * unexmacosx.c (unexec_copy): Do not copy more than was
10140 requested to prevent overwriting during unexec.
10141
10142 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10143
10144 * process.c (sigchld_handler): Add comment about not calling malloc.
10145
10146 * process.h: Add extern to synch_process_termsig.
10147
10148 2004-01-27 Steven Tamm <steventamm@mac.com>
10149
10150 * macterm.c (make_mac_frame, make_mac_terminal_frame):
10151 Move setting of scroll bars from make_mac_frame to
10152 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
10153
10154 2004-01-26 Richard M. Stallman <rms@gnu.org>
10155
10156 * search.c (Freplace_match): Handle nonexistent
10157 back-references properly.
10158
10159 2004-01-03 Richard M. Stallman <rms@gnu.org>
10160
10161 * window.c (decode_any_window): New function.
10162 (Fwindow_height, Fwindow_width, Fwindow_edges)
10163 (Fwindow_pixel_edges, Fwindow_inside_edges)
10164 (Fwindow_inside_pixel_edges): Use decode_any_window.
10165
10166 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10167
10168 * process.h: synch_process_termsig new variable.
10169
10170 * callproc.c: Define synch_process_termsig.
10171 (Fcall_process): Initiate synch_process_termsig to zero and
10172 check if non-zero and get signal name after subprocess has ended.
10173
10174 * process.c (sigchld_handler): Set synch_process_termsig
10175 if terminated by a signal. synch_process_death setting removed.
10176
10177 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
10178
10179 2004-01-26 Andreas Schwab <schwab@suse.de>
10180
10181 * print.c (print_preprocess): Declare size as EMACS_INT to not
10182 lose bits.
10183 (print_object): Likewise.
10184 * alloc.c (Fpurecopy): Likewise.
10185
10186 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
10187
10188 * window.c (Fwindow_minibuffer_p): Doc fix.
10189
10190 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
10191
10192 * editfns.c (Fformat): Make both passes accept the same set of flags.
10193
10194 2004-01-23 Kenichi Handa <handa@m17n.org>
10195
10196 * fns.c (Fmd5): If OBJECT is a buffer different from the current
10197 one, set buffer to OBJECT temporarily.
10198
10199 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10200
10201 * keyboard.c (kbd_buffer_gcpro): Remove.
10202 (kbd_buffer_store_event, clear_event, Fdiscard_input)
10203 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
10204 Don't initialize and/or maintain the variable any more. It was made
10205 redundant by my commit of 2003-06-15.
10206
10207 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
10208
10209 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10210
10211 * lisp.h: Add undef DECL_ALIGN.
10212
10213 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10214
10215 * process.c (wait_reading_process_input) [SYNC_INPUT]:
10216 Check interrupt_input_pending explicitly.
10217
10218 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
10219
10220 * keyboard.c (handle_async_input): New fun,
10221 extracted from input_available_signal.
10222 (input_available_signal, reinvoke_input_signal): Use it.
10223
10224 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
10225
10226 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
10227
10228 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
10229 manipulation macros for when tags are in the lower bits.
10230 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
10231 (DECL_ALIGN): New macro.
10232 (DEFUN): Use it.
10233
10234 * lisp.h [ENABLE_CHECKING]: Don't force union type.
10235
10236 * s/darwin.h (__attribute__): Remove outdated workaround.
10237
10238 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
10239
10240 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
10241 Don't check range of malloc address.
10242 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
10243
10244 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
10245
10246 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
10247
10248 2004-01-19 Kenichi Handa <handa@m17n.org>
10249
10250 * fontset.c (fontset_font_pattern): Fix previous change.
10251
10252 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
10253
10254 * xdisp.c (Voverflow_newline_into_fringe)
10255 (move_it_in_display_line_to, redisplay_internal)
10256 (update_window_fringes, redisplay_window, display_line, window):
10257 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
10258 that it compiles without a window-system.
10259 * dispnew.c (direct_output_for_insert, update_window): Likewise.
10260
10261 2004-01-16 Kim F. Storm <storm@cua.dk>
10262
10263 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
10264
10265 * buffer.c (init_buffer_once): Set buffer_defaults and
10266 buffer_local_flags for indicate_buffer_boundaries.
10267 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
10268 default- variable for it.
10269
10270 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
10271 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
10272 New members exact_window_width_line_p and cursor_in_fringe_p for
10273 overflowing newlines into right fringe.
10274 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
10275 and indicate_bottom_line_p for buffer boundaries and scrolling.
10276 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
10277 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
10278 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
10279 and HOLLOW_SQUARE_BITMAP.
10280 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
10281 Add prototypes.
10282
10283 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
10284 instead of related indicator fields.
10285 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
10286 (direct_output_for_insert): Handle exact width lines like
10287 contined lines. Call update_window_fringes.
10288 (update_window): Call update_window_fringes.
10289 (scrolling_window): Don't skip desired rows with changed bitmaps.
10290 Check if fringe bitmaps changes when assigning scrolled rows.
10291
10292 * xdisp.c (Voverflow_newline_into_fringe): New variable.
10293 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
10294 (move_it_in_display_line_to): Overflow newline into fringe for
10295 rows that are exactly as wide as the window.
10296 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
10297 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
10298 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
10299 (fringe_bitmaps): Add new bitmaps.
10300 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
10301 Select proper bitmap for cursor in fringe when appropriate.
10302 Handle alignment of bitmap to top or bottom of row.
10303 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
10304 done by update_window_fringes.
10305 (update_window_fringes, draw_window_fringes): New functions.
10306 (redisplay_internal): Call update_window_fringes in case only
10307 cursor row is updated.
10308 (redisplay_window): Call update_window_fringes.
10309 Explicitly call draw_window_fringes if redisplay was done using
10310 the current matrix or the overlay arrow is in the window.
10311 (try_window_reusing_current_matrix): Mark scrolled rows for
10312 fringe update (to update buffer-boundaries / scrolling icons).
10313 (find_last_unchanged_at_beg_row): Handle exact width lines line
10314 continued lines.
10315 (display_line): Overflow newline into fringe for rows that are
10316 exactly as wide as the window. Don't append space for newline
10317 in this case.
10318 (notice_overwritten_cursor): Explicitly clear cursor bitmap
10319 in fringe as if it had been overwritten.
10320 (erase_phys_cursor): Erase cursor bitmap in fringe.
10321 (syms_of_xdisp): Mark show-trailing-whitespace and
10322 void-text-area-pointer as user options.
10323 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
10324
10325 * xterm.c (x_update_window_end): Call draw_window_fringes.
10326 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10327 in row instead of actually drawing fringe bitmaps.
10328 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10329 (x_draw_window_cursor): Draw cursor in fringe.
10330
10331 * w32term.c (x_update_window_end): Call draw_window_fringes.
10332 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10333 in row instead of actually drawing fringe bitmaps.
10334 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10335 (w32_draw_window_cursor): Draw cursor in fringe.
10336
10337 * macterm.c (x_update_window_end): Call draw_window_fringes.
10338 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10339 in row instead of actually drawing fringe bitmaps.
10340 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10341 (mac_draw_window_cursor): Draw cursor in fringe.
10342
10343 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10344
10345 * xterm.c (handle_one_xevent): Don't handle characters that are part
10346 of an old style (XLookupString) compose sequence.
10347
10348 2004-01-15 Kenichi Handa <handa@m17n.org>
10349
10350 * search.c (Freplace_match): Use make_multibyte_string or
10351 make_unibyte_string according to the buffer multibyteness.
10352
10353 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
10354
10355 * alloc.c (struct interval_block, struct string_block)
10356 (struct symbol_block, struct marker_block, live_string_p)
10357 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
10358 Better preserve alignment for objects in blocks.
10359 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
10360
10361 * lread.c (defvar_per_buffer): Remove dead declaration.
10362
10363 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
10364 space size.
10365
10366 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10367
10368 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
10369 if a key press should pop down. Only pop down if a key is pressed
10370 outside the menu/dialog.
10371 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
10372 popup_get_selection.
10373 (create_and_show_dialog): Pass 1 for down_on_keypress to
10374 popup_get_selection.
10375
10376 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10377
10378 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
10379 BLOCK/UNBLOCK_INPUT.
10380
10381 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10382
10383 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
10384 specified.
10385
10386 2004-01-08 Kenichi Handa <handa@m17n.org>
10387
10388 * editfns.c (Fformat): Fix '&' to '&&'.
10389
10390 2004-01-08 Andreas Schwab <schwab@suse.de>
10391
10392 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
10393 size if PSEUDOVECTOR_FLAG is set.
10394
10395 2004-01-07 Kenichi Handa <handa@m17n.org>
10396
10397 * charset.c (Fdeclare_equiv_charset): Fix docstring.
10398
10399 * fontset.c (fontset_ref_via_base): Fix previous change.
10400
10401 2004-01-07 Kim F. Storm <storm@cua.dk>
10402
10403 * process.c (read_process_output): Only activate adaptive
10404 buffering if we read less than 256 bytes at a time.
10405
10406 2004-01-06 Kim F. Storm <storm@cua.dk>
10407
10408 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
10409 object and image object. Return glyph width and height.
10410 (mode_line_string, marginal_area_string): Ditto.
10411
10412 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10413 (marginal_area_string): Fix prototypes.
10414
10415 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
10416 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
10417 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
10418
10419 * keyboard.c (make_lispy_position): Use modified mode_line_string,
10420 buffer_posn_from_coords, and marginal_area_string functions to
10421 include both string object and image object in the lispy position.
10422 Also add actual glyph width and height to position.
10423 (read_key_sequence): Use real buffer position from mouse
10424 event to find keymap property even when click is in marginal area.
10425
10426 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
10427 mode_line_string and marginal_area_string functions to handle
10428 both string object and image object properties.
10429
10430 2004-01-06 Andreas Schwab <schwab@suse.de>
10431
10432 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
10433 character.
10434
10435 2004-01-02 Andreas Schwab <schwab@suse.de>
10436
10437 * macterm.c (emacs_options, x_initialized, same_x_server):
10438 Remove unused (and duplicated) definitions.
10439
10440 2004-01-02 Kim F. Storm <storm@cua.dk>
10441
10442 * process.h (struct Lisp_Process): New members for adaptive read
10443 buffering: adaptive_read_buffering, read_output_delay, and
10444 read_output_skip.
10445
10446 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
10447 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
10448 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
10449 (process_output_delay_count, process_output_skip): New vars.
10450 (Vprocess_adaptive_read_buffering): New variable.
10451 (make_process): Initialize adaptive read buffering members.
10452 (Fstart_process): Set adaptive_read_buffering member.
10453 (deactivate_process): Cleanup adaptive read buffering.
10454 (wait_reading_process_input): Temporarily omit delayed
10455 subprocesses from the set of file descriptors to read from;
10456 adjust the select timeout if we skipped any subprocesses.
10457 (read_process_output): Increase adaptive read buffering delay if
10458 we read less than a full buffer; reduce delay when we read a
10459 full buffer.
10460 (send_process): Simplify using local Lisp_Process var.
10461 Reset adaptive read buffering delay after write.
10462 (init_process): Initialize process_output_delay_count and
10463 process_output_skip.
10464 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
10465
10466 2004-01-01 Jason Rumney <jasonr@gnu.org>
10467
10468 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
10469
10470 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
10471
10472 * print.c (Ferror_message_string): Add hyperlink in the docstring
10473 to the definition of `signal' in the Elisp manual.
10474 * eval.c (Fsignal): Ditto.
10475
10476 2003-12-29 James Clark <jjc@jclark.com>
10477
10478 * fns.c (internal_equal): Return t for two NaN arguments.
10479
10480 2003-12-29 Richard M. Stallman <rms@gnu.org>
10481
10482 * data.c (store_symval_forwarding): Handle setting
10483 default-fill-column, etc., by changing the value in
10484 buffers that use the default.
10485
10486 * minibuf.c (Fset_minibuffer_window): Doc fix.
10487
10488 * fileio.c (choose_write_coding_system): Ignore auto_saving
10489 if using the visited file for auto saves.
10490 (Fwrite_region): Don't update SAVE_MODIFF
10491 if auto-saving in visited file.
10492
10493 2003-12-29 Kenichi Handa <handa@m17n.org>
10494
10495 * dispextern.h (face_font_available_p): Extern it.
10496
10497 * fontset.c (Voverriding_fontspec_alist): New variable.
10498 (lookup_overriding_fontspec): New function.
10499 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10500 (fontset_font_pattern): Likewise.
10501 (regulalize_fontname): New function.
10502 (Fset_fontset_font): Call regulalize_fontname.
10503 (Fset_overriding_fontspec_internal): New function.
10504 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10505 Defsubr Sset_overriding_fontspec_internal.
10506
10507 * xfaces.c (face_font_available_p): New function.
10508
10509 2003-12-28 Richard M. Stallman <rms@gnu.org>
10510
10511 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10512 or if its name is nil.
10513
10514 * buffer.c (Fkill_buffer): Don't delete auto-save file
10515 if it's the same as the visited file.
10516
10517 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10518
10519 * coding.c (Fcheck_coding_system): Doc fix.
10520
10521 2003-12-28 Kim F. Storm <storm@cua.dk>
10522
10523 * Makefile.in (eval.o): Depend on dispextern.h.
10524
10525 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10526 image glyph using image's ascent.
10527 (mode_line_string): Return image glyph as object clicked on.
10528 Adjust y0 for image glyph using image's ascent.
10529
10530 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10531 (struct glyph): New members, ascent and descent. Used to save
10532 this glyph's ascent and descent, instead of having.
10533 (struct glyph): Declare member face_id using FACE_ID_BITS.
10534 (find_hot_spot): Add prototype.
10535
10536 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10537 (QCmap): Declare extern.
10538 (make_lispy_position): When position is inside image hot-spot,
10539 use hot-spot element's id as posn element.
10540
10541 * lisp.h (IMAGEP): New macro to test for image object type.
10542 (Qimage): Declare extern.
10543
10544 * macfns.c (Qimage): Remove extern (now in lisp.h).
10545 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10546
10547 * macterm.c (Qface, Qmouse_face): Remove unused externs.
10548
10549 * w32fns.c (Qimage): Remove extern (now in lisp.h).
10550 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10551
10552 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
10553
10554 * w32term.c (Qface, Qmouse_face): Remove unused externs.
10555
10556 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
10557 pointer types.
10558 (Qrelative_width, Qalign_to): Remove unused variables.
10559 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
10560 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
10561 image maps.
10562 (x_y_to_hpos_vpos): Return glyph relative coordinates through
10563 new dx and dy args.
10564 Remove buffer_only_p arg (always 0). Simplify code accordingly.
10565 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
10566 than row's ascent and height, to get sensible height on tall rows.
10567 (build_desired_tool_bar_string): Remove Qimage extern.
10568 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
10569 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
10570 image glyph is alone on the last line.
10571 (append_glyph, append_composite_glyph, produce_image_glyph)
10572 (append_stretch_glyph): Set glyph's ascent and descent.
10573 (on_hot_spot_p): New function to check if position is inside an
10574 rectangular, circular, or polygon-shaped image hot-spot,
10575 (find_hot_spot): New function to search for image hot-spot.
10576 (Flookup_image_map): New defun to search for image hot-spot.
10577 (define_frame_cursor1): New aux function to determine frame pointer.
10578 (note_mode_line_or_margin_highlight, note_mouse_highlight):
10579 Handle `pointer' text property and :pointer image property to
10580 control frame pointer shape. Detect image hot-spots for pointer
10581 and help_echo properties. Use define_frame_cursor1.
10582 (note_mouse_highlight): Use Vvoid_text_area_pointer.
10583 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
10584 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
10585
10586 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
10587
10588 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
10589 (Qimage): Remove extern (now in lisp.h).
10590 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10591
10592 * xmenu.c (show_help_event): Remove unused code.
10593
10594 * xterm.c (Qface, Qmouse_face): Remove unused externs.
10595 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
10596 row's ascent and descent, to get a sensible height on tall rows.
10597
10598 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
10599
10600 * minibuf.c (Fcompleting_read): Undo previous change.
10601
10602 2003-12-25 Lars Hansen <larsh@math.ku.dk>
10603
10604 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
10605 Arguments GCPRO'ed in call to file name handler.
10606
10607 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
10608
10609 * termcap.c (tgetst1): Scan for "%pN"; if all
10610 N are continuous in [1,9], remove all "%pN".
10611
10612 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10613
10614 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
10615
10616 * xfaces.c (lface_fully_specified_p): Take into account that
10617 MAC OS always have unspecified stipple.
10618
10619 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10620
10621 * tparam.c (tparam1): Add handling for `%pN', which
10622 means use param N for the next substitution.
10623
10624 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10625
10626 * xfaces.c (Fcolor_gray_p): Fix omission bug:
10627 In case `frame' is nil, consult the selected frame.
10628 (Fcolor_supported_p): Likewise.
10629
10630 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
10631
10632 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
10633 Doc fixes.
10634
10635 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
10636 and an integer. Adapt the introductory comment accordingly.
10637 (Fread_from_minibuffer): Delete code moved into read_minibuf.
10638 Doc fix.
10639 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
10640 read_minibuf.
10641 (Fcompleting_read): Delete code moved into read_minibuf.
10642 (Ftest_completion): Make it handle obarrays and hash tables correctly.
10643
10644 2003-12-03 Kenichi Handa <handa@m17n.org>
10645
10646 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
10647 encoding sequence.
10648
10649 2003-12-01 Kenichi Handa <handa@m17n.org>
10650
10651 * composite.c (syms_of_composite): Don't make the compostion hash
10652 table week.
10653
10654 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
10655
10656 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
10657 * textprop.c (Fget_char_property_and_overlay): New function.
10658 (syms_of_textprop): Defsubr it.
10659
10660 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10661
10662 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
10663 to compile on terminal configuration.
10664
10665 * fileio.c (Fread_file_name): Check use_file_dialog also before
10666 calling Fx_file_dialog.
10667
10668 * fns.c (use_file_dialog): New variable.
10669 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
10670
10671 2003-11-29 Kim F. Storm <storm@cua.dk>
10672
10673 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
10674 (syms_of_msdos): Don't intern and staticpro them.
10675
10676 2003-11-27 Kim F. Storm <storm@cua.dk>
10677
10678 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
10679 coordinates relative to glyph at posn. If glyph is an image,
10680 return that as object at posn. Callers changed.
10681 (mode_line_string, marginal_area_string): Calculate and return
10682 pixel coordinates relative to glyph. Callers changed.
10683
10684 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10685 (marginal_area_string): Fix prototypes.
10686 (window_box_left_offset, window_box_right_offset): Add prototypes.
10687
10688 * frame.h (get_specified_cursor_type, get_window_cursor_type):
10689 Remove prototypes.
10690
10691 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
10692
10693 * keyboard.c (make_lispy_position): Add x and y coordinates
10694 relative to the current glyph as 7th element of position.
10695 If glyph is an image, return it in the object element.
10696 (read_key_sequence): Skip checks for keymap property in cases
10697 where POSN_STRING is not a string (e.g. an image).
10698
10699 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
10700 (Vshow_text_cursor_in_void): New variable.
10701 (glyph_to_pixel_coords): Don't use negative hpos.
10702 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
10703 (append_stretch_glyph): Change ascent arg to be actual value
10704 in pixels rather than ratio to height. Callers changed.
10705 (calc_pixel_width_or_height): New aux function, implementing
10706 pixel based artihmetic for glyph widths and heights.
10707 (produce_stretch_glyph): Use calc_pixel_width_or_height for
10708 :width, :height, :align-to, and :ascent, thus allowing these to
10709 be specified in pixels as well as multiples of characters.
10710 Don't produce stretch glyphs with zero width or height.
10711 (get_specified_cursor_type): Declare static.
10712 (get_window_cursor_type): Declare static. Add glyph arg to be
10713 able to know when cursor is on an image; always substitute
10714 hollow-box cursor for filled-box cursor on images, to avoid
10715 negative images and flicker when blinking the cursor.
10716 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
10717 (note_mode_line_or_margin_highlight): Use non-text cursor rather
10718 than vertical scroll-bar cursor in display margins.
10719 (note_mouse_highlight): Use non-text cursor rather than text
10720 cursor in fringes and over images in the text area.
10721 Use non-text cursor when mouse pointer is outside editable text,
10722 i.e. in the void after end-of-line or end-of-buffer; this was
10723 already done for W32, but is now standard for all systems --
10724 user can toggle show-text-cursor-in-void to get old behaviour.
10725 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
10726 Vdisplay_pixels_per_inch.
10727
10728 2003-11-25 Andreas Schwab <schwab@suse.de>
10729
10730 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
10731 EMACS_INT to not lose bits.
10732 (Ffillarray): Don't set bits beyond the size of a bool vector.
10733
10734 2003-11-25 Kim F. Storm <storm@cua.dk>
10735
10736 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
10737 define this defun on systems that cannot use stderr as lvalue.
10738
10739 2003-11-24 Gerd Moellmann <gerd@gnu.org>
10740
10741 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
10742 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
10743 ld's default is incompatible with unexec.
10744
10745 2003-11-23 Kim F. Storm <storm@cua.dk>
10746
10747 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
10748 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
10749 (Fforce_window_update): New defun.
10750 (syms_of_window): Defsubr it.
10751 (Fset_window_margins, Fset_window_fringes): Doc fix.
10752
10753 * print.c (Fredirect_debugging_output): New defun.
10754 (syms_of_print): Defsubr it.
10755
10756 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
10757
10758 * fns.c (Fset_char_table_parent): Doc fix.
10759
10760 2003-11-22 Kim F. Storm <storm@cua.dk>
10761
10762 * dispnew.c (buffer_posn_from_coords): Return actual row/column
10763 for glyph clicked on, rather than (unused) pixel positions.
10764 (mode_line_string, marginal_area_string): Change X and Y args to
10765 pointers for returning actual row/column for glyph clicked on.
10766 Simplify and optimize loops.
10767
10768 * dispextern.h (mode_line_string, marginal_area_string):
10769 Update prototypes.
10770
10771 * keyboard.c (make_lispy_position): New function for generating
10772 mouse click positions from frame and pixel coordinates.
10773 Enhanced to return buffer position and actual row/column for
10774 events outside the text area using updated mode_line_string and
10775 marginal_area_string functions.
10776 Return left-fringe and right-fringe clicks as such, rather than
10777 clicks in text area.
10778 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
10779 pixel_to_glyph_coords, as we never use the results.
10780 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
10781 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
10782 Eliminate unused code in WHEEL_EVENT handling.
10783 (make_lispy_movement): Use make_lispy_position.
10784
10785 * window.c (coordinates_in_window): Remove redundant tests.
10786 Fix returned X pixel value for left-margin.
10787
10788 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
10789 mode_line_string and marginal_area_string parameters.
10790
10791 2003-11-22 Lars Hansen <larsh@math.ku.dk>
10792
10793 * w32.c (struct the_group, getgrgid): Add.
10794 * mac.c (struct my_group, getgrgid): Add.
10795
10796 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10797
10798 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
10799
10800 2003-11-21 Lars Hansen <larsh@math.ku.dk>
10801
10802 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
10803 include in call to file name handler. Optionally translate numeric
10804 UID and GID to strings. Update docstring.
10805 (directory_files_internal): Add parameter ID-FORMAT.
10806 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
10807 include in call to file name handler and call to
10808 directory_files_internal. Update Docstring.
10809 (Fdirectory_files): Add dummy parameter in call to
10810 directory_files_internal.
10811 * lisp.h (Qinteger): Add.
10812 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
10813 (Ffile_attributes): Add parameter.
10814 * data.c (Qinteger): Export.
10815
10816 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10817
10818 * fns.c (Freverse, Fnreverse): Doc fixes.
10819
10820 2003-11-19 Kim F. Storm <storm@cua.dk>
10821
10822 * xdisp.c (init_iterator): Initialize it->start to position
10823 before reseating (in case start position is invisible).
10824 (init_to_row_start): Set it->start to row-start.
10825 (redisplay_window): Accept optional_new_start if start position
10826 is invisible (in which case IT_CHARPOS overshoots PT).
10827 (display_line): Setup row->start from it->start (rather than
10828 it->current which is wrong if first char on line is invisible).
10829 When done, reseat it->start to it->current (= start of next row).
10830 (expose_area): Fix exposure of text area when first char (e.g. TAB)
10831 is only partially visible.
10832
10833 * dispextern.h (struct it): New member start.
10834
10835 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
10836
10837 * alloc.c (make_float, Fcons): Clear the markbit at init time.
10838 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
10839 of block_index outside of the macro call.
10840 (Fgarbage_collect): Remove null code.
10841
10842 * m/amdx86-64.h: Don't redefine XPNTR.
10843
10844 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
10845 of VALMASK.
10846
10847 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
10848 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
10849 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
10850
10851 * lisp.h (VALMASK): Only define for non-union type.
10852 (MARKBIT): Remove.
10853 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
10854 (XTYPE): Define unconditionally.
10855 (XSETTYPE): Remove one more remnant.
10856 (EQ): Define differently for the union and non-union cases.
10857 (INTMASK): New bit mask.
10858 (struct Lisp_Marker): Move down to prepare for upcoming patch.
10859 (GC_EQ): Delegate to EQ.
10860
10861 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
10862
10863 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10864
10865 * xterm.c (x_window_to_scroll_bar): Move check of display to
10866 where window_id is compared.
10867
10868 2003-11-17 Kim F. Storm <storm@cua.dk>
10869
10870 * dispextern.h (struct it): New member first_vpos.
10871
10872 * xdisp.c (start_display): Set it->first_vpos.
10873 (try_window_id): Use first_vpos to start display in first _text_
10874 line if no reusable lines at start of window with header line.
10875
10876 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10877
10878 * w32fns.c (XPutPixel):
10879 * w32bdf.c (w32_init_bdf_font):
10880 * sunfns.c (sel_read):
10881 * process.c (Fmake_network_process):
10882 * frame.c (store_frame_param):
10883 * fontset.c (Fset_fontset_font):
10884 * emacs.c (shut_down_emacs):
10885 * ccl.c (ccl_driver): Remove period at end of error message.
10886
10887 * config.in: Regenerate.
10888
10889 * xfns.c (x_window_to_frame, x_any_window_to_frame)
10890 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10891 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
10892 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
10893 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
10894
10895 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
10896
10897 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
10898 (XTmouse_position, handle_one_xevent): Pass Display* to
10899 x_window_to_scroll_bar.
10900 (x_window_to_scroll_bar): Take a Display* argument.
10901 Check that display for frame is equal to Display* argument.
10902 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
10903 x_display_info_for_display instead. Use Display in xev instead
10904 of GDK_DISPLAY.
10905 (x_dispatch_event): Call x_display_info_for_display.
10906 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
10907 (x_connection_closed): Call xg_display_close for GTK.
10908 (x_term_init): Call xg_display_open for additional displays.
10909 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
10910 for GTK.
10911
10912 * xmenu.c (single_menu_item, mouse_position_for_popup)
10913 (x_activate_menubar): Formatting adjustments.
10914
10915 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
10916 adjustments.
10917
10918 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
10919 (xg_display_close, xg_create_default_cursor)
10920 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
10921 handling.
10922 (xg_left_ptr_cursor): Remove.
10923 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
10924 cursor here.
10925 (xg_win_to_widget): Take Display* argument, call
10926 gdk_xid_table_lookup_for_display.
10927 (xg_create_frame_widgets, xg_get_file_name, create_menus)
10928 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
10929 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
10930 in FRAME_X_DISPLAY_INFO.
10931 (xg_get_scroll_id_for_window): Take Display* argument.
10932 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
10933 (xg_initialize): Remove xg_left_ptr_cursor.
10934
10935 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
10936 Display* argument.
10937 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
10938
10939 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10940
10941 * xterm.c (x_detect_focus_change): Do not change focus frame for
10942 Enter/LeaveNotify if the current focus frame has explicit focus.
10943
10944 2003-11-14 Kim F. Storm <storm@cua.dk>
10945
10946 * dispnew.c (update_text_area): Fix redisplay error when hscroll
10947 is active and first glyph is only partially visible.
10948
10949 2003-11-13 Kenichi Handa <handa@m17n.org>
10950
10951 * xdisp.c (select_frame_for_redisplay): New function.
10952 (redisplay_internal): Record also selected_frame for
10953 unwind_redisplay. Call select_frame_for_redisplay before
10954 redrawing each frame.
10955 (unwind_redisplay): Argument changed to a cons.
10956
10957 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
10958
10959 * fns.c (Fstring_to_multibyte): Doc fix.
10960
10961 2003-11-11 Kenichi Handa <handa@m17n.org>
10962
10963 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10964
10965 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10966
10967 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
10968 program specified positions.
10969
10970 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10971
10972 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
10973
10974 2003-11-08 Kenichi Handa <handa@m17n.org>
10975
10976 * Makefile.in (lisp): Add kannada.el.
10977 (shortlisp): Likewise.
10978
10979 2003-11-07 Kenichi Handa <handa@m17n.org>
10980
10981 * coding.c (coding_allocate_composition_data):
10982 Reset coding->composing to COMPOSITION_NO.
10983 (coding_restore_composition): Detect invalid composition data.
10984 Give Fstring and Fvector a Lispy integer, not C int.
10985
10986 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
10987
10988 * floatfns.c (Flogb): Don't use VALMASK.
10989
10990 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
10991 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
10992
10993 * lisp.h (XINT): Move the cast to clarify what is going on.
10994 (GCTYPEMASK, XSETTYPE): Remove.
10995 (XGCTYPE): Make it an alias of XTYPE.
10996
10997 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10998
10999 * xterm.c (x_term_init): Fix formatting.
11000
11001 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11002
11003 * gtkutil.h (xg_have_tear_offs): Declare.
11004 (xg_keep_popup, xg_did_tearoff): Remove.
11005
11006 * gtkutil.c: Remove variable xg_did_tearoff.
11007 (xg_have_tear_offs): New function.
11008 (tearoff_remove): Just decrease xg_detached_menus.
11009 (tearoff_activate): Increase xg_detached_menus and call
11010 tearoff_remove when tearoff is removed.
11011 (xg_keep_popup): Remove function.
11012 (create_menus): Give add_tearoff_p as argument to recursive
11013 call to create_menus.
11014 (xg_create_widget): Use variables instead of multiple
11015 strcmp. Tell create_menus to create tear off only for
11016 menu bar menus.
11017 (xg_update_menubar): Change title for a detached menu also.
11018 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
11019 of deep_p.
11020 (xg_initialize): Initialize xg_detached_menus, remove
11021 initialization of xg_did_tearoff.
11022
11023 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
11024 xg_have_tear_offs returns non-zero.
11025 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
11026 call to xg_keep_popup.
11027
11028 2003-11-01 Andrew Choi <akochoi@shaw.ca>
11029
11030 * macterm.c (XTread_socket): Handle menubar selection and grow
11031 window only for mouseDown events.
11032
11033 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11034
11035 * xterm.c (x_term_init): For GTK part, increase x_initialized
11036 to check for more than one display. Use error instead of return 0.
11037
11038 2003-10-31 Andrew Choi <akochoi@shaw.ca>
11039
11040 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
11041 (copy_dysymtab): Call it.
11042
11043 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
11044
11045 * eval.c (Fdefvaralias): Doc fix.
11046
11047 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
11048
11049 * data.c (Fsetplist): Doc fix.
11050
11051 2003-10-14 Lute Kamstra <lute@gnu.org>
11052
11053 * window.c (Fset_window_fringes): Clarify docstring.
11054
11055 2003-10-14 Kim F. Storm <storm@cua.dk>
11056
11057 * window.c (Fset_window_margins): Simplify arg checking.
11058
11059 2003-10-13 Richard M. Stallman <rms@gnu.org>
11060
11061 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
11062 (print_partial_compiled_pattern): Replace assert with a printout.
11063 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
11064
11065 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
11066
11067 * window.c (Fset_window_margins): Allow only integers as args.
11068 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
11069 Doc fixes.
11070
11071 2003-10-13 Lute Kamstra <lute@gnu.org>
11072
11073 * window.c (Fset_window_fringes): Elaborate docstring.
11074
11075 2003-10-12 Andrew Choi <akochoi@shaw.ca>
11076
11077 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
11078
11079 * s/darwin.h (GC_MARK_STACK): Define.
11080
11081 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11082
11083 * window.c (shrink_windows): New function.
11084 (size_window): Call shrink_windows to calculate window sizes when
11085 shrinking frame with more than one window.
11086
11087 2003-10-12 Kim F. Storm <storm@cua.dk>
11088
11089 * xdisp.c (compute_fringe_widths): Doc fix.
11090
11091 2003-10-08 Kenichi Handa <handa@m17n.org>
11092
11093 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
11094
11095 2003-10-07 Kenichi Handa <handa@m17n.org>
11096
11097 * coding.c (Qcoding_system_define_form): New variable.
11098 (syms_of_coding): Intern and staticpro it.
11099 (Fcheck_coding_system): Try to autoload the definition of
11100 CODING-SYSTEM.
11101
11102 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
11103
11104 * fns.c (Frequire): Doc fix.
11105
11106 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11107
11108 * xfns.c (Fx_send_client_event): New function as a base for
11109 manipulating extended window manager hints.
11110 (Fx_send_client_event): Remove unused variable s.
11111
11112 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
11113 that function is removed.
11114
11115 * xterm.c (x_set_offset): Use move_offset_left/top instead of
11116 x/y_pixels_outer_diff.
11117 (x_check_expected_move): Calculate move_offset_left/top.
11118
11119 * xterm.h (struct x_output): New members: move_offset_top/left.
11120
11121 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
11122 call x_set_offset directly.
11123
11124 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
11125
11126 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
11127
11128 * xterm.c (x_delete_display): Free font names and font_encoder
11129 in dpyinfo->font_table.
11130
11131 * xfns.c (Fx_close_connection): Only call XFreeFont here.
11132 Move xfree of font names to x_delete_display.
11133
11134 * xterm.h (struct x_display_info): New member, wm_type.
11135 (struct x_output): New members, expected_top/left and
11136 check_expected_move.
11137
11138 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
11139 is received.
11140 (handle_one_xevent): Rename x_check_expected_move from
11141 x_check_fullscreen_move.
11142 (x_set_offset): Only add WM decoration sizes to modified_top/left
11143 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
11144 (x_check_expected_move): Rename from x_check_fullscreen_move.
11145 Removed fullscreen specific code. Use check_expected_move,
11146 expected_left/top instead. Also, set wm_type.
11147 (x_term_init): Initialize wm_type to unknown.
11148
11149 * frame.c (x_fullscreen_move): Remove addition of WM decoration
11150 sizes to move_x/y.
11151
11152 2003-10-03 Kenichi Handa <handa@m17n.org>
11153
11154 * macterm.c (x_load_font): Clear all members of FONTP before start
11155 filling them.
11156
11157 2003-10-02 Kenichi Handa <handa@m17n.org>
11158
11159 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
11160 before calling find_ccl_program_func. Call find_ccl_program_func
11161 only when fontp->font_encoder is not NULL.
11162
11163 * xterm.c (x_load_font): Clear all members of FONTP before start
11164 filling them.
11165
11166 2003-10-03 John Paul Wallington <jpw@gnu.org>
11167
11168 * keymap.c (map_keymap): Don't abort when binding is a vector.
11169
11170 2003-10-02 Jason Rumney <jasonr@gnu.org>
11171
11172 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
11173 Sync dependencies with Makefile.in.
11174 (alloca.o): Remove.
11175
11176 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
11177 filling them.
11178
11179 * w32bdf.c (w32_load_bdf_font): Likewise.
11180
11181 2003-09-30 Richard M. Stallman <rms@gnu.org>
11182
11183 * term.c (set_tty_color_mode): Calculate current_mode_spec
11184 regardless of value of VAL.
11185
11186 * intervals.c (graft_intervals_into_buffer):
11187 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
11188 Handle over_used when splitting UNDER.
11189
11190 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11191
11192 * regex.c (regex_compile): Free the stack when returning from function.
11193
11194 2003-09-28 Kenichi Handa <handa@m17n.org>
11195
11196 * fontset.c (Finternal_char_font): Change return value to
11197 cons (FONT-NAME . GLYPH-CODE).
11198
11199 2003-09-28 Eli Zaretskii <eliz@gnu.org>
11200
11201 * term.c (tty_setup_colors): Treat any negative argument as -1.
11202
11203 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
11204
11205 * process.c (send_process): Delete unused temp_buf.
11206
11207 2003-09-26 Dave Love <fx@gnu.org>
11208
11209 * xterm.c (x_bitmap_mask): Declare.
11210
11211 2003-09-25 Dave Love <fx@gnu.org>
11212
11213 * Makefile.in (fns.o): Depend on md5.h.
11214
11215 2003-09-25 Kim F. Storm <storm@cua.dk>
11216
11217 * window.c (set_window_buffer): Fix redisplay problems when
11218 switching between buffers with different display margin widths.
11219
11220 2003-09-23 Kim F. Storm <storm@cua.dk>
11221
11222 * process.c (set_socket_option): Fix :bindtodevice option.
11223 (Fset_network_process_option): Update process contact list when
11224 setting option succeeds.
11225 (Fmake_network_process): Doc fix.
11226
11227 2003-09-23 Dave Love <fx@gnu.org>
11228
11229 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
11230
11231 2003-09-22 Eli Zaretskii <eliz@gnu.org>
11232
11233 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
11234 color mode is an integer number (it could be -1).
11235
11236 2003-09-22 Richard M. Stallman <rms@gnu.org>
11237
11238 * intervals.c (graft_intervals_into_buffer): Correct the main loop
11239 in the case where OVER is longer than UNDER.
11240
11241 2003-09-22 Masatake YAMATO <jet@gyve.org>
11242
11243 * window.c (Fset_window_scroll_bars): Validate the value of
11244 `vertical_type'.
11245
11246 2003-09-21 Kim F. Storm <storm@cua.dk>
11247
11248 * frame.c (Vdefault_frame_scroll_bars): New variable.
11249 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
11250 (syms_of_frame): DEFVAR_LISP it, and initialize according to
11251 window-system default scroll bar position.
11252
11253 * window.c (Fwindow_scroll_bars): Doc fix.
11254
11255 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11256
11257 * xterm.c (x_set_offset): Take window manager decorations into account.
11258
11259 2003-09-19 Richard M. Stallman <rms@gnu.org>
11260
11261 * atimer.h: Don't include lisp.h.
11262 (P_): Define it here (as well as elsewhere).
11263
11264 * print.c (Fprin1_to_string): Move the PRINTPREPARE
11265 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
11266
11267 * data.c (Fvariable_binding_locus): New function.
11268 (syms_of_data): defsubr it.
11269 (Flocal_variable_p): Delete duplicate call to indirect_variable.
11270
11271 2003-09-18 Dave Love <fx@gnu.org>
11272
11273 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
11274
11275 * process.c (Fnetwork_interface_info): Fix type error.
11276 (Fnetwork_interface_list): Doc fix.
11277 (read_process_output, read_process_output): Delete unused var.
11278
11279 2003-09-17 Kim F. Storm <storm@cua.dk>
11280
11281 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
11282 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
11283 (Fnetwork_interface_info): Check that ifreq struct has required
11284 fields before accessing them; this requires that those fields are
11285 defined as macros, which may be too restrictive on some platforms,
11286 but it is better than failing on other platforms.
11287 (syms_of_process): Only defsubr above fns when included.
11288
11289 2003-09-17 Dave Love <fx@gnu.org>
11290
11291 * unexalpha.c: Don't include varargs.h.
11292
11293 2003-09-17 Kim F. Storm <storm@cua.dk>
11294
11295 * process.c (Fset_process_sentinel): Add sentinel to childp plist
11296 for network process.
11297 (socket_options): Add `:' prefix to option names. Add optbit field.
11298 (set_socket_option): Remove no_error arg and special handling of s < 0.
11299 Return 1<<optbit for known option, 0 for unknown.
11300 Do not interpret 0 as false for boolean option (only nil).
11301 Pass failed option and value to report_file_error.
11302 (Fset_network_process_options): Replace by Fset_network_process_option.
11303 (Fset_network_process_option): New function to set just one option.
11304 (Fmake_network_process): Allow :coding arg to be a cons.
11305 Allow :server arg to be an integer specifying backlog size.
11306 Remove :options arg, and allow options to be specified directly
11307 as :KEY, VALUE pairs. Parse these options before binding socket.
11308 As before, :reuseaddr t is default for a server process, but this
11309 can now be disabled by specifying :reuseaddr nil.
11310 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
11311 (init_process): Availability of network options is now checked with
11312 simpler syntax (featurep 'make-network-process :OPTION); use loop to
11313 setup features.
11314 (syms_of_process): Fix defsubr's for the replaced functions.
11315
11316 2003-09-16 Dave Love <fx@gnu.org>
11317
11318 * Makefile.in: Depend on coding.h.
11319
11320 2003-09-14 Kim F. Storm <storm@cua.dk>
11321
11322 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
11323 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
11324 (syms_of_process): Defsubr them.
11325
11326 * config.in: Regenerate.
11327
11328 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
11329
11330 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
11331 * m/news-r6.h (XUNMARK): Remove.
11332 * m/mips.h (XUNMARK): Remove.
11333 * m/mips-siemens.h (XUNMARK): Remove.
11334 * m/iris4d.h (XUNMARK): Remove.
11335 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
11336
11337 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
11338
11339 * lisp.h (VALBITS): Don't remove 1 for the markbit.
11340 (union Lisp_Object): Use unsigned int for types. Remove markbit.
11341 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
11342 (XTYPE): Use unsigned right-shift.
11343 (XMARKBIT, XMARK, XUNMARK): Remove.
11344
11345 * alloc.c (init_intervals, init_symbol, init_marker):
11346 Don't preallocate anything.
11347 (Fgarbage_collect, mark_object): Ignore the markbit.
11348
11349 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
11350
11351 2003-09-08 Lute Kamstra <lute@gnu.org>
11352
11353 * xdisp.c (pint2hrstr): New function.
11354 (decode_mode_spec): Add `%i' and `%I' specs.
11355 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
11356 for `mode-line-format'.
11357
11358 2003-09-07 Andreas Schwab <schwab@suse.de>
11359
11360 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
11361 avoid warning.
11362
11363 2003-09-07 Eli Zaretskii <eliz@gnu.org>
11364
11365 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
11366
11367 2003-09-03 Kim F. Storm <storm@cua.dk>
11368
11369 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
11370 change (superseded by 2002-08-30 change); the default blink-off
11371 cursor is now again "no cursor".
11372
11373 2003-09-01 Jason Rumney <jasonr@gnu.org>
11374
11375 * makefile.w32-in (alloca.o): Remove.
11376 (coding.o): Depend on intervals.h
11377 (emacs.o, bytecode.o): Depend on window.h
11378
11379 2003-09-01 Dave Love <fx@gnu.org>
11380
11381 * Makefile.in (alloca.o): Remove commands.
11382 (coding.o): Depend on intervals.h composite.h window.h.
11383 (emacs.o): Depend on window.h keyboard.h keymap.h.
11384 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
11385 (bytecode.o): Depend on window.h.
11386
11387 2003-08-31 Jason Rumney <jasonr@gnu.org>
11388
11389 * w32term.c (w32_per_char_metric): Allow cached metrics to be
11390 returned even when font_type is unknown.
11391
11392 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
11393
11394 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11395
11396 * xterm.c (x_term_init): Initialize new fields in x_display_info.
11397
11398 * xterm.h (struct x_display_info): Add red/green/blue_bits and
11399 *_offset.
11400
11401 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
11402 calculate pixel value.
11403
11404 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
11405
11406 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
11407 Don't tell redisplay display is accurate when it's actually been
11408 paused for pending input.
11409
11410 2003-08-29 Richard M. Stallman <rms@gnu.org>
11411
11412 * dispnew.c (adjust_glyph_matrix): Call window_box
11413 whenever W is nonzero.
11414
11415 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11416 (Fkill_local_variable, Fmake_variable_frame_local)
11417 (Flocal_variable_p, Flocal_variable_if_set_p):
11418 Use indirect_variable to trace thru variable aliases.
11419
11420 * config.in: Updated.
11421
11422 * callint.c (Fcall_interactively): Save and restore
11423 Vthis_command, Vthis_original_command, real_this_command,
11424 and current_kboard->Vlast_command.
11425
11426 * abbrev.c (Fexpand_abbrev): Insert before deleting.
11427
11428 2003-08-29 Gerd Moellmann <gerd@gnu.org>
11429
11430 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
11431
11432 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
11433
11434 * coding.c (decode_coding_iso2022): Initialize local variable c2.
11435 (decode_coding_sjis_big5): Likewise.
11436
11437 2003-08-27 Jason Rumney <jasonr@gnu.org>
11438
11439 * w32.c (sys_pipe): Protect against file descriptor overflow.
11440
11441 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
11442
11443 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
11444
11445 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
11446
11447 * xfns.c (Vgtk_version_string): New variable.
11448 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
11449
11450 2003-08-24 Eli Zaretskii <eliz@gnu.org>
11451
11452 * term.c (term_init): Remove `const' from buffer_size's declaration.
11453
11454 * Makefile.in (msdos.o): Depend on intervals.h.
11455
11456 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
11457
11458 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11459
11460 * xterm.h (struct x_display_info): New fields: client_leader_window
11461 and Xatom_wm_client_leader.
11462
11463 * xterm.c (x_initialize): Move call to x_session_initialize to ...
11464 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
11465
11466 * xsmfns.c (create_client_leader_window): New function.
11467 (x_session_initialize): Call create_client_leader_window, take
11468 dpyinfo as argument.
11469
11470 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
11471
11472 * Makefile.in (xsmfns.o): Add more depenedencies.
11473
11474 2003-08-21 Dave Love <fx@gnu.org>
11475
11476 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
11477
11478 2003-08-21 Kenichi Handa <handa@m17n.org>
11479
11480 * term.c (term_init): Fix previous change; don't rely on the
11481 length of `buffer' if TERMINFO is defined.
11482
11483 2003-08-20 Dave Love <fx@gnu.org>
11484
11485 * atimer.h: Include lisp.h.
11486
11487 * lisp.h (EMACS_LISP_H): New.
11488 (popup_activated_flag): Don't declare.
11489
11490 * alloca.c: Some merging with gnulib. Change logic and doc
11491 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11492 [DO_BLOCK_INPUT]: Don't include lisp.h.
11493 (xmalloc, xfree): Declare.
11494 (malloc): Don't declare.
11495
11496 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11497 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11498 atimer.h, blockinput.h.
11499
11500 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11501
11502 * alloca.s: Remove.
11503
11504 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11505
11506 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11507 use -lncurses.
11508
11509 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11510 FreeBSD returns something longer than 2044. Abort if the end of
11511 the buffer is overwritten.
11512
11513 2003-08-19 Miles Bader <miles@gnu.org>
11514
11515 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11516
11517 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11518
11519 * alloc.c (lisp_align_malloc): Check for memory full when
11520 allocating ablocks, which also avoids freeing a pointer into an
11521 ablocks structure.
11522
11523 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11524
11525 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11526
11527 2003-08-16 Richard M. Stallman <rms@gnu.org>
11528
11529 * editfns.c (Fencode_time): Doc fix.
11530
11531 2003-08-16 David Ponce <david@dponce.com>
11532
11533 * fileio.c (Fwrite_region): Fix conditional expression to issue
11534 the right message.
11535
11536 2003-08-16 Juri Linkov <juri@jurta.org>
11537
11538 * syntax.c (Fforward_word): Argument changed to optional.
11539 Set default value to 1.
11540
11541 2003-08-15 Kenichi Handa <handa@m17n.org>
11542
11543 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11544 what autoscaled.
11545 (best_matching_font): Once we find a better scalable font, set
11546 non_scalable_has_exact_height_p to 1.
11547 (try_font_list): Call try_alternative_families to try any family
11548 with the given registry.
11549
11550 2003-08-09 Andreas Schwab <schwab@suse.de>
11551
11552 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
11553
11554 * print.c (print_string): Fix printing of multibyte string with
11555 nontrivial printcharfun.
11556
11557 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11558
11559 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
11560
11561 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
11562
11563 2003-07-31 Kenichi Handa <handa@m17n.org>
11564
11565 * process.c (read_process_output): Return the actually read bytes
11566 instead of the result of decoding.
11567
11568 2003-07-31 Kenichi Handa <handa@m17n.org>
11569
11570 * xterm.h (struct x_bitmap_record): New member have_mask.
11571
11572 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
11573 to 0.
11574 (x_create_bitmap_from_file): Likewise.
11575 (x_destroy_bitmap): Check have_mask member before freeing a mask.
11576 (x_destroy_all_bitmaps): Likewise.
11577 (x_create_bitmap_mask): Set have_mask member to 1.
11578
11579 2003-07-30 Richard M. Stallman <rms@gnu.org>
11580
11581 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
11582
11583 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11584
11585 * gtkutil.c (xg_mark_data): Update calls to mark_object.
11586
11587 2003-07-29 Richard M. Stallman <rms@gnu.org>
11588
11589 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
11590 Conditionalize XIM code on HAVE_XIM.
11591
11592 * fns.c (Fclear_string): New function.
11593 (syms_of_fns): defsubr it.
11594
11595 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11596
11597 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
11598
11599 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
11600
11601 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
11602
11603 * buffer.c (delete_all_overlays): New function.
11604 * buffer.h (delete_all_overlays): Declare.
11605 * coding.c (run_pre_post_conversion_on_str):
11606 * print.c (temp_output_buffer_setup):
11607 * fileio.c (Finsert_file_contents):
11608 * minibuf.c (get_minibuffer): Use it.
11609
11610 2003-07-22 Andrew Choi <akochoi@shaw.ca>
11611
11612 * unexmacosx.c (unexec_regions_sort_compare):
11613 (unexec_regions_merge): New functions. Sort and merge unexec
11614 regions before dumping them.
11615
11616 2003-07-22 Dave Love <fx@gnu.org>
11617
11618 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
11619
11620 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
11621
11622 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
11623 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
11624 MARKBIT as the gcmarkbit for strings.
11625
11626 2003-07-21 Richard M. Stallman <rms@gnu.org>
11627
11628 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
11629
11630 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
11631 (syms_of_fns): Corresponding change.
11632
11633 * alloc.c (syms_of_alloc): Doc fixes.
11634
11635 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
11636
11637 * s/netbsd.h: Use -Wl syntax.
11638
11639 2003-07-17 Richard M. Stallman <rms@gnu.org>
11640
11641 * xterm.c (xim_initialize): Redo 6/24 change.
11642
11643 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
11644
11645 * buffer.c (copy_overlays): Use EMACS_INT for positions.
11646 (Fswitch_to_buffer): Don't signal an error when switching to the same
11647 buffer in a dedicated window.
11648
11649 * alloc.c: Use bitmaps for cons, as was done for floats.
11650 (init_float, init_cons): Let the normal code allocate the first block.
11651 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
11652 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
11653 New macros.
11654 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
11655 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
11656 (live_cons_p): Check the pointer is not past the `conses' array.
11657 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
11658 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
11659 (survives_gc_p): Use CONS_MARKED_P and simplify.
11660 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
11661
11662 2003-07-13 Paul Eggert <eggert@twinsun.com>
11663
11664 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
11665 puts it into BSS instead, at least on Solaris 8 and 9.
11666 This is a valid optimization, and it may occur on other platforms,
11667 so Emacs should not assume that initializing a static variable to
11668 zero puts it into data.
11669 * alloc.c (pure, staticvec):
11670 Initialize these arrays to nonzero, so that they're not
11671 put into BSS by that optimization.
11672
11673 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
11674
11675 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
11676 (lisp_align_malloc): Use posix_memalign is available.
11677 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
11678 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
11679 for consistency. Update users.
11680
11681 2003-07-13 Richard M. Stallman <rms@gnu.org>
11682
11683 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
11684
11685 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
11686
11687 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
11688 and use the Gtk+ function gtk_window_icon_from_file if available.
11689
11690 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
11691 handle mask of bitmaps.
11692 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
11693 mask property.
11694 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
11695
11696 * xterm.h (xg_set_icon): New function.
11697
11698 2003-07-12 Paul Eggert <eggert@twinsun.com>
11699
11700 * unexelf.c (unexec): Consider a section to precede the .bss
11701 section if its addresses overlap that of .bss.
11702
11703 2003-07-12 Richard M. Stallman <rms@gnu.org>
11704
11705 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
11706
11707 * config.in (HAVE_CRTIN): Add #undef.
11708 (INLINE): Really inline only if OPTIMIZE is defined.
11709
11710 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
11711 END_FILES_1.
11712 (START_FILES_1, END_FILES_1): New macros (conditional).
11713 (LD_SWITCH_SYSTEM_TEMACS): Define.
11714
11715 * s/openbsd.h: Don't include bsd4-3.h.
11716 (TERMINFO): Define.
11717 (LIBS_TERMCAP): Define.
11718 (LD_SWITCH_SYSTEM): Define (two definitions).
11719
11720 * xfns.c: Include libpng/png.h instead of png.h.
11721
11722 2003-07-11 Andreas Schwab <schwab@suse.de>
11723
11724 * buffer.c (modify_overlay): Update prototype.
11725 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
11726 Likewise.
11727
11728 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11729
11730 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
11731 (struct interval): Move to intervals.h.
11732 (struct Lisp_Marker): Use EMACS_INT for position info.
11733 (forward_point): Remove prototype of defunct function.
11734 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
11735 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
11736 (syms_of_textprop, set_text_properties): Remove prototypes that are
11737 already in intervals.h.
11738
11739 * intervals.h (struct interval): Move from lisp.h.
11740 Use EMACS_INT for position and size info.
11741
11742 * coding.c: Include intervals.h for Fset_text_properties.
11743
11744 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11745 position and length information.
11746
11747 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11748
11749 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11750 position and length information.
11751
11752 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11753
11754 Change overlays_after and overlays_before so the overlays themselves
11755 are linked into lists, rather than using cons cells. After all each
11756 Lisp_Misc already occupies 5 words, so we can add a `next' field to
11757 Lisp_Overlay for free and save up one cons cell per overlay (not
11758 to mention one indirection when traversing the list of overlay).
11759
11760 * lisp.h (struct Lisp_Overlay): New field `next'.
11761
11762 * buffer.h (struct buffer): Change overlays_before and overlays_after
11763 from Lisp lists of overlays to pointers to overlays.
11764
11765 * buffer.c (overlay_strings, recenter_overlay_lists):
11766 Fix typo in eassert in last commit.
11767 (unchain_overlay): New function.
11768 (add_overlay_mod_hooklist): Use AREF.
11769 (copy_overlays, reset_buffer, overlays_at, overlays_in)
11770 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
11771 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
11772 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
11773 (report_overlay_modification, evaporate_overlays, init_buffer_once):
11774 Adjust to new type of overlays_(before|after).
11775
11776 * alloc.c (mark_object): Mark the new `next' field of overlays.
11777 (mark_buffer): Manually mark the overlays_(after|before) fields.
11778
11779 * coding.c (run_pre_post_conversion_on_str):
11780 * editfns.c (overlays_around):
11781 * xdisp.c (load_overlay_strings):
11782 * fileio.c (Finsert_file_contents):
11783 * indent.c (current_column):
11784 * insdel.c (signal_before_change, signal_after_change):
11785 * intervals.c (set_point_both):
11786 * print.c (temp_output_buffer_setup): Use new type for
11787 overlays_(before|after).
11788
11789 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
11790
11791 * buffer.c (report_overlay_modification): Don't run hooks while
11792 traversing the list of overlays.
11793
11794 * buffer.h (struct buffer): Use an int for overlay_center.
11795 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11796 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11797
11798 * buffer.c (reset_buffer, recenter_overlay_lists)
11799 (adjust_overlays_for_insert, adjust_overlays_for_delete)
11800 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
11801 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
11802 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11803 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11804
11805 * xdisp.c (fast_find_position): Remove unused var.
11806
11807 * cmds.c (Qexpand_abbrev): New sym.
11808 (syms_of_cmds): Initialize it.
11809 (internal_self_insert): Use it to call expand-abbrev.
11810
11811 2003-07-09 Kim F. Storm <storm@cua.dk>
11812
11813 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
11814 was configured with --without-xim.
11815 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
11816
11817 2003-07-07 Richard M. Stallman <rms@gnu.org>
11818
11819 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
11820
11821 * alloc.c (Fgarbage_collect): Doc fix.
11822
11823 2003-07-07 Nozomu Ando <nand@mac.com>
11824
11825 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
11826
11827 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11828
11829 * minibuf.c (read_minibuf): UNGCPRO before returning.
11830 (Ftry_completion, Fall_completions): Doc fix.
11831
11832 * alloc.c (live_float_p): Check that p is not past the `floats' array,
11833 now that `floats' is not the last element of the struct any more.
11834
11835 2003-07-06 Jason Rumney <jasonr@gnu.org>
11836
11837 * w32term.h (ClipboardSequence_Proc): New type.
11838
11839 * w32fns.c (clipboard_sequence_fn): New variable.
11840 (globals_of_w32fns): Initialize it.
11841
11842 * w32select.c (last_clipboard_sequence_number): New variable.
11843 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
11844 number if possible.
11845
11846 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11847
11848 * m/amdx86-64.h (MARKBIT):
11849 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
11850 MARKBIT and ARRAY_MARK_FLAG any more.
11851
11852 * m/hp800.h (XSETMARKBIT):
11853 * m/sr2k.h (XSETMARKBIT):
11854 * lisp.h (XSETMARKBIT): Remove unused macro.
11855
11856 * lisp.h (mark_object): Change prototype.
11857
11858 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
11859 (last_marked): Change accordingly.
11860 (mark_interval, mark_maybe_object, mark_maybe_pointer)
11861 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
11862 (mark_buffer): Update calls to mark_object.
11863
11864 * bytecode.c (mark_byte_stack):
11865 * fns.c (sweep_weak_table):
11866 * keyboard.c (mark_kboards): Update calls to mark_object.
11867
11868 2003-07-06 Jason Rumney <jasonr@gnu.org>
11869
11870 * alloc.c (struct ablock): Only include padding when there is some.
11871
11872 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
11873
11874 * alloc.c (ALIGN): Add casts to simplify usage.
11875 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
11876 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
11877 (struct ablock, struct ablocks): New types.
11878 (free_ablock): New global var.
11879 (lisp_align_malloc, lisp_align_free): New functions.
11880 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
11881 (struct float_block): Reorder and add gcmarkbits.
11882 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
11883 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
11884 (init_float, make_float): Use lisp_align_malloc.
11885 (free_float, live_float_p): Don't use `type' any more.
11886 (make_float): Use FLOAT_UNMARK to access to mark bit.
11887 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
11888 Use FLOAT_MARKED_P to access the mark bit.
11889 (pure_alloc): Simplify use of ALIGN.
11890 (mark_object): Use FLOAT_MARK to access the mark bit.
11891 (gc_sweep): Use new macros to access the float's mark bit.
11892 (init_alloc_once): Init free_ablock.
11893
11894 * lisp.h (struct Lisp_Float): Remove unused field `type'.
11895
11896 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
11897
11898 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
11899 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
11900 (allocate_buffer): Move.
11901 (string_bytes): Don't mask markbit of `size_byte'.
11902 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11903 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
11904 Use the `size' field of buffers (rather than the `name' field) for
11905 the mark bit, as is done for all other vectorlike objects.
11906 Use the new macros to access the mark bit of vectorlike objects.
11907
11908 2003-06-26 Richard M. Stallman <rms@gnu.org>
11909
11910 * puresize.h (BASE_PURESIZE): Increment base size.
11911
11912 * xdisp.c (fast_find_position): Enable Gerd's new definition.
11913
11914 * xterm.c (xim_initialize): Undo previous change.
11915
11916 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
11917
11918 * alloc.c (survives_gc_p): Simplify.
11919
11920 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
11921
11922 * window.c (Fset_window_dedicated_p): Simplify.
11923 (display_buffer_1): Don't raise the win from which minibuf was entered.
11924 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
11925 (Fminibuffer_selected_window): Simplify.
11926
11927 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
11928
11929 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
11930 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
11931
11932 * insdel.c (check_markers, adjust_markers_for_delete)
11933 (adjust_markers_for_insert, adjust_markers_for_replace)
11934 (prepare_to_modify_buffer, RESTORE_VALUE):
11935 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
11936 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
11937 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
11938 * alloc.c (Fmake_marker, free_marker, gc_sweep):
11939 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
11940 * editfns.c (save_excursion_restore, transpose_markers):
11941 * window.c (delete_window):
11942 * xdisp.c (message_dolog): Update for new types.
11943
11944 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11945
11946 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
11947 (realize_default_face): Use default_face_done_p for the force_p
11948 argument to set_lface_from_font_name. Set default_face_done_p to one.
11949
11950 * frame.c (make_frame): Initialize default_face_done_p.
11951
11952 * frame.h (struct frame): Add default_face_done_p.
11953
11954 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
11955 will be defined.
11956
11957 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
11958
11959 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
11960 Initialize the new field `gcmarkbit'.
11961 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
11962 (mark_interval_tree): Don't mark the tree separately from the nodes.
11963 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
11964 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11965 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
11966
11967 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
11968 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
11969 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
11970 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
11971 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
11972
11973 2003-06-24 Dave Love <fx@gnu.org>
11974
11975 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
11976
11977 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
11978 from gnulib.
11979
11980 2003-06-21 Richard M. Stallman <rms@gnu.org>
11981
11982 * fileio.c (Fwrite_region): Alternate messages
11983 for append and partial write.
11984
11985 * keyboard.c (read_key_sequence): When converting upcase fn key to
11986 downcase, update fkey and keytran so `backspace' gets translated.
11987
11988 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
11989
11990 * process.c (wait_reading_process_input): Don't signal SIGIO
11991 in batch mode.
11992
11993 2003-06-17 Kenichi Handa <handa@m17n.org>
11994
11995 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
11996 composite.h.
11997
11998 * xselect.c: Don't include charset.h, coding.h, composite.h.
11999 (Qforeign_selection): New variable.
12000 (syms_of_xselect): Intern and static it.
12001 (selection_data_to_lisp_data): Return a unibyte string made from
12002 data with `foreign-selection' text property.
12003
12004 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
12005
12006 * termhooks.h (EVENT_INIT): New macro.
12007
12008 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
12009
12010 * alloc.c (mark_kboards): Move to keyboard.c.
12011
12012 * keyboard.c (record_asynch_buffer_change, read_avail_input):
12013 * xterm.c (x_dispatch_event):
12014 * xmenu.c (find_and_call_menu_selection):
12015 * xdisp.c (handle_tool_bar_click):
12016 * w32menu.c (menubar_selection_callback):
12017 * sysdep.c (kbd_input_ast, read_input_waiting):
12018 * msdos.c (dos_rawgetc):
12019 * macterm.c (mac_check_for_quit_char):
12020 * macmenu.c (menubar_selection_callback):
12021 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
12022 data to kbd_buffer_store_event.
12023
12024 2003-06-15 Kim F. Storm <storm@cua.dk>
12025
12026 * xdisp.c (x_fix_overlapping_area): Always use area relative X
12027 to fix redisplay problem with tall characters (such as \e,AC\e(B).
12028
12029 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12030
12031 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
12032
12033 2003-06-12 Kenichi Handa <handa@m17n.org>
12034
12035 * fileio.c (Fwrite_region): Save and restore restriction.
12036
12037 2003-06-12 Dave Love <fx@gnu.org>
12038
12039 * alloca.c (alloca): Declare arg as size_t.
12040
12041 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
12042 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
12043
12044 2003-06-11 Dave Love <fx@gnu.org>
12045
12046 * search.c (shrink_regexp_cache): Use xrealloc.
12047 (syms_of_search): Use xmalloc.
12048
12049 2003-06-10 Kim F. Storm <storm@cua.dk>
12050
12051 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
12052 Adjust phys_cursor.x to be relative to window box, rather than
12053 text area before checking -- to ensure cursor is redrawn when
12054 exposing window.
12055 Note: This also fixes a similar (older) bug if display margins
12056 are present.
12057
12058 2003-06-06 Kenichi Handa <handa@m17n.org>
12059
12060 * coding.c (encoding_buffer_size): If coding->type is
12061 coding_type_ccl, double magnification on CRLF encoding.
12062
12063 2003-06-06 Jason Rumney <jasonr@gnu.org>
12064
12065 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
12066 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
12067
12068 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
12069 Mac too.
12070
12071 2003-06-05 Dave Love <fx@gnu.org>
12072
12073 * strftime.c: Merge changes from gnulib.
12074
12075 * mktime.c (__mktime_internal): Merge changes from gnulib
12076 involving year 69 and dst2.
12077
12078 Changes to merge with gnulib version and be consistent with the
12079 autoconf test:
12080
12081 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
12082 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
12083 [HAVE_LOCALE_H]: Include locale.h.
12084 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
12085
12086 2003-06-05 Kim F. Storm <storm@cua.dk>
12087
12088 * window.c (coordinates_in_window): Convert X and Y to window
12089 relative coordinates inside mode-line and header-line parts.
12090 Convert X and Y to margin area relative coordinates inside left
12091 and right display margin parts.
12092
12093 2003-06-05 Jason Rumney <jasonr@gnu.org>
12094
12095 * w32fns.c (add_system_logical_colors_to_map): New function.
12096 (Fx_open_connection): Use it.
12097
12098 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
12099
12100 * process.c (allocate_pty): Revert part of the previous patch.
12101 (Faccept_process_output): Simplify.
12102
12103 2003-06-04 Jason Rumney <jasonr@gnu.org>
12104
12105 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
12106
12107 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
12108 (lispy_mouse_wheel_names): Remove.
12109 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
12110 Always define drag_and_drop_syms.
12111
12112 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
12113 WHEEL_EVENT events.
12114
12115 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
12116
12117 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
12118
12119 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
12120
12121 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12122
12123 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
12124 menu item label.
12125
12126 2003-06-03 Richard M. Stallman <rms@gnu.org>
12127
12128 * window.c (Fwindow_edges): Doc fix.
12129 (Fwindow_pixel_edges, Fwindow_inside_edges)
12130 (Fwindow_inside_pixel_edges): New functions.
12131 (syms_of_window): defsubr them.
12132
12133 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
12134 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
12135
12136 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
12137
12138 * dispnew.c (Fsit_for): Don't lie about the number of args.
12139
12140 2003-06-02 Dave Love <fx@gnu.org>
12141
12142 * callproc.c: Use HAVE_FCNTL_H, not USG5.
12143 (syms_of_callproc) <process-environment>: Doc fix.
12144
12145 * doc.c: Use HAVE_FCNTL_H, not USG5.
12146
12147 * xfaces.c (font_rescale_ratio): Fix for K&R.
12148
12149 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
12150
12151 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
12152
12153 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
12154
12155 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
12156 (xg_create_frame_widgets): Use ENCODE_UTF_8.
12157
12158 * xterm.c (Qutf_8): Move to coding.c
12159
12160 * xmenu.c (ENCODE_MENU_STRING): New.
12161 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
12162 Use it.
12163
12164 * coding.h (ENCODE_UTF_8): New.
12165 (Qutf_8): Declare.
12166
12167 * coding.c (Qutf_8): New.
12168 (syms_of_coding): Intern it.
12169
12170 * fns.c: Doc fixes.
12171
12172 2003-06-02 Kenichi Handa <handa@m17n.org>
12173
12174 * buffer.c (Fset_buffer_multibyte): Fix previous change.
12175
12176 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
12177
12178 * lread.c (openp): Make sure STR is a string.
12179
12180 2003-06-01 David Ponce <david@dponce.com>
12181
12182 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
12183 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
12184
12185 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
12186 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
12187 (discard_mouse_events): Discard WHEEL_EVENT events too.
12188 (lispy_wheel_names, wheel_syms): New.
12189 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
12190 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
12191 (make_lispy_event): Add WHEEL_EVENT handler.
12192
12193 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
12194 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12195 WHEEL_EVENT events.
12196
12197 2003-05-31 John Paul Wallington <jpw@gnu.org>
12198
12199 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
12200 timer are in lisp/emacs-lisp.
12201
12202 2003-05-31 Kenichi Handa <handa@m17n.org>
12203
12204 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
12205 region when a buffer is changed to unibyte.
12206
12207 * charset.h (VALID_LEADING_CODE_P): New macro.
12208 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
12209
12210 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
12211 is nonzero, accept multibyte form of eight-bit-control chars.
12212 (decode_composition_emacs_mule): Likewise.
12213 (decode_coding_emacs_mule): Likewise.
12214 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
12215 multibyte form of eight-bit-control chars.
12216
12217 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
12218 (Finsert_file_contents): If coding-system-for-read is bound to
12219 Qauto_save_coding, use the coding system emacs-mule with special
12220 setting for recovering a file.
12221 (choose_write_coding_system): On auto saving, use the coding
12222 system emacs-mule with special setting for auto saving.
12223 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
12224
12225 2003-05-30 Kenichi Handa <handa@m17n.org>
12226
12227 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
12228 properly before calling ccl_driver.
12229
12230 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
12231
12232 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
12233 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
12234 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
12235
12236 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
12237
12238 * xfaces.c (realize_default_face): Do not abort if lface is
12239 non-existent - reverts change from 2003-05-19.
12240
12241 2003-05-29 Kenichi Handa <handa@m17n.org>
12242
12243 * coding.c (decode_coding_iso2022): Pay attention to the byte
12244 sequence of CTEXT extended segment, and retain those bytes as is.
12245
12246 2003-05-28 Kenichi Handa <handa@m17n.org>
12247
12248 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
12249 of CODING_REPLACEMENT_CHARACTER.
12250 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
12251 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
12252 check this flag on encoding.
12253 (encode_coding_sjis_big5):
12254 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
12255 (Fset_terminal_coding_system_internal):
12256 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
12257 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
12258
12259 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
12260 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
12261 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
12262
12263 2003-05-28 Richard M. Stallman <rms@gnu.org>
12264
12265 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
12266
12267 * eval.c (unbind_to): Move init of this_binding to separate statement.
12268
12269 2003-05-28 Kim F. Storm <storm@cua.dk>
12270
12271 * xdisp.c (expose_window): Fix error in calculation of
12272 window relative coordinates of area to redisplay.
12273
12274 2003-05-27 Jason Rumney <jasonr@gnu.org>
12275
12276 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
12277
12278 2003-05-27 David Ponce <david@dponce.com>
12279
12280 Handle W32 mouse wheel events as mouse click events, like in X.
12281
12282 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
12283 MOUSE_WHEEL_EVENT anymore.
12284
12285 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
12286 Scrolling down/up the mouse wheel is respectively mapped to mouse
12287 button 4 and 5.
12288 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12289 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
12290 WM_MOUSEWHEEL events.
12291
12292 2003-05-27 Andreas Schwab <schwab@suse.de>
12293
12294 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
12295
12296 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
12297 partially visible line.
12298
12299 * alloc.c (Fgarbage_collect): Fix last change.
12300
12301 2003-05-26 John Paul Wallington <jpw@gnu.org>
12302
12303 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
12304
12305 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
12306
12307 * window.c (Fset_window_buffer): Add type of `keep_margins'.
12308 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
12309
12310 * window.h (window_box_text_cols): Declare.
12311
12312 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
12313 (x_draw_vertical_border): Remove unused var `f'.
12314
12315 * xfaces.c (build_scalable_font_name): Remove `unused var
12316 pixel_size' warning.
12317
12318 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
12319
12320 * unexelf.c (unexec): Remove `unused var n' warning.
12321
12322 * strftime.c (my_strftime_localtime_r): Remove `defined but
12323 unused' warning.
12324
12325 * process.c (allocate_pty): Remove `unused var stb' and
12326 `cp might be used uninitialized' warnings.
12327
12328 * dispnew.c (mode_line_string): Remove unused var `f'.
12329
12330 * coding.c (find_safe_codings): Remove unused var `i'.
12331
12332 * bytecode.c (Fbyte_code): Remove `unused val' warning.
12333
12334 * buffer.c (Fkill_buffer): Remove unused var `list'.
12335
12336 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
12337
12338 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12339
12340 * frame.c (make_frame): Condition want_fullscreen with
12341 HAVE_WINDOW_SYSTEM.
12342
12343 2003-05-25 Juanma Barranquero <lektu@terra.es>
12344
12345 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
12346 (Fwindow_scroll_bars): Fix typo in docstring.
12347
12348 2003-05-24 Kim F. Storm <storm@cua.dk>
12349
12350 The following changes serve several purposes:
12351
12352 1) Swap the position of fringes and display margins in windows, i.e.
12353 the fringes are now displayed between the margins and the text area
12354 (by default).
12355
12356 2) Allow fringe and scroll bar parameters to be set per-buffer and
12357 per-window (like display margins). Such settings are now stored
12358 in window configurations, preserved when frames are resized, and
12359 copied when windows are split vertically or horizontally.
12360 Several bugs related to display margins have been fixed.
12361
12362 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
12363
12364 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
12365 rather than FRAME_WIDTH (FRAME_FONT (f)).
12366
12367 5) Introduce a consistent naming of variables, members and macros
12368 depending on whether their value is measured in pixels or in
12369 canonical columns/lines. Pixel dimensions are named *_width and
12370 *_height, while canonical columns/lines are named *_cols and
12371 *_lines. Pixel positions are named *_x and *_y, while column/line
12372 positions are named *_col and *_line.
12373
12374 6) Consolidate more of the X, W32, and MAC gui code by moving
12375 common data into struct frame, and generalize it for the non-gui
12376 case by using suitable defaults.
12377
12378 7) Cleanup and consolidate the macros controlling frame and window
12379 layout into frame.h and window.h, and generalize the use of the
12380 various window_box_* functions (enhanced to handle the new fringe
12381 position and the per-window fringe and scroll bar settings).
12382
12383 * frame.h (struct frame): Rename members height to text_lines,
12384 width to text_cols, window_height to total_lines, window_width to
12385 total_cols, new_height to new_text_lines, new_width to
12386 new_text_cols. All uses changed.
12387 (struct frame): New members which consolidate common members of
12388 x_output, w32_output, and mac_output structures: left_pos,
12389 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
12390 win_gravity, size_hint_flags, border_width, internal_border_width,
12391 line_height, fringe_cols, left_fringe_width, right_fringe_width,
12392 want_fullscreen. All uses changed.
12393 (struct frame): New member column_width contaning the canonical
12394 column width, analogue to line_height. All uses changed.
12395 (struct frame): Rename members scroll_bar_pixel_width to
12396 config_scroll_bar_width, and scroll_bar_cols to
12397 config_scroll_bar_cols. All uses changed.
12398 (struct frame): New member scroll_bar_actual_width which
12399 consolidates and renames the vertical_scroll_bar_extra member of
12400 x_output, w32_output, and mac_output structures. All uses changed.
12401 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
12402 from x/w32/macterm.h files. All uses changed. Also change code
12403 which referred to f->output_data...->pixel_height.
12404 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
12405 from x/w32/macterm.h files. All uses changed. Also change code
12406 which referred to f->output_data...->pixel_width.
12407 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
12408 Also change code which referred to f->height.
12409 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
12410 Also change code which referred to f->width.
12411 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
12412 to update new_text_lines and new_text_cols members directly.
12413 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
12414 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
12415 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
12416 FRAME_SCROLL_BAR_COLS. All uses changed.
12417 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
12418 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
12419 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
12420 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
12421 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
12422 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
12423 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
12424 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
12425 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
12426 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
12427 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
12428 Unconditionally return line_height member (it now has proper value
12429 also for non-window frames).
12430 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
12431 return new column_width member (rather than the default font width).
12432 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
12433 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
12434 from x/w32/macterm.h files. Unconditionally return corresponding
12435 member of frame structure (they now have proper values also for
12436 non-window frames).
12437 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
12438 Calculate return value from left and right widths.
12439 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
12440 internal_border_width member (has proper value for non-window frame).
12441 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
12442 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
12443 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
12444 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
12445 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
12446 consolidated from xterm.h, macterm.h, and w32term.h.
12447 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
12448 consolidated from xterm.h, macterm.h, and w32term.h.
12449 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
12450 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
12451 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
12452 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
12453 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
12454 consolidated from x/mac/w32term.h.
12455 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
12456 consolidated from x/mac/w32term.h.
12457 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
12458 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
12459 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
12460 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
12461
12462 * window.h (struct window): Rename members left to left_col,
12463 top to top_line, height to total_lines, width to total_cols,
12464 left_margin_width to left_margin_cols, right_margin_width to
12465 right_margin_cols, orig_height to orig_total_lines, orig_top to
12466 orig_top_line. All uses changed.
12467 (struct window): New members left_fringe_width, right_fringe_width,
12468 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
12469 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
12470 New macros primarily used to simplify other macros.
12471 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
12472 referred to XINT (w->width).
12473 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
12474 referred to XINT (w->height).
12475 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
12476 referred to XINT (w->width) * canon_x_unit.
12477 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
12478 referred to XINT (w->height) * canon_y_unit.
12479 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
12480 referred to XINT (w->left).
12481 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
12482 all uses and code that referred to XINT (w->left) + XINT (w->width).
12483 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
12484 referred to XINT (w->top).
12485 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
12486 referred to XINT (w->top) + XINT (w->height).
12487 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12488 referred to XINT (w->left) * canon_x_unit.
12489 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12490 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12491 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12492 referred to XINT (w->top) * canon_y_unit.
12493 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12494 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12495 (WINDOW_LEFTMOST_P): New macro.
12496 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12497 All uses changed.
12498 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12499 All uses changed.
12500 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12501 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12502 Do not exclude left fringe width.
12503 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12504 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12505 Do not exclude fringe widths.
12506 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12507 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12508 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12509 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12510 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12511 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12512 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12513 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12514 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12515 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12516 New macros. Change code which referenced corresponding
12517 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12518 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12519 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12520 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12521 allow per-window scroll-bar settings.
12522 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12523 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12524 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12525 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12526 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12527 FRAME_SCROLL_BAR_WIDTH.
12528 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12529 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12530 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12531 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12532 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12533 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12534 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12535 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12536 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12537 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12538 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12539 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12540 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12541 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12542 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12543 (window_from_coordinates): Update prototype.
12544 (Fset_window_buffer): Update EXFUN.
12545 (set_window_buffer): Update prototype.
12546
12547 * dispextern.h (struct glyph_matrix): Rename members window_left_x
12548 to window_left_col, window_top_y to window_top_line. All uses
12549 changed.
12550 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
12551 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
12552 internal_border_width is now set to 0 for non-window frames.
12553 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
12554 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
12555 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
12556 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
12557 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
12558 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12559 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12560 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
12561 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
12562 Move to window.h and renamed [see window.h changes].
12563 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
12564 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
12565 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
12566 Use WINDOW_TOTAL_LINES.
12567 (frame_update_line_height): Remove prototype.
12568
12569 * buffer.h (struct buffer): Rename members measured in columns:
12570 left_margin_width to left_margin_cols, right_margin_width to
12571 right_margin_cols. All uses changed.
12572 New members left_fringe_width, right_fringe_width,
12573 fringes_outside_margins for per-buffer fringe settings.
12574 New members scroll_bar_width and vertical_scroll_bar_type for
12575 per-buffer scroll bar settings.
12576
12577 * buffer.c (init_buffer_once): Set buffer_defaults and
12578 buffer_local_flags for new buffer-local variables
12579 left_fringe_width, right_fringe_width, fringes_outside_margins,
12580 scroll_bar_width, and vertical_scroll_bar_type.
12581 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
12582 default-* variables for them.
12583
12584 * dispnew.c: Make (many) trivial substitutions for renamed and
12585 new macros in dispextern.h, frame.h and window.h.
12586 (mode_line_string): No need to adjust width for mode lines, as it
12587 is already adjusted by the caller.
12588 (marginal_area_string): Handle fringes inside/outside margins.
12589
12590 * frame.c: Make (many) trivial substitutions for renamed and
12591 new macros in dispextern.h, frame.h and window.h.
12592 (make_frame): Initialize left_fringe_width, right_fringe_width,
12593 fringe_cols, scroll_bar_actual_width, border_width,
12594 internal_border_width, column_width, line_height, x_pixels_diff,
12595 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
12596 members with values suitable for a non-window frames.
12597
12598 * gtkutil.c: Make (many) trivial substitutions for renamed and
12599 new macros in dispextern.h, frame.h and window.h.
12600
12601 * indent.c: Make (few) trivial substitutions for renamed and
12602 new macros in dispextern.h, frame.h and window.h.
12603
12604 * keyboard.c: Make (many) trivial substitutions for renamed and
12605 new macros in dispextern.h, frame.h and window.h.
12606 (make_lispy_event): Use window positions returned from
12607 window_from_coordinates when constructing the lisp event for
12608 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
12609 (incorrect) values locally.
12610 (make_lispy_movement): Use window positions returned from
12611 window_from_coordinates when constructing the lisp event, rather
12612 than calculating (incorrect) values locally.
12613
12614 * scroll.c: Make (some) trivial substitutions for renamed and
12615 new macros in dispextern.h, frame.h and window.h.
12616
12617 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
12618 scroll-bars.
12619
12620 * sysdep.c: Make (few) trivial substitutions for renamed and
12621 new macros in dispextern.h, frame.h and window.h.
12622
12623 * term.c: Make (some) trivial substitutions for renamed and
12624 new macros in dispextern.h, frame.h and window.h.
12625
12626 * widget.c: Make (few) trivial substitutions for renamed and
12627 new macros in dispextern.h, frame.h and window.h.
12628
12629 * window.c: Make (many) trivial substitutions for renamed and
12630 new macros in dispextern.h, frame.h and window.h.
12631 (make_window): Initialize new members
12632 left_margin_cols, right_margin_cols, left_fringe_width,
12633 right_fringe_width, fringes_outside_margins, scroll_bar_width,
12634 and vertical_scroll_bar_type.
12635 (coordinates_in_window): Adapt to new fringe/margin positions
12636 and per-window fringes and scroll-bars.
12637 Fix bug related to incorrectly adjusting coordinates by
12638 frame's internal_border_width (the effect normally negible since
12639 the internal_border_width is typically 0 or 1 pixel, but very
12640 noticeable for an internal_border_width of e.g. 25 pixels).
12641 Upon successful return (other than ON_NOTHING), the coordinates
12642 are now always properly converted to window relative for the
12643 given display element.
12644 (window_from_coordinates): Add new parameters wx and wy to
12645 return the window relative x and y position in the returned
12646 window and part. A null arg means, don't return the position.
12647 All callers changed.
12648 (adjust_window_margins): New function which may reduce the width
12649 of the display margins if a window's text area is too small after
12650 resizing or splitting windows.
12651 (size_window): Fix bug that did not account for display margin
12652 widths when checking the minimum width of a window; use
12653 adjust_window_margins.
12654 (set_window_buffer): Call Fset_window_fringes and
12655 Fset_window_scroll_bars to setup per-window elements.
12656 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
12657 existing display margin, fringe widths, and scroll bar settings
12658 (e.g. after splitting a window or resizing the frame).
12659 All callers changed.
12660 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
12661 (Fsplit_window): Duplicate original window's display margin,
12662 fringe, and scroll-bar settings; then call Fset_window_buffer with
12663 KEEP_MARGINS non-nil. This fixes a bug which caused a split
12664 window to only preserve the display margins in one of the windows.
12665 When splitting horizontally, call adjust_window_margins on both
12666 windows to ensure that the text area of the new windows is non too
12667 narrow. This fixes a bug which could cause Emacs to trap if the
12668 width of the split window was less than the width of the display
12669 margins.
12670 (window_box_text_cols): Rename from window_internal_width.
12671 All uses changed. Adapt to per-window fringes and scroll bars.
12672 Fix bug that caused vertical separator to be subtracted also on
12673 window frames. Fix another bug that did not reduce the returned
12674 value by the columns used for display margins.
12675 (window_scroll_line_based): Fix bug related to scrolling too much
12676 when display margins are present (implicitly fixed by the fix to
12677 window_box_text_cols).
12678 (scroll_left, scroll_right): Fix bug related to scrolling too far
12679 by default when display margins are present (implicitly fixed by
12680 the fix to window_box_text_cols).
12681 (struct saved_window): Rename members left to left_col, top to
12682 top_line, width to total_cols, height to total_lines, orig_top to
12683 orig_top_line, orig_height to orig_total_lines. All uses changed.
12684 New members left_margin_cols, right_margin_cols,
12685 left_fringe_width, right_fringe_width, fringes_outside_margins,
12686 scroll_bar_width, and vertical_scroll_bar_type for saving
12687 per-window display elements.
12688 (Fset_window_configuration): Restore display margins, fringes,
12689 and scroll bar settings. This fixes a bug which caused display
12690 margins to be discarded when saving and restoring a window
12691 configuration.
12692 (save_window_save): Save display margins, fringes, and scroll bar
12693 settings. This fixes a bug which caused display margins to be
12694 discarded when saving and restoring a window configuration.
12695 (Fset_window_margins): Do nothing if display margins are not
12696 really changed. Otherwise, call adjust_window_margins to ensure
12697 the text area doesn't get too narrow. This fixes a bug which
12698 could cause Emacs to trap if setting display margins wider than
12699 the width of the window.
12700 (Fset_window_fringes): New defun to allow user to specifically set
12701 this window's fringe widths and position vs. display margins.
12702 (Fwindow_fringes): New defun to return window's actual fringe settings.
12703 (Fset_window_scroll_bars): New defun to allow user to specifically
12704 set this window's scroll bar width and position.
12705 (Fwindow_scroll_bars): New defun to return window's actual scroll
12706 bar settings.
12707 (compare_window_configurations): Also compare display margins,
12708 fringes, and scroll bar settings.
12709 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
12710
12711 * xdisp.c: Make (many) trivial substitutions for renamed and
12712 new macros in dispextern.h, frame.h and window.h.
12713 (window_box_width): Adapt to per-window fringes and scroll bars,
12714 and new fringe vs. display margin position. Note that returned
12715 value is no longer guaranteed to be a whole multiple of the frame
12716 column width, since per-window fringes may now be any width.
12717 (window_box_left_offset): New function like window_box_left, but
12718 value is relative to left border of window (rather than frame).
12719 (window_box_right_offset): New function like window_box_right,
12720 but value is relative to left border of window.
12721 (window_box_left): Adapt to per-window fringes and scroll bars,
12722 and new fringe vs. display margin position. Simplify by using
12723 WINDOW_LEFT_EDGE_X and window_box_left_offset.
12724 (window_box): Allow null args for unnecessary return values;
12725 change/simplify relevant callers.
12726 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
12727 and new fringe vs. display margin position.
12728 Use window_box_left_offset and window_box_right_offset
12729 (get_glyph_string_clip_rect): Adapt to per-window fringes and
12730 scroll bars, and new fringe vs. display margin position.
12731 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
12732 (draw_fringe_bitmap): Rework to handle per-window fringes and new
12733 fringe vs. display margin position.
12734 (hscroll_window_tree): Use window_box_width instead of window_box.
12735 (redisplay_window): Adapt to per-window scroll bars.
12736 (draw_glyphs): Rework to handle per-window fringes and scroll
12737 bars, and new fringe vs. display margin position.
12738 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
12739 (x_clear_end_of_line): Adapt to per-window fringes and scroll
12740 bars, and new fringe vs. display margin position. Fix bug which
12741 increased total width of full_width rows by width of scroll bars
12742 although window's total width already includes that.
12743 (x_fix_overlapping_area): Simplify using window_box_left_offset.
12744 (expose_area): Simplify using window_box_left_offset.
12745 (x_draw_vertical_border): Handle per-window scroll bar settings,
12746 mixing windows with left, right and no scroll bars.
12747
12748 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
12749 where it's used in x_list_fonts (for clarity).
12750 (frame_update_line_height): Remove unused function; functionality
12751 is now done directly when setting the default font in x_set_font.
12752
12753 * xfns.c: Make (many) trivial substitutions for renamed and
12754 new macros in dispextern.h, frame.h and window.h.
12755
12756 * xmenu.c: Make (some) trivial substitutions for renamed and
12757 new macros in dispextern.h, frame.h and window.h.
12758
12759 * xterm.h (struct x_output): Move members left_pos, top_pos,
12760 border_width, pixel_height, pixel_width, line_height,
12761 internal_border_width, vertical_scroll_bar_extra,
12762 left_fringe_width, right_fringe_width, fringe_cols,
12763 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12764 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12765 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12766 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12767 (PIXEL_WIDTH, PIXEL_HEIGHT)
12768 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12769 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12770 frame.h and renamed [see frame.h changes].
12771 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12772 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12773 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12774 and renamed [see frame.h changes].
12775
12776 * xterm.c: Make (several) trivial substitutions for renamed and
12777 new macros in dispextern.h, frame.h and window.h.
12778 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12779 (scroll_run): Adapt to new fringe position.
12780 (glyph_rect): Use window coordinates returned from
12781 window_from_coordinates rather than frame_to_window_pixel_xy.
12782 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12783 scroll-bars.
12784 (handle_one_xevent): Simplify a USE_GTK conditional.
12785 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12786 (fringes are now inside margins, i.e. always in the clipping area).
12787 All callers changed.
12788 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12789 directly, then call compute_fringe_widths. Don't call
12790 frame_update_line_height.
12791
12792 * w32term.h (struct w32_output): Move members left_pos, top_pos,
12793 border_width, pixel_height, pixel_width, line_height,
12794 internal_border_width, vertical_scroll_bar_extra,
12795 left_fringe_width, right_fringe_width, fringe_cols,
12796 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12797 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12798 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12799 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12800 (PIXEL_WIDTH, PIXEL_HEIGHT)
12801 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12802 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12803 frame.h and renamed [see frame.h changes].
12804 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12805 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12806 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12807 and renamed [see frame.h changes].
12808
12809 * w32term.c: Make (several) trivial substitutions for renamed and
12810 new macros in dispextern.h, frame.h and window.h.
12811 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12812 (glyph_rect): Use window coordinates returned from
12813 window_from_coordinates rather than frame_to_window_pixel_xy.
12814 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12815 scroll-bars.
12816 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
12817 (fringes are now inside margins, i.e. always in the clipping area).
12818 All callers changed.
12819 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12820 directly, then call compute_fringe_widths. Don't call
12821 frame_update_line_height.
12822
12823 * w32console.c: Make (few) trivial substitutions for renamed and
12824 new macros in dispextern.h, frame.h and window.h.
12825
12826 * w32fns.c: Make (many) trivial substitutions for renamed and
12827 new macros in dispextern.h, frame.h and window.h.
12828
12829 * w32menu.c: Make (few) trivial substitutions for renamed and
12830 new macros in dispextern.h, frame.h and window.h.
12831
12832 * macterm.h (struct mac_output): Move members left_pos, top_pos,
12833 border_width, pixel_height, pixel_width, line_height,
12834 internal_border_width, vertical_scroll_bar_extra,
12835 left_fringe_width, right_fringe_width, fringe_cols,
12836 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12837 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
12838 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12839 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12840 (PIXEL_WIDTH, PIXEL_HEIGHT)
12841 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12842 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12843 frame.h and renamed [see frame.h changes].
12844 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12845 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12846 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12847 and renamed [see frame.h changes].
12848
12849 * macterm.c: Make (several) trivial substitutions for renamed and
12850 new macros in dispextern.h, frame.h and window.h.
12851 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12852 (glyph_rect): Use window coordinates returned from
12853 window_from_coordinates rather than frame_to_window_pixel_xy.
12854 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12855 scroll-bars.
12856 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12857 (fringes are now inside margins, i.e. always in the clipping area).
12858 All callers changed.
12859 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12860 directly, then call compute_fringe_widths. Don't call
12861 frame_update_line_height.
12862
12863 * macfns.c: Make (several) trivial substitutions for renamed and
12864 new macros in dispextern.h, frame.h and window.h.
12865 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
12866
12867 * macmenu.c: Make (few) trivial substitutions for renamed and
12868 new macros in dispextern.h, frame.h and window.h.
12869
12870 * msdos.h (struct x_output): Remove members left_pos, top_pos,
12871 and line_height, and use corresponding new members in struct
12872 frame. All uses changed.
12873 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
12874 superseeded by corresponding macros in frame.h.
12875
12876 * msdos.c: Make (several) trivial substitutions for renamed and
12877 new macros in dispextern.h, frame.h and window.h.
12878 (IT_note_mouse_highlight): Use updated window coordinates returned
12879 by window_from_coordinates, rather than adjusting them locally.
12880 (internal_terminal_init): No need to initialize line_height here;
12881 it now defaults to 1.
12882
12883 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
12884
12885 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
12886 dropping `down' events.
12887
12888 2003-05-24 Andreas Schwab <schwab@suse.de>
12889
12890 * coding.c (find_safe_codings): Fix last change.
12891
12892 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
12893
12894 * xfns.c (x_window): Fix typo from 2003-05-21 change.
12895
12896 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
12897
12898 * xdisp.c (display_mode_element): Increase max depth.
12899 Simplify the error handling code. Use a different error string
12900 for the case where we hit the depth limit.
12901
12902 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
12903
12904 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
12905
12906 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
12907
12908 * intervals.c (get_local_map): Don't get char-property of previous
12909 point any more: get_pos_property already does it and better.
12910
12911 2003-05-21 Dave Love <fx@gnu.org>
12912
12913 [Merged from unicode branch.]
12914
12915 * xfns.c (x_window, x_window): Use use_xim.
12916
12917 * xterm.c (use_xim): Initialize.
12918 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12919 (x_term_init): Maybe set use_xim.
12920
12921 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12922
12923 2003-05-21 Jason Rumney <jasonr@gnu.org>
12924
12925 * unexw32.c (_start): Remove _fmode initialization.
12926
12927 * emacs.c (main) [WINDOWSNT]: Move it here.
12928
12929 2003-05-20 Dave Love <fx@gnu.org>
12930
12931 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
12932
12933 2003-05-19 Richard M. Stallman <rms@gnu.org>
12934
12935 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
12936 as value for QCfont attribute.
12937 (realize_default_face): lface should already exist; crash if not.
12938 Specify 0 for FORCE_P when calling set_lface_from_font_name.
12939
12940 * frame.c (Fignore_event): Doc fix.
12941
12942 2003-05-19 Kenichi Handa <handa@m17n.org>
12943
12944 * coding.c (decode_coding_string): Handle post-read-conversion
12945 even if the coding doesn't require decoding.
12946
12947 2003-05-18 Richard M. Stallman <rms@gnu.org>
12948
12949 * callproc.c (Fcall_process_region): Doc fix.
12950
12951 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12952
12953 * lread.c (Fload): Print a message if package is obsolete.
12954
12955 * window.c (Fselect_window): Add optional `norecord' arg.
12956 (select_window_1): Fold into Fselect_window.
12957 (select_window_norecord): New function.
12958 (temp_output_buffer_show): Use it. Preserve current buffer.
12959
12960 * window.h (Fselect_window): Update declaration.
12961
12962 * window.c (delete_window, Fother_window, Fset_window_configuration):
12963 * minibuf.c (read_minibuf):
12964 * macterm.c (x_new_focus_frame):
12965 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
12966 * callint.c (Fcall_interactively):
12967 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
12968
12969 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
12970
12971 2003-05-17 David Kastrup <dak@gnu.org>
12972
12973 * process.c (read_process_output): Back out change from 2003-03-09.
12974
12975 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12976
12977 * editfns.c (get_pos_property): Don't assume that `object' = nil.
12978
12979 * textprop.c (text_property_stickiness): New arg `buffer'.
12980
12981 * intervals.h (text_property_stickiness): New arg `buffer'.
12982 (get_pos_property): Declare.
12983
12984 * intervals.c (get_local_map): Use get_pos_property, to obey
12985 stickiness and empty overlays.
12986 (create_root_interval, graft_intervals_into_buffer): Use BEG.
12987 (merge_properties, intervals_equal, merge_properties_sticky):
12988 Use XCAR, XCDR.
12989 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
12990
12991 2003-05-17 Richard M. Stallman <rms@gnu.org>
12992
12993 * minibuf.c (read_minibuf): If buffer is empty, record the default
12994 in the history.
12995 (Fminibuffer_complete_word): When deleting the overlap, take account
12996 of its real position.
12997
12998 * fns.c (map_char_table): Fix previous change.
12999
13000 * syntax.c (find_defun_start):
13001 When open_paren_in_column_0_is_defun_start,
13002 return beginning of buffer.
13003
13004 * lisp.h (map_char_table): Declare added arg.
13005
13006 * fns.c (map_char_table): New arg TABLE gets the master table.
13007 All calls changed.
13008 Process default and inheritance, resorting to Faref if necessary.
13009
13010 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13011 (Faccessible_keymaps): Pass new arg to map_char_table.
13012
13013 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
13014
13015 * casetab.c (set_case_table): Pass new arg to map_char_table.
13016
13017 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
13018
13019 * lisp.h (specbinding_func): New typedef.
13020 (struct specbinding): Use specbinding_func, to put the `volatile'
13021 in the right place.
13022
13023 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
13024 to avoid GCC warning.
13025
13026 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
13027
13028 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
13029
13030 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
13031
13032 * keyboard.c (apply_modifiers): Don't fill the other cache.
13033
13034 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
13035
13036 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
13037
13038 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
13039 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
13040 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
13041 (Fset_window_configuration, Fcurrent_window_configuration)
13042 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
13043 (Fpos_visible_in_window_p, mark_window_cursors_off)
13044 (window_internal_height, window_internal_width, Frecenter)
13045 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
13046 (replace_buffer_in_all_windows, init_window_once, init_window)
13047 (syms_of_window, keys_of_window): Move from lisp.h.
13048 * lisp.h: Move window.c declarations to window.h.
13049
13050 * bytecode.c: Include window.h.
13051 * emacs.c: Include window.h.
13052
13053 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
13054 (keyremap): Add `parent' field.
13055 (keyremap_step): Use it. Remove `parent' argument.
13056 (read_key_sequence): Setup and use the new `parent' field.
13057
13058 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
13059
13060 * keyboard.c (adjust_point_for_property): Ensure termination.
13061
13062 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
13063
13064 * keyboard.c (follow_key): Remove dead variable `did_meta'.
13065 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
13066 duplicated handling of function-key-map and key-translation-map
13067 in read_key_sequence.
13068 (read_key_sequence): Use them.
13069
13070 * keyboard.c (adjust_point_for_property): Try harder to move point
13071 to the non-sticky end of an invisible property.
13072
13073 * xdisp.c (single_display_prop_intangible_p): Make `space' display
13074 property intangible as well.
13075
13076 2003-05-10 Andreas Schwab <schwab@suse.de>
13077
13078 * xmenu.c (single_menu_item): Change last parameter to void* to
13079 avoid warning.
13080
13081 2003-05-09 Richard M. Stallman <rms@gnu.org>
13082
13083 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
13084 Bind Qinhibit_modification_hooks to t so there will be no GC.
13085 Rename local `tem' to `save_deactivate_mark'.
13086
13087 * eval.c (specpdl_ptr): Declare volatile.
13088 (unbind_to): Copy the whole binding and decrement specpdl_ptr
13089 before doing the work of unbinding it.
13090
13091 * lisp.h (struct specbinding): Declare elements volatile.
13092 (specpdl_ptr): Declare volatile.
13093
13094 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
13095
13096 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
13097 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
13098
13099 2003-05-08 Dave Love <fx@gnu.org>
13100
13101 * coding.c (Vlast_coding_system_used): Doc fix.
13102
13103 2003-05-07 Jason Rumney <jasonr@gnu.org>
13104
13105 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
13106 when system does not support them.
13107
13108 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
13109
13110 * fileio.c (Qwrite_region_annotate_functions): New var.
13111 (build_annotations): Use it to process the global part of the hook.
13112 (syms_of_fileio): Init and staticpro it.
13113
13114 * keyboard.c (safe_run_hooks_error): Display a message instead of
13115 silently ignoring the error.
13116
13117 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
13118
13119 * keyboard.c (input_available_signal): Mark static.
13120 (menu_bar_items): Use map_keymap.
13121 (menu_bar_one_keymap): Remove.
13122 (menu_bar_item): Adjust arglist (for use in map_keymap).
13123 Properly hide a second binding when not both are keymaps.
13124
13125 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
13126 (single_keymap_panes): Use it and map_keymap.
13127 (single_menu_item): Use skp as well.
13128
13129 * keymap.h (map_keymap_function_t): New type.
13130 (map_keymap): Declare.
13131
13132 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
13133 (map_keymap_call, Fmap_keymap): New functions.
13134 (syms_of_keymap): Defsubr map-keymap.
13135
13136 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13137
13138 * gtkutil.c (create_dialog, make_widget_for_menu_item)
13139 (make_menu_item, create_menus, xg_update_menu_item): Don't call
13140 ..._with_mnemonic functions for menu items.
13141
13142 2003-05-01 Kenichi Handa <handa@m17n.org>
13143
13144 * coding.c (coding_system_accept_latin_extra_p): Delete this
13145 function.
13146 (find_safe_codings): Pay attention to
13147 the property tranlsation-table-for-encode of each codings.
13148 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
13149
13150 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
13151
13152 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
13153
13154 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
13155
13156 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
13157
13158 * lisp.h (CHECK): Wrap args in parenthesis.
13159 (specbind): Fix doc: symbol = Qnil is not supported any more.
13160
13161 * bytecode.c (Fbyte_code) <unwind-protect>:
13162 Use Fprogn rather than 0 and Qnil.
13163
13164 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
13165 `double', and `triple' modifiers as well.
13166
13167 2003-04-30 Richard M. Stallman <rms@gnu.org>
13168
13169 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
13170
13171 * alloc.c (abort_on_gc): New variable.
13172 (Fgarbage_collect): Abort if abort_on_gc is set.
13173
13174 * lisp.h (abort_on_gc): Add decl.
13175
13176 * eval.c (Fsignal): Clear abort_on_gc.
13177
13178 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
13179 Reinit FORMAT_START and END before second scan.
13180
13181 * xdisp.c (move_it_vertically_backward): Do the final big else
13182 even if nlines is 0.
13183
13184 * xdisp.c (redisplay_internal): Finish the per-frame loop
13185 even if redisplay is suspended by input.
13186
13187 2003-04-24 Andrew Choi <akochoi@shaw.ca>
13188
13189 * macterm.c (x_list_fonts): Return all fonts that match if
13190 maxnames = -1.
13191
13192 2003-04-25 Kenichi Handa <handa@m17n.org>
13193
13194 * syntax.c (skip_chars): Fix previous change.
13195
13196 2003-04-24 Kenichi Handa <handa@m17n.org>
13197
13198 * syntax.c (skip_chars): Make the code faster by using the common
13199 technique of *p, *stop, and *endp.
13200
13201 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13202
13203 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
13204 tool_bar_items so GTK tool bar expose callback does not access items
13205 being updated.
13206
13207 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
13208
13209 * eval.c (Fapply): Undo last change and add a comment about why.
13210
13211 2003-04-18 Miles Bader <miles@gnu.org>
13212
13213 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
13214 pickier PARSE_MULTIBYTE_SEQ.
13215
13216 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
13217
13218 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
13219 Use XCDR, XCAR, CONSP.
13220 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
13221 (Fapply): Remove unnecessary GCPRO.
13222
13223 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
13224
13225 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
13226
13227 * buffer.h: Don't hardcode BEG==1.
13228
13229 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
13230
13231 2003-04-16 Richard M. Stallman <rms@gnu.org>
13232
13233 * xdisp.c (try_window, try_window_reusing_current_matrix):
13234 When at end of window, set window_end_pos to Z-ZV.
13235
13236 * buffer.c (Foverlay_recenter): Doc fix.
13237
13238 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
13239
13240 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
13241
13242 2003-04-14 Andrew Choi <akochoi@shaw.ca>
13243
13244 * macterm.c (mac_check_for_quit_char): Don't check more often than
13245 once a second.
13246
13247 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
13248
13249 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
13250 specially, so that they can't hide an implicit switch-frame event.
13251 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
13252 (head_table): Use switch-frame as event_kind for select-window.
13253 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
13254
13255 * editfns.c (Fformat): Lisp_Object/int mixup.
13256 (format2): Remove unused var numargs.
13257
13258 2003-04-11 Kenichi Handa <handa@m17n.org>
13259
13260 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
13261 (Qafter_insert_file_set_coding): New variable.
13262 (syms_of_fileio): Initialize and staticpro it. Delete declaration
13263 for after-insert-file-adjust-coding-function.
13264 (Finsert_file_contents): Call Qafter_insert_file_set_coding
13265 instead of Vafter_insert_file_adjust_coding_function.
13266
13267 2003-04-11 Kenichi Handa <handa@m17n.org>
13268
13269 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
13270
13271 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
13272 string. Callers changed.
13273
13274 2003-04-10 Kenichi Handa <handa@m17n.org>
13275
13276 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
13277 (syms_of_fileio): Declare it as a lisp variable.
13278 (Finsert_file_contents):
13279 Call Vafter_insert_file_adjust_coding_function before calling
13280 decode-format.
13281
13282 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13283
13284 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
13285 get GtkAdjustment as widget now is a GtkRange.
13286
13287 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
13288 GtkRange to avoid memory leak.
13289
13290 2003-04-09 Kenichi Handa <handa@m17n.org>
13291
13292 * xfaces.c (Vface_font_rescale_alist): New variable.
13293 (struct font_name): New member rescale_ratio.
13294 (font_rescale_ratio): New function.
13295 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
13296 (better_font_p): On comparing point sized, pay attention to
13297 recale_ratio member of fonts.
13298 (build_scalable_font_name): Reflect font->rescale_ratio in the
13299 font name.
13300 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13301
13302 * lread.c (read1): Before calling index, check if the 2nd
13303 arguemnt is in ASCII range.
13304
13305 2003-04-08 Richard M. Stallman <rms@gnu.org>
13306
13307 * fileio.c (Ffile_symlink_p): Doc fix.
13308
13309 * editfns.c (Fformat): Translate positions of text properties
13310 in the format string to apply them to the result.
13311
13312 * fileio.c (Finsert_file_contents): Doc fix.
13313 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
13314
13315 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
13316
13317 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
13318
13319 2003-04-08 Steven Tamm <steventamm@mac.com>
13320
13321 * mac.c (init_mac_osx_environment): Switch libexec and bin so
13322 that self-contained application finds libexec files.
13323
13324 2003-04-08 Kenichi Handa <handa@m17n.org>
13325
13326 * coding.c (code_convert_region_unwind):
13327 Set Vlast_coding_system_used to the argument.
13328 (code_convert_region): If post-read-conversion function changed
13329 the value of last-coding-sytem, keep the new value in
13330 coding->symbol so that it won't be overridden.
13331 (run_pre_post_conversion_on_str): Likewise.
13332 (coding_system_accept_latin_extra_p): New function.
13333 (find_safe_codings): Pay attention to characters registered in
13334 latin-extra-code-table.
13335
13336 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
13337
13338 * Makefile.in (md5.o): Add missing dependency info.
13339
13340 2003-04-06 Richard M. Stallman <rms@gnu.org>
13341
13342 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
13343
13344 * marker.c (verify_bytepos): New function.
13345
13346 * intervals.c (set_intervals_multibyte_1): When becoming
13347 multibyte, adjust right and left child sizes to a whole set of
13348 characters. If an interval gets zero total-length, delete it.
13349 If an interval consists of just its children, delete one of them.
13350
13351 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
13352 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
13353
13354 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
13355 All calls deleted.
13356 (lisp_malloc): Do the work here directly.
13357
13358 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
13359
13360 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
13361 char tables.
13362
13363 2003-04-04 Kenichi Handa <handa@m17n.org>
13364
13365 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
13366 destructively change "%S" to "%s".
13367
13368 2003-04-03 Miles Bader <miles@gnu.org>
13369
13370 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
13371 always set.
13372
13373 2003-04-01 Dave Love <fx@gnu.org>
13374
13375 * xfns.c (xpm_lookup_color): Grok "opaque".
13376
13377 2003-03-31 Andrew Choi <akochoi@shaw.ca>
13378
13379 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
13380 parent window ID.
13381
13382 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
13383
13384 * macterm.h (struct mac_output): Define x_pixels_diff and
13385 y_pixels_diff.
13386
13387 2003-03-31 Juanma Barranquero <lektu@terra.es>
13388
13389 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
13390 blockinput.h and files included from it.
13391
13392 2003-03-31 Kim F. Storm <storm@cua.dk>
13393
13394 The following changes consolidates the common code related to
13395 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
13396 files into frame.c.
13397
13398 * frame.c: Include blockinput.h.
13399 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
13400 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
13401 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
13402 related vars here.
13403 (struct frame_parm_table, frame_parms): New table for describing
13404 frame parameters and their associated Q-variable.
13405 The order of the parameters corresponds to the sequence of the
13406 frame_parm_handlers table in redisplay_interface.
13407 (x_fullscreen_move, x_set_frame_parameters)
13408 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
13409 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
13410 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13411 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
13412 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
13413 Generic functions for processing of frame parameters.
13414 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
13415 (display_x_get_resource, x_get_resource_string): Functions for
13416 generic access to X resources.
13417 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13418 (x_default_parameter, Fx_parse_geometry): Functions for generic
13419 access to frame parameters.
13420 (x_figure_window_size): Generic calculation of frame size.
13421 Fixed to add space needed for tool bar. Also setup size_hint_flags.
13422 (syms_of_frame): Intern and staticpro frame parameter variables.
13423 Defvar_lisp Vx_resource_class and Vx_resource_name here.
13424 Defsubr Sx_get_resource and Sx_parse_geometry.
13425
13426 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
13427 parameter related vars defined in frame.c.
13428 (EMACS_CLASS): Define here.
13429 (enum FULLSCREEN_*): Define here.
13430 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
13431 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
13432 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
13433 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
13434 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
13435 (x_set_visibility, x_set_autoraise, x_set_autolower)
13436 (x_set_unsplittable, x_set_vertical_scroll_bars)
13437 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
13438 (x_figure_window_size): Add prototypes.
13439
13440 * dispextern.h (frame_parm_handler): New typedef.
13441 (struct redisplay_interface): New member frame_parm_handlers.
13442 (enum resource_types): Move declaration here.
13443 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13444 (x_default_parameter): Add prototypes.
13445
13446 * window.c: Remove extern decl for frame parameter vars.
13447 (change_window_heights): New generic function;
13448 replaces x_change_window_heights. All users changed.
13449
13450 * window.h (change_window_heights): Add prototype.
13451
13452 * xfaces.c: Remove extern decl for frame parameter vars.
13453
13454 * xterm.h (EMACS_CLASS): Remove. Use generic define.
13455 (struct w32_display_info): Fix type of xrdb member.
13456 (enum FULLSCREEN_*): Remove.
13457 Remove prototypes for generic functions (in frame.h).
13458
13459 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13460 parameters now defined in frame.h and frame.c.
13461 (Vx_resource_name): Remove. Use generic var.
13462 (enum x_frame_parms): Remove (bogus, unused enum).
13463 (check_x_display_info): Make non-static (for frame.c).
13464 (struct x_frame_parm_table, x_frame_parms): Remove.
13465 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13466 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13467 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13468 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13469 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13470 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13471 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13472 Remove. Use generic functions instead.
13473 (enum resource_types): Remove.
13474 (x_set_scroll_bar_default_width): New global function (for frame.c).
13475 (Fx_create_frame): Depend on x_figure_window_size to add space for
13476 toolbar and setup size_hint_flags.
13477 (x_frame_parm_handlers): New table for redisplay_interface.
13478 (syms_of_xfns): Don't intern/staticpro removed vars.
13479
13480 * xterm.c: Remove unnecessary extern declarations.
13481 (x_fullscreen_adjust): Remove. Use generic instead.
13482 (x_redisplay_interface): Add x_frame_parm_handlers member.
13483
13484 * w32gui.h (XrmDatabase): New (dummy) typedef.
13485
13486 * w32term.h (EMACS_CLASS): Remove. Use generic define.
13487 (struct w32_display_info): Fix type of xrdb member.
13488 (enum FULLSCREEN_*): Remove.
13489 (x_fullscreen_adjust): Remove prototype.
13490
13491 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13492 parameters now defined in frame.h and frame.c.
13493 (Vx_resource_name): Remove. Use generic var.
13494 (enum x_frame_parms): Remove (bogus, unused enum).
13495 (check_x_display_info): Make non-static (for frame.c).
13496 (struct x_frame_parm_table, x_frame_parms): Remove.
13497 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13498 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13499 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13500 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13501 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13502 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13503 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13504 Remove. Use generic functions instead.
13505 (enum resource_types): Remove.
13506 (x_set_scroll_bar_default_width): New global function (for frame.c).
13507 (Fx_create_frame): Depend on x_figure_window_size to add space for
13508 toolbar and setup size_hint_flags.
13509 (w32_frame_parm_handlers): New table for redisplay_interface.
13510 (syms_of_w32fns): Don't intern/staticpro removed vars.
13511
13512 * w32term.c: Remove unnecessary extern declarations.
13513 (x_fullscreen_adjust): Remove. Use generic instead.
13514 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13515
13516 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13517
13518 * macgui.h (XrmDatabase): New (dummy) typedef.
13519
13520 * macterm.h (EMACS_CLASS): Remove.
13521 (struct mac_display_info): Add xrdb member.
13522 (struct mac_output): Add want_fullscreen member.
13523
13524 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13525 parameters now defined in frame.h and frame.c.
13526 (Vx_resource_name): Remove. Use generic var.
13527 (check_x_display_info): Make non-static (for frame.c).
13528 (struct x_frame_parm_table, x_frame_parms): Remove.
13529 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13530 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13531 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13532 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13533 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13534 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13535 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13536 Remove. Use generic functions instead.
13537 (enum resource_types): Remove.
13538 (x_set_scroll_bar_default_width): New global function (for frame.c).
13539 (mac_frame_parm_handlers): New table for redisplay_interface.
13540 (syms_of_macfns): Don't intern/staticpro removed vars.
13541
13542 * macterm.c: Remove unnecessary extern declarations.
13543 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13544
13545 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13546 included from it (atimer.h and systime.h).
13547
13548 2003-03-30 Andreas Schwab <schwab@suse.de>
13549
13550 * xdisp.c (x_insert_glyphs): Fix swapped width and height
13551 parameters for shift_glyphs_for_insert.
13552
13553 * macterm.c (x_redisplay_interface): Add missing entry for
13554 draw_vertical_window_border.
13555
13556 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13557
13558 * fileio.c (Fexpand_file_name): In the no-handler case, after
13559 expanding, look again for a handler and invoke it. This is needed
13560 for filenames like "/foo/../user@host:/bar/../baz" -- the first
13561 expansion produces "/user@host:/bar/../baz" which needs to be
13562 expanded again for the finame result "/user@host:/baz".
13563
13564 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13565
13566 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
13567 of area to be redrawn for better performance.
13568
13569 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
13570
13571 * xterm.c (take_vertical_position_into_account): Remove.
13572 (xt_action_hook): Call set_vertical_scroll_bar if needed.
13573 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
13574 (xm_scroll_callback, x_create_toolkit_scroll_bar)
13575 (x_set_toolkit_scroll_bar_thumb): Simplify.
13576 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
13577 (XTread_socket): Remove unused var.
13578 (x_make_frame_invisible): Replace goto with else.
13579
13580 * xdisp.c (set_vertical_scroll_bar): New fun.
13581 (redisplay_window): Use it.
13582
13583 2003-03-26 Richard M. Stallman <rms@gnu.org>
13584
13585 * xdisp.c (update_tool_bar): Recompute tool bar if
13586 update_mode_lines is set. Set w->update_mode_line
13587 only if the tool bar contents actually change.
13588 (update_menu_bar): Undo previous change.
13589
13590 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13591
13592 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
13593 (xg_frame_set_char_size): Calculate scroll bar width before frame
13594 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
13595 (xg_separator_p): Check for all documented separator types.
13596 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
13597 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
13598
13599 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
13600 so tool bar gets updated.
13601
13602 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
13603
13604 * data.c (store_symval_forwarding): Re-instate part of the code
13605 that was deleted with too much enthusiasm.
13606
13607 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
13608
13609 * data.c (store_symval_forwarding): Delete special read-only
13610 hack for type == -1, since we now use ->constant instead.
13611 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
13612
13613 * buffer.c (overlays_in): Declare static.
13614 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
13615 `constant' field rather than the variable's `type' field.
13616
13617 2003-03-24 Andrew Choi <akochoi@shaw.ca>
13618
13619 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
13620
13621 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
13622
13623 * fns.c [MAC_OSX]: Do not redefine vector.
13624
13625 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
13626
13627 * macgui.h: Remove definition of No_Cursor.
13628
13629 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
13630
13631 * xdisp.c: Define No_Cursor.
13632 (x_write_glyphs, notice_overwritten_cursor)
13633 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
13634 (note_mouse_highlight): Remove Mac-specific code.
13635 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
13636
13637 2003-03-24 John Paul Wallington <jpw@gnu.org>
13638
13639 * xdisp.c (redisplay_window): If mini window's buffer is not
13640 empty, then redisplay it like other windows.
13641
13642 2003-03-23 Kim F. Storm <storm@cua.dk>
13643
13644 * w32term.c (w32_draw_window_cursor): Fix last change.
13645
13646 2003-03-23 Kenichi Handa <handa@m17n.org>
13647
13648 * alloc.c (make_string_from_bytes, make_specified_string):
13649 Add `const' for the arg CONTENTS.
13650
13651 * lisp.h (make_string_from_bytes, make_specified_string):
13652 Prototypes adjusted.
13653
13654 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13655
13656 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
13657
13658 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
13659 (XG_SB_RANGE): New define.
13660
13661 * gtkutil.c (xg_fixed_handle_expose): New function.
13662 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
13663 expose events.
13664 (xg_update_scrollbar_pos): Take two more arguments, left and width
13665 of scroll bar including borders.
13666 Clear left and right part outside scroll bar separately as some
13667 themes have bars that are not an even number of pixels.
13668 Don't set reallocate_redraws, don't call
13669 gdk_window_process_all_updates.
13670 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
13671 so no need to change it. Calculate size and value with XG_SB_RANGE.
13672
13673 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
13674 Pass left and width of scroll bar including borders to
13675 xg_update_scrollbar_pos.
13676
13677 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
13678
13679 * Makefile.in: Make sure space precedes end-of-line backslashes.
13680
13681 2003-03-22 Kim F. Storm <storm@cua.dk>
13682
13683 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
13684 Add generic versions here. Remove system specific versions
13685 defined elsewhere.
13686
13687 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
13688 Add prototypes.
13689
13690 * xterm.h (STORE_NATIVE_RECT): New macro.
13691
13692 2003-03-21 Kim F. Storm <storm@cua.dk>
13693
13694 * xdisp.c (get_glyph_string_clip_rect):
13695 Use FRAME_INTERNAL_BORDER_WIDTH.
13696
13697 * dispextern.h (struct redisplay_interface): Add active_p
13698 argument to draw_window_cursor member. All uses changed.
13699
13700 2003-03-21 Kim F. Storm <storm@cua.dk>
13701
13702 The following changes consolidate code related to writing and
13703 inserting glyphs, exposing frame, the tool bar, the mouse face,
13704 the output cursor, and help echo from xterm.c, w32term.c and
13705 macterm.c into xdisp.c. It also generalizes the use of the
13706 window_part enum instead of using numeric values throughout.
13707
13708 * xdisp.c: Consolidate gui-independent code here.
13709 Include keymap.h.
13710 (Qhelp_echo): Import.
13711 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
13712 (help_echo_string, help_echo_window, help_echo_object)
13713 (previous_help_echo_string, help_echo_pos): Declare here.
13714 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
13715 (estimate_mode_line_height): Define here. Handle windowing
13716 systems directly (without using estimate_mode_line_height_hook).
13717 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
13718 (update_window_cursor, update_cursor_in_window_tree)
13719 (fast_find_position, fast_find_string_pos)
13720 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
13721 (expose_area, expose_line, expose_overlaps, expose_window)
13722 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
13723 declared static as they are only used locally in xdisp.c.
13724 (draw_glyphs): Rename from x_draw_glyphs and make static.
13725 (tool_bar_item_info, notice_overwritten_cursor): Make static.
13726 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13727 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
13728 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
13729 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13730 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
13731 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
13732 (note_mouse_highlight, x_clear_window_mouse_face)
13733 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
13734 (x_intersect_rectangles): New generic functions for use by xdisp.c
13735 and GUI front-ends.
13736 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
13737 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
13738
13739 * dispextern.h (Display_Info): Generic typedef for *_display_info.
13740 (NativeRectangle): Generic typedef for rectangle type.
13741 (enum window_part): Move here from window.c.
13742 (struct redisplay_interface): New members flush_display_optional,
13743 define_frame_cursor, clear_frame_area, draw_window_cursor,
13744 draw_vertical_window_border, shift_glyphs_for_insert.
13745 Rename member clear_mouse_face to clear_window_mouse_face.
13746 (estimate_mode_line_height_hook): Remove hook.
13747 (auto_raise_tool_bar_buttons_p): Don't declare extern.
13748 (tool_bar_item_info): Remove prototype.
13749 (help_echo_string, help_echo_window, help_echo_object)
13750 (previous_help_echo_string, help_echo_pos)
13751 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
13752 (x_stretch_cursor_p, output_cursor): Declare extern.
13753 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
13754 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
13755 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13756 (display_and_set_cursor, set_output_cursor, x_cursor_to)
13757 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
13758 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13759 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
13760 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
13761 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
13762 Add prototypes.
13763 (mode_line_string, marginal_area_string): Fix prototypes.
13764
13765 * window.c (enum window_part): Move to dispextern.h.
13766 (coordinates_in_window): Use enum window_part member names
13767 instead of numbers to describe return value.
13768 (struct check_window_data): Change part member to window_part.
13769 (check_window_containing): Return window_part unaltered.
13770 (window_from_coordinates): Change part arg from int to enum
13771 window_part. Allow part arg to be null. All users changed.
13772
13773 * window.h (window_from_coordinates): Fix prototype.
13774
13775 * term.c (estimate_mode_line_height): Move to xdisp.c.
13776
13777 * keyboard.c (make_lispy_event): Use enum window_part.
13778
13779 * dispnew.c (mode_line_string, marginal_area_string): Use enum
13780 window_part instead of int in arg list. Users changed.
13781
13782 * xterm.h (No_Cursor): Declare as None for X.
13783 (struct mac_output): Replace member cross_cursor by hand_cursor.
13784
13785 * xterm.c: Remove consolidated defines and code.
13786 (BETWEEN): Remove unused macro.
13787 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
13788 (x_define_frame_cursor, x_clear_frame_area)
13789 (x_draw_window_cursor): New X-specific functions for RIF.
13790 (x_redisplay_interface): Add new members.
13791
13792 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
13793
13794 * w32term.h (struct w32_output): Remove cross_cursor member.
13795
13796 * w32term.c: Remove consolidated defines and code.
13797 (BETWEEN): Remove unused macro.
13798 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
13799 (w32_define_frame_cursor, w32_clear_frame_area)
13800 (w32_draw_window_cursor): New W32-specific functions for RIF.
13801 (w32_redisplay_interface): Add new members.
13802
13803 * w32gui.h (No_Cursor): Define as 0 for W32.
13804 (XRectangle): Add X compatible rectangle type.
13805 (NativeRectangle): Declare as RECT for W32.
13806 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13807
13808 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
13809
13810 * w32console.c: Remove consolidated defines and code.
13811
13812 * msdos.h (Display_Info): Add generic typedef.
13813
13814 * msdos.c: Remove consolidated defines and code.
13815 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
13816
13817 * macterm.h (struct mac_output): Replace member cross_cursor by
13818 hand_cursor.
13819 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
13820
13821 * macterm.c: Remove consolidated defines and code.
13822 (BETWEEN): Remove unused macro.
13823 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
13824 (mac_define_frame_cursor, mac_clear_frame_area)
13825 (mac_draw_window_cursor): New Mac-specific functions for RIF.
13826 (x_redisplay_interface): Add new members.
13827
13828 * macgui.h (No_Cursor): Define as 0 for Mac.
13829 (XRectangle): Add X compatible rectangle type.
13830 (NativeRectangle): Declare as Rect for Mac.
13831 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13832
13833 * macfns.c (x_set_mouse_color): Setup hand_cursor.
13834 (x_set_cursor_color): Use x_display_and_set_cursor.
13835
13836 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
13837 included from it. Add dependency on keymap.h.
13838
13839 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
13840
13841 2003-03-21 Kenichi Handa <handa@m17n.org>
13842
13843 * fileio.c (Fexpand_file_name): Fix previous change.
13844
13845 2003-03-19 Kenichi Handa <handa@m17n.org>
13846
13847 * fileio.c (Ffile_name_directory): Reconstruct file name by
13848 make_specified_string.
13849 (Ffile_name_nondirectory, Ffile_name_as_directory)
13850 (Fdirectory_file_name, Fexpand_file_name)
13851 (Fsubstitute_in_file_name): Likewise.
13852 (Fread_file_name): Compare decoded homedir with DIR and
13853 DEFAULT_FILENAME.
13854
13855 * alloc.c (make_specified_string): If NCHARS is negative, count
13856 the number of characters.
13857
13858 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13859
13860 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
13861 all widgets.
13862
13863 * gtkutil.h: Removed xg_ignore_next_thumb.
13864
13865 2003-03-18 Kenichi Handa <handa@m17n.org>
13866
13867 * coding.c (Vchar_coding_system_table): Remove this variable.
13868 (Vcoding_system_safe_chars): New variable.
13869 (intersection): Remove this function.
13870 (find_safe_codings): Don't use Vchar_coding_system_table, but try
13871 all codings in SAFE_CODINGS.
13872 (Ffind_coding_systems_region_internal): Adjust for the change of
13873 find_safe_codings. Get generic coding systems from
13874 Vcoding_system_safe_chars.
13875 (Fdefine_coding_system_internal): New function.
13876 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
13877 Initialize and staticpro Vcoding_system_safe_chars.
13878
13879 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13880
13881 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
13882 equal old values before updating.
13883
13884 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
13885
13886 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
13887
13888 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13889
13890 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
13891 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
13892 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
13893 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
13894 (xg_create_scroll_bar): Pass bar to button event callback.
13895 (xg_find_top_left_in_fixed): New function.
13896 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
13897 whole scroll bar area. Get old position with
13898 xg_find_top_left_in_fixed, calculate and only clear needed areas.
13899 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
13900 dragging is in progress. Calculate whole as for Motif.
13901 Remove code that saved last values. Call gtk_range functions to
13902 set scroll bar sizes.
13903
13904 * gtkutil.h: Removed xg_ignore_next_thumb.
13905
13906 2003-03-17 Juanma Barranquero <lektu@terra.es>
13907
13908 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
13909 and files included from it.
13910
13911 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
13912
13913 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
13914 multiple occurrences of the same keymap under different prefixes.
13915 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
13916
13917 2003-03-16 Jason Rumney <jasonr@gnu.org>
13918
13919 * w32gui.h: Use HDC for Display.
13920
13921 * w32term.c (w32_encode_char): Prevent double-byte chars from
13922 crashing Emacs.
13923
13924 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
13925 as binary.
13926
13927 2003-03-16 Juanma Barranquero <lektu@terra.es>
13928
13929 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
13930
13931 2003-03-16 Kim F. Storm <storm@cua.dk>
13932
13933 The following changes consolidate some of the gui-independent
13934 parts of the processing and drawing of "glyph strings" from
13935 xterm.c, w32term.c, and macterm.c into xdisp.c.
13936
13937 * dispextern.h (struct glyph): Reduce face_id member from 22 to
13938 21 bits (this reduces number of faces from 4M to 2M).
13939 Replace W32 specific w32_font_type member (2 bits) by generic
13940 font_type member (3 bits) for portability.
13941 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
13942 (enum draw_glyphs_face): Define here.
13943 (struct glyph_string): Define here. Merge W32 and X versions.
13944 (struct redisplay_interface): New members per_char_metric,
13945 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
13946 (VCENTER_BASELINE_OFFSET): Define here.
13947 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
13948 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
13949
13950 * xdisp.c: Consolidate gui-independent "glyph string" code here.
13951 (dump_glyph_string): Moved here.
13952 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
13953 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
13954 (fill_composite_glyph_string, fill_glyph_string)
13955 (fill_image_glyph_string, fill_stretch_glyph_string)
13956 (left_overwritten, left_overwriting, right_overwritten)
13957 (right_overwriting, get_char_face_and_encoding)
13958 (set_glyph_string_background_width, compute_overhangs_and_x)
13959 (append_glyph, append_composite_glyph, produce_image_glyph)
13960 (take_vertical_position_into_account, append_stretch_glyph)
13961 (produce_stretch_glyph): New generic functions (based on X version).
13962 Call platform specific functions through rif.
13963 (INIT_GLYPH_STRING): New macro, hides W32 details.
13964 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
13965 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
13966 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
13967 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
13968 (notice_overwritten_cursor):
13969 Generic functions exported to platform modules. Users changed.
13970
13971 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
13972 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
13973 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
13974 New macros for consolidated code.
13975
13976 * xterm.c: Remove consolidated defines and code.
13977 (x_per_char_metric, x_encode_char)
13978 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
13979 (x_redisplay_interface): Add new members.
13980
13981 * w32gui.h (Display): Add dummy typedef for consolidation.
13982 (XChar2b): Define alias for wchar_t for consolidation.
13983 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13984
13985 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
13986 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
13987 New macros for consolidation.
13988
13989 * w32term.c: Remove consolidated defines and code.
13990 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
13991 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
13992 (w32_per_char_metric): Change font_type arg to int for RIF.
13993 (w32_encode_char): Return int according to RIF requirements.
13994 (w32_compute_glyph_string_overhangs): Adapt to RIF.
13995 (w32_get_glyph_overhangs): New function for RIF. Uses generic
13996 x_get_glyph_overhangs.
13997 (w32_redisplay_interface): Add new members.
13998
13999 * macgui.h (XChar2b): Move typedef here for consolidation.
14000 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
14001
14002 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
14003 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
14004 consolidation.
14005
14006 * macterm.c: Remove consolidated defines and code.
14007 (mac_per_char_metric): New function for RIF.
14008 (mac_encode_char): Adapt to new RIF requirements.
14009 (mac_compute_glyph_string_overhangs): Adapt for RIF.
14010 (x_redisplay_interface): Add new members.
14011
14012 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
14013
14014 * keymap.c (Vmenu_events): New var.
14015 (syms_of_keymap): Initialize it.
14016 (where_is_internal): Check more carefully what is a menu event.
14017
14018 2003-03-14 Richard M. Stallman <rms@gnu.org>
14019
14020 * lread.c (read1): After #!, exit loop on eof.
14021
14022 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14023
14024 * gtkutil.h: Add declaration for xg_frame_cleared.
14025
14026 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
14027
14028 * gtkutil.c (struct xg_last_sb_pos): New structure.
14029 (handle_fixed_child): New function.
14030 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
14031 and force a redraw on them.
14032 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
14033 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
14034 so we can avoid unneeded redraws.
14035 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
14036 and force a redraw on the scroll bar.
14037 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
14038 if xg_last_sb_pos shows the positions are up to date.
14039 (xg_frame_cleared): New function.
14040
14041 2003-03-13 Kenichi Handa <handa@m17n.org>
14042
14043 * coding.c (Fdetect_coding_region): Fix docstring.
14044 (Fdetect_coding_string): Fix docstring.
14045
14046 2003-03-13 Andreas Schwab <schwab@suse.de>
14047
14048 * gtkutil.c: Add prototype for create_menus.
14049
14050 * data.c (long_to_cons): Fix type of top.
14051
14052 * xselect.c (selection_data_to_lisp_data): Use int instead of
14053 long for an integer of size 4.
14054
14055 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
14056 (xg_tool_bar_help_callback): Likewise.
14057
14058 2003-03-12 Andreas Schwab <schwab@suse.de>
14059
14060 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
14061
14062 2003-03-12 Kim F. Storm <storm@cua.dk>
14063
14064 The following changes consolidate the fringe handling from
14065 xterm.c, w32term.c, and macterm.c into xdisp.c.
14066
14067 * xdisp.c: Consolidate fringe handling code here.
14068 (left_bits, right_bits, continued_bits, continuation_bits)
14069 (ov_bits, zv_bits): Define fringe bitmaps.
14070 (fringe_bitmaps): New array holding fringe bitmaps.
14071 (draw_fringe_bitmap): Draw a specific bitmap; call display
14072 specific drawing routine via rif->draw_fringe_bitmap.
14073 (draw_row_fringe_bitmaps): Generic replacement for
14074 x_draw_row_fringe_bitmaps; all callers changed.
14075 (compute_fringe_widths): Generic replacement for
14076 x_compute_fringe_widths; all callers changed.
14077
14078 * dispextern.h (enum fringe_bitmap_type): Define here.
14079 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
14080 (fringe_bitmaps): Declare extern.
14081 (struct redisplay_interface): New member draw_fringe_bitmap.
14082 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
14083
14084 * xterm.c: Remove generic fringe code.
14085 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14086 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14087
14088 * w32term.c: Remove generic fringe code.
14089 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
14090 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
14091
14092 * macterm.c: Remove generic fringe code.
14093 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14094 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14095
14096 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
14097
14098 * print.c (Fprin1_to_string): Return unibyte string if possible.
14099
14100 2003-03-09 David Kastrup <dak@gnu.org>
14101
14102 * process.c (read_process_output): We have allocated enough space
14103 for readmax and carryover, so actually use the alloted space.
14104
14105 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14106
14107 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
14108 toolkit scrollbar click.
14109
14110 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
14111 for USE_GTK.
14112 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
14113 also.
14114 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
14115 scrollbar and control is pressed, call x_scroll_bar_handle_click.
14116
14117 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
14118
14119 * gtkutil.c (xg_get_scroll_id_for_window): New function.
14120 (xg_tool_bar_item_expose_callback): New function.
14121 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
14122 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
14123 on the tool bar widget.
14124 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
14125 to expose on the tool bar item widgets.
14126
14127 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14128
14129 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
14130 struct image* when deciding to update (struct image* may have been
14131 deleted from the image cache).
14132
14133 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
14134 the event isn't for a frame (i.e. for dialogs).
14135
14136 2003-03-07 Kenichi Handa <handa@m17n.org>
14137
14138 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
14139 composition components reaches the limit, terminate composing.
14140 (COMPOSITION_OK): New macro.
14141 (detect_coding_iso2022): Use it if an escape sequence for
14142 composition is found.
14143 (coding_restore_composition): Adjust the number of composition
14144 components if it is not sane.
14145
14146 2003-03-06 Juanma Barranquero <lektu@terra.es>
14147
14148 * w32term.h (struct w32_display_info): Add xrdb member to support
14149 passing resources via -xrm on Windows.
14150
14151 * w32term.c (w32_make_rdb): New function.
14152 (w32_term_init): Use it to initialize xrdb member of w32_display_info
14153 struct. Delete leftover code.
14154
14155 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
14156 for resources passed on the command line.
14157
14158 * w32reg.c (w32_get_rdb_resource): New function.
14159 (x_get_string_resource): Use it, so resources passed with -xrm
14160 supercede the ones in the registry.
14161
14162 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14163
14164 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
14165 instead of x_top_window_to_frame.
14166
14167 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14168
14169 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
14170 when restarting Emacs.
14171
14172 2003-03-03 Richard M. Stallman <rms@gnu.org>
14173
14174 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
14175 to run kill-buffer-query-functions.
14176 (Qkill_buffer_query_functions): New var.
14177 (syms_of_buffer): Init and staticpro it.
14178
14179 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14180
14181 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
14182
14183 2003-02-25 Kim F. Storm <storm@cua.dk>
14184
14185 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
14186 If centering point failed to make whole line visible and vscroll
14187 is non-zero, disable vscroll and try centering point again.
14188
14189 * lread.c (read1): Accept `single space' syntax like (? x).
14190
14191 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14192
14193 * keyboard.c (cancel_hourglass_unwind): Surround with
14194 #ifdef HAVE_X_WINDOWS
14195
14196 2003-02-25 Kenichi Handa <handa@m17n.org>
14197
14198 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
14199 process only when "subprocesses" is defined.
14200
14201 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
14202
14203 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
14204
14205 2003-02-24 Juanma Barranquero <lektu@terra.es>
14206
14207 * callint.c (fix_command): Declare as static void and move before
14208 Fcall_interactively.
14209
14210 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
14211 (syms_of_xdisp): Don't initialize Qwhen.
14212
14213 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14214
14215 * keyboard.c (cancel_hourglass_unwind): New function.
14216 (command_loop_1): Cancel hourglass with unwind-protect.
14217
14218 2003-02-23 Richard M. Stallman <rms@gnu.org>
14219
14220 * callint.c (fix_command): New subroutine, from Fcall_interactively.
14221 Detect (when ... (region-beginning)) etc.
14222 (Fcall_interactively): Call fix_command.
14223 (Qif, Qwhen): New variables.
14224 (syms_of_callint): Init and staticpro them.
14225
14226 * regex.c (print_partial_compiled_pattern): Output to stderr.
14227
14228 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14229
14230 * dired.c (directory_files_internal): Don't expand directory.
14231 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
14232 instead. From Lars Hansen <larsh@math.ku.dk>.
14233
14234 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
14235
14236 * fns.c (string_to_multibyte): Remove unused var i.
14237 (Flanginfo): Fix int/Lisp_Object mixup.
14238 (void_call2): New fun.
14239 (Fmap_char_table): Use it in place of call2.
14240
14241 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
14242
14243 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
14244
14245 * keymap.c (copy_keymap_1): Make it static.
14246
14247 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
14248
14249 2003-02-22 David Ponce <david@dponce.com>
14250
14251 * lread.c (Fload): Don't check STRING_MULTIBYTE.
14252
14253 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14254
14255 * process.h: Removed subtty field from struct Lisp_Process.
14256
14257 * process.c (create_process): Remove setting of subtty.
14258 (emacs_get_tty_pgrp): New function.
14259 (Fprocess_running_child_p, process_send_signal):
14260 Call emacs_get_tty_pgrp instead of ioctl.
14261 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
14262
14263 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14264
14265 * keymap.c (Fdefine_key): Doc fix.
14266
14267 2003-02-21 Juanma Barranquero <lektu@terra.es>
14268
14269 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
14270
14271 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
14272 POLLING_PROBLEM_IN_SELECT.
14273
14274 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
14275 Delete #undef of POLLING_PROBLEM_IN_SELECT.
14276
14277 * s/hpux10-20.h: New file.
14278
14279 * process.c (wait_reading_process_input):
14280 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
14281
14282 2003-02-20 Kenichi Handa <handa@m17n.org>
14283
14284 * fontset.c (check_fontset_name): If NAME is nil, return the
14285 default fontset.
14286 (override_font_info): New function.
14287 (Fset_fontset_font): Document that NAME nil means the default fontset.
14288 (Ffontset_info): If FONTSET is not the default fontset, merge
14289 FONTSET onto the copy of the default fontset, and work on that
14290 copy. Document that NAME nil means the default fontset.
14291 (Ffontset_font): Document that NAME nil means the default fontset.
14292
14293 * process.c (setup_process_coding_systems): If the process's
14294 in/out descriptor is -1, do nothing.
14295
14296 2003-02-19 Andreas Schwab <schwab@suse.de>
14297
14298 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
14299 Add prototypes.
14300
14301 2003-02-19 Kenichi Handa <handa@m17n.org>
14302
14303 * xfaces.c (try_alternative_families): Try all scalable fonts if
14304 Vscalable_fonts_allowed is not Qt.
14305
14306 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14307
14308 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
14309
14310 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14311
14312 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
14313 names.
14314
14315 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
14316 (sorted_font_list): Move allocation of struct font_name to
14317 x_face_list_fonts.
14318 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
14319 (Fx_list_fonts): Set maxnames to -1 to get all font names.
14320
14321 2003-02-18 Kim F. Storm <storm@cua.dk>
14322
14323 * lread.c (read1): Fix last change.
14324 "`" is not always special. Allow "?" after a character constant.
14325
14326 2003-02-18 Andrew Choi <akochoi@shaw.ca>
14327
14328 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
14329
14330 2003-02-18 Andreas Schwab <schwab@suse.de>
14331
14332 * window.c (window_scroll_pixel_based): Move outside a
14333 multi-glyph character before setting new window start.
14334
14335 * xdisp.c (in_display_vector_p): New function.
14336 * dispextern.h (in_display_vector_p): Declare.
14337
14338 2003-02-18 Kim F. Storm <storm@cua.dk>
14339
14340 * lread.c (read1): Fix and relax read syntax.
14341 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
14342 Only recognize "," after dotted-pair dot if inside backquote.
14343 Never include "`" or "," (inside backquote) in a symbol.
14344 Allow dotted-pair dot after a character constant.
14345 Allow "`" and "," (inside backquote) after a character constant.
14346
14347 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14348
14349 * gtkutil.c (xg_tool_bar_expose_callback): New function.
14350 (xg_create_tool_bar): Force style of tool bar to be horizontal with
14351 icons. Set name of tool bar to emacs-toolbar.
14352 (update_frame_tool_bar): Connect expose event to
14353 xg_tool_bar_expose_callback.
14354
14355 2003-02-17 Richard M. Stallman <rms@gnu.org>
14356
14357 * keyboard.c (this_command_key_count_reset): New variable.
14358 Initiatize to 0 where this_command_key_count is set.
14359 (read_char): Save and restore this_command_key_count_reset
14360 around input method code.
14361 (read_char): If this_command_key_count_reset, echo reread commands.
14362 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
14363
14364 2003-02-17 Kenichi Handa <handa@m17n.org>
14365
14366 * fns.c (string_to_multibyte): Always return a multibyte string.
14367
14368 2003-02-16 Jason Rumney <jasonr@gnu.org>
14369
14370 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
14371 Negative max_fonts parameter means list all.
14372
14373 2003-02-14 Dave Love <fx@gnu.org>
14374
14375 * fns.c (Flanginfo): Doc fix.
14376
14377 2003-02-13 Kim F. Storm <storm@cua.dk>
14378
14379 * lread.c (read_escape): Interpret \s as a SPACE character, except
14380 for \s-X in a character constant which still is the super modifier.
14381 (read1): Signal an `invalid read syntax' error if a character
14382 constant is immediately followed by a digit or symbol character.
14383
14384 * search.c (Fmatch_data): Doc fix. Explicitly state that
14385 match-data is undefined if last search failed.
14386
14387 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
14388 All uses changed.
14389
14390 2003-02-12 Juanma Barranquero <lektu@terra.es>
14391
14392 * eval.c (Fdefmacro): Fix typo.
14393
14394 2003-02-12 Kim F. Storm <storm@cua.dk>
14395
14396 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
14397 macro is a string, convert meta modifiers in string when copying
14398 the string into a vector.
14399
14400 2003-02-11 Kim F. Storm <storm@cua.dk>
14401
14402 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
14403
14404 2003-02-11 Kenichi Handa <handa@m17n.org>
14405
14406 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
14407
14408 2003-02-10 Kim F. Storm <storm@cua.dk>
14409
14410 * process.c: Doc fixes.
14411 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
14412
14413 2003-02-10 Kenichi Handa <handa@m17n.org>
14414
14415 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
14416
14417 * process.c (QCfilter_multibyte): New variable.
14418 (setup_process_coding_systems): New function.
14419 (Fset_process_buffer, Fset_process_filter):
14420 Call setup_process_coding_systems.
14421 (Fstart_process): Initialize the member `filter_multibyte' of
14422 struct Lisp_Process.
14423 (create_process): Call setup_process_coding_systems.
14424 (Fmake_network_process): New keyward `:filter-multibyte'.
14425 Initialize the member `filter_multibyte' of struct Lisp_Process.
14426 Call setup_process_coding_systems.
14427 (server_accept_connection): Call setup_process_coding_systems.
14428 (read_process_output): If the process has a filter, decide the
14429 multibyteness of a string to given to the filter by
14430 `filter_multibyte' member of the process. If the process doesn't
14431 have a filter and the result of conversion is unibyte, use
14432 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
14433 multibyte form.
14434 (Fset_process_coding_system): Call setup_process_coding_systems.
14435 (Fset_process_filter_multibyte): New function.
14436 (Fprocess_filter_multibyte_p): New function.
14437 (syms_of_process): Intern and staticpro QCfilter_multibyte.
14438 Defsubr Sset_process_filter_multibyte and
14439 Sprocess_filter_multibyte_p.
14440
14441 * process.h (struct Lisp_Process): New member filter_multibyte.
14442
14443 * lisp.h (setup_process_coding_systems): Add prototype.
14444
14445 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
14446 process, update coding systems for the process.
14447
14448 2003-02-09 Kenichi Handa <handa@m17n.org>
14449
14450 * fns.c (string_to_multibyte): New function.
14451 (Fstring_to_multibyte): New function.
14452 (syms_of_fns): Defsubr it.
14453
14454 2003-02-08 Andreas Schwab <schwab@suse.de>
14455
14456 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
14457 instead of the substitution.
14458
14459 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14460
14461 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
14462
14463 * xmenu.c (menu_position_func): Adjust menu popup position so that
14464 the menu is fully visible.
14465
14466 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14467
14468 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
14469 (x_make_frame_invisible, x_wm_set_icon_position):
14470 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
14471
14472 * xfns.c (x_set_name, x_set_title): Ditto.
14473
14474 2003-02-04 Richard M. Stallman <rms@gnu.org>
14475
14476 * keyboard.c (echo_now): Update before_command_echo_length.
14477 (Freset_this_command_lengths): Reset this_command_key_count etc.
14478 immediately rather than arranging to do it later.
14479 (before_command_key_count_1, before_command_echo_length_1)
14480 (before_command_restore_flag): Vars deleted.
14481 (add_command_key): Don't handle before_command_restore_flag.
14482 (read_char, record_menu_key): Don't update before_command_key_count or
14483 before_command_echo_length.
14484 (read_char): Don't handle before_command_restore_flag.
14485
14486 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
14487 in direct-output clauses if it wouldn't be called in the ordinary case.
14488
14489 2003-02-04 Kim F. Storm <storm@cua.dk>
14490
14491 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14492
14493 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14494
14495 * gtkutil.c (remove_from_container): Copying list is not needed.
14496 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14497 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14498 on list returned from gtk_container_get_children to avoid memory leak.
14499
14500 2003-02-01 Jason Rumney <jasonr@gnu.org>
14501
14502 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14503 local malloc.
14504 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14505 definitions in xpm.h.
14506 (init_xpm_functions): New function.
14507 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14508 (init_external_image_libraries): Try to load libXpm.dll.
14509
14510 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14511 timestamp.
14512
14513 2003-01-31 Dave Love <fx@gnu.org>
14514
14515 * syntax.c (Fskip_chars_forward)
14516 (open-paren-in-column-0-is-defun-start): Doc fix.
14517
14518 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14519
14520 * fileio.c: Support // at start of name for Cygwin (just added proper
14521 preprocessor tests).
14522
14523 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14524
14525 * Makefile.in: Use @EXEEXT@ for Cygwin.
14526
14527 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14528
14529 * s/cygwin.h: Added for Cygwin port.
14530
14531 2003-01-31 Juanma Barranquero <lektu@terra.es>
14532
14533 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14534 when including gif_lib.h.
14535 (init_gif_functions, init_tiff_functions): New functions.
14536 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14537 Windows. Disable color table lookups. Call library functions
14538 through pointers determined at runtime.
14539 (init_external_image_libraries): Try to load libungif.dll and
14540 libtiff.dll.
14541
14542 2003-01-31 Kenichi Handa <handa@m17n.org>
14543
14544 * xdisp.c (SKIP_GLYPHS): New macro.
14545 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14546
14547 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14548
14549 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
14550
14551 2003-01-30 Dave Love <fx@gnu.org>
14552
14553 * alloc.c (Vgc_elapsed, gcs_done): New variables.
14554 (Fgarbage_collect): Use them.
14555 (init_alloc, syms_of_alloc): Set them up.
14556
14557 2003-01-30 Juanma Barranquero <lektu@terra.es>
14558
14559 * w32fns.c (init_external_image_libraries): Add missing operator.
14560
14561 2003-01-29 Jason Rumney <jasonr@gnu.org>
14562
14563 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
14564 an alternative name for jpeg.dll.
14565
14566 2003-01-29 Kenichi Handa <handa@m17n.org>
14567
14568 * xdisp.c (set_cursor_from_row): Pay attention to string display
14569 properties.
14570
14571 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
14572
14573 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
14574 <escape>.
14575 (keycode_to_xkeysym_table): Reformat and add more comments.
14576 (XTread_socket): Drop special case for backspace.
14577
14578 2003-01-28 Andrew Choi <akochoi@shaw.ca>
14579
14580 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
14581 values in old-style RGB specs.
14582
14583 2003-01-27 Juanma Barranquero <lektu@terra.es>
14584
14585 * w32fns.c (init_external_image_libraries): Try alternate names for the
14586 jpeg dll.
14587
14588 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14589
14590 * gtkutil.c (create_dialog, xg_separator_p)
14591 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
14592 before calling strcmp or strlen.
14593
14594 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14595
14596 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
14597 and handle image load failure.
14598
14599 2003-01-26 Jason Rumney <jasonr@gnu.org>
14600
14601 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
14602 New functions.
14603 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
14604 Disable color table lookups. Call jpeg library functions
14605 through pointers determined at runtime.
14606 (init_external_image_libraries): Try to load jpeg.dll.
14607
14608 2003-01-25 Richard M. Stallman <rms@gnu.org>
14609
14610 * lisp.h: Declare format2 instead of format1.
14611
14612 * fileio.c (barf_or_query_if_file_exists):
14613 Call format2 instead of format1.
14614
14615 * editfns.c (format2): New function, replaces format1
14616 but takes exactly two Lisp Objects as format args.
14617
14618 * buffer.c (Fkill_buffer): Call format2 instead of format1.
14619
14620 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14621
14622 * xterm.h: Change to return value of x_dispatch_event to int.
14623
14624 * xterm.c (x_filter_event): New function.
14625 (event_handler_gdk, XTread_socket): Call x_filter_event.
14626 (x_dispatch_event): Change to return value of finish.
14627 (event_handler_gdk): Use return value from x_dispatch_event.
14628
14629 * xfns.c (x_window): Call create_frame_xic for GTK version to
14630 initialize input methods.
14631
14632 * gtkutil.h: Add (void) prototypes.
14633
14634 * gtkutil.c (create_menus): Remove code that puts the help menu to
14635 the right.
14636
14637 2003-01-25 Jason Rumney <jasonr@gnu.org>
14638
14639 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
14640 [HAVE_PNG]: Sync with xfns.c version.
14641 (png_load): Adjust colors for Windows. Use Windows
14642 bitmaps. Disable color table lookups.
14643 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
14644 (init_png_functions): New function.
14645 (png_read_from_memory, png_load): Call png library functions
14646 through pointers determined at runtime.
14647 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
14648 (init_external_image_libraries): New function.
14649 (init_xfns): Call it.
14650
14651 2003-01-24 Andreas Schwab <schwab@suse.de>
14652
14653 * minibuf.c (Fminibuffer_message): Verify type of parameter.
14654
14655 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14656
14657 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
14658 of static initializer.
14659
14660 2003-01-24 Dave Love <fx@gnu.org>
14661
14662 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
14663 architectures.
14664
14665 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
14666 Use __alignof__.
14667
14668 2003-01-24 Kenichi Handa <handa@m17n.org>
14669
14670 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
14671 It it is nonzero, don't pretend that an invisible area doesn't exist.
14672 (command_loop_1): Call adjust_point_for_property with proper
14673 second arg.
14674
14675 2003-01-22 Jason Rumney <jasonr@gnu.org>
14676
14677 Sync changes with xterm.c and xfns.c.
14678
14679 * w32term.c (x_draw_glyph_string_foreground)
14680 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14681
14682 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
14683 phys_cursor's hpos is overwritten. This is still not completely
14684 correct, as it doesn't really make sense to use hpos at all to
14685 get the cursor glyph (as that is relative to the width of the
14686 characters on the line, which may have changed during the update).
14687
14688 * w32term.c (notice_overwritten_cursor): Handle the special case
14689 of the cursor being in the first blank non-text line at the
14690 end of a window.
14691
14692 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14693 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14694 Compute from the x position returned by x_draw_glyphs.
14695
14696 (x_display_and_set_cursor): Don't set phys_cursor_width here,
14697 except for NO_CURSOR and system caret, to make phys_cursor_width
14698 contain what its name suggests.
14699 (notice_overwritten_cursor): Consider the cursor image erased if
14700 the output area intersects the cursor image in y-direction.
14701
14702 * w32term.c (note_mode_line_or_margin_highlight): Rename from
14703 note_mode_line_highlight and extend.
14704
14705 * w32term.c (last_window): New variable.
14706 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
14707 (note_mouse_movement): Remove reimplemented code in #if 0.
14708
14709 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
14710 not update_mode_lines, and always set it to 1.
14711
14712 2003-01-21 Jason Rumney <jasonr@gnu.org>
14713
14714 * w32fns.c (IDC_HAND): Define it if system headers don't.
14715
14716 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
14717
14718 * w32term.h (struct w32_output): New member hand_cursor.
14719 (WM_EMACS_SETCURSOR): New message definition.
14720
14721 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
14722 function w32_define_cursor.
14723 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
14724 position, change member name output_data.x to output_data.w32 and
14725 add function w32_define_cursor.
14726 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
14727 and change member name output_data.x to output_data.w32.
14728 (w32_initialize_display_info):
14729 Setup dpyinfo->vertical_scroll_bar_cursor.
14730
14731 * w32fns.c (Vx_hand_shape): New variable.
14732 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
14733 WM_EMACS_SETCURSOR.
14734 (x-create-frame): Setup Cursor types.
14735
14736 2003-01-21 David Ponce <david@dponce.com>
14737
14738 * w32term.c (w32_encode_char): For DIM=1 charset, set
14739 ccl->reg[2] to -1 before calling ccl_driver.
14740 (Sync. with xterm.c x_encode_char change by Kenichi Handa
14741 <handa@m17n.org> on 2002-09-30.)
14742 (w32_draw_relief_rect): Declare all args.
14743 (w32_define_cursor): New.
14744
14745 * w32fns.c (w32_load_cursor): New function.
14746 (w32_init_class): Use it.
14747 (x_put_x_image): Declare all args.
14748
14749 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
14750
14751 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
14752
14753 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14754
14755 * gtkutil.c: Must include stdio.h before termhooks.h
14756
14757 2003-01-21 Dave Love <fx@gnu.org>
14758
14759 * alloc.c (Fgc_status): Print zombie list.
14760 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14761 Fix assignment of zombies.
14762 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14763 Don't take car of non-cons.
14764
14765 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14766
14767 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14768
14769 2003-01-20 David Ponce <david@dponce.com>
14770
14771 * w32menu.c (digest_single_submenu): Declare all args.
14772
14773 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
14774 changes in xmenu.c:
14775
14776 (parse_single_submenu): Use individual keymap's prompt
14777 string as pane name, if there is one.
14778 (set_frame_menubar): Save menu_items_n_panes from each call to
14779 parse_single_submenu and use it when calling digest_single_submenu.
14780
14781 2003-01-20 Steven Tamm <steventamm@mac.com>
14782
14783 * macterm.c (XTread_socket): Check for valid, visible window
14784 before sending a scroll-wheel event.
14785
14786 2003-01-20 Richard M. Stallman <rms@gnu.org>
14787
14788 * xdisp.c (redisplay_window): If mini window's buffer is not
14789 a minibuffer, then redisplay it like other windows.
14790
14791 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14792
14793 * gtkutil.c (xg_create_frame_widgets): Check if there is an
14794 external tool bar before setting tool bar height.
14795
14796 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14797
14798 * xterm.c (handle_one_xevent): Surround popup_activated
14799 with #ifdef:s for non-toolkit version.
14800
14801 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
14802 (gtkutil.o): New file.
14803 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
14804 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
14805
14806 * gtkutil.c: New file for GTK version.
14807
14808 * gtkutil.h: New file for GTK version.
14809
14810 * xterm.h: Add xt_or_gtk_widget.
14811 Include gtk files for USE_GTK.
14812 (struct x_output): Add toolbar_height.
14813 (struct x_output): Add GTK widgets and Gdk size_hints.
14814 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
14815 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
14816 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
14817
14818 * xterm.c: Include gtkutil.h for USE_GTK.
14819 (free_frame_menubar): Declare extern void for USE_GTK.
14820 (note_mouse_highlight): Check popup_activated for USE_GTK.
14821 (xt_action_hook): Don't compile if USE_GTK.
14822 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
14823 (xg_scroll_callback): New function.
14824 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
14825 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
14826 for USE_GTK.
14827 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
14828 xg_show_scroll_bar for USE_GTK.
14829 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
14830 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
14831 (event_handler_gdk): New function for USE_GTK.
14832 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
14833 (handle_one_xevent): Make sure widget is mapped before
14834 calling x_real_positions for USE_GTK.
14835 (XTread_socket): Add GTK event loop for USE_GTK.
14836 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
14837 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
14838 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
14839 (x_iconify_frame): Add code for USE_GTK.
14840 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
14841 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
14842 is in gtkutil.c.
14843 (x_term_init): Add initialization for GTK.
14844 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
14845
14846 * xmenu.c: Include gtkutil.h for USE_GTK.
14847 (Fx_popup_menu): Use current position if x and y is NIL.
14848 (single_menu_item, single_menu_item, Fx_popup_dialog):
14849 Check for USE_GTK.
14850 (popup_widget_loop): New function for USE_GTK.
14851 (x_activate_menubar): Add code for USE_GTK.
14852 (popup_activate_callback, popup_deactivate_callback)
14853 (menu_highlight_callback, menubar_selection_callback):
14854 Add USE_GTK versions.
14855 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
14856 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
14857 (free_frame_menubar): Only compile if not USE_GTK. GTK version
14858 is in gtkutil.c.
14859 (popup_selection_callback): New version for USE_GTK.
14860 (create_and_show_popup_menu): New fuction, one USE_GTK version and
14861 one USE_X_TOOLKIT version.
14862 (xmenu_show): Call create_and_show_popup_menu.
14863 (dialog_selection_callback): New version for USE_GTK.
14864 (create_and_show_dialog): New fuction, one USE_GTK version and
14865 one USE_X_TOOLKIT version.
14866 (xdialog_show): Call create_and_show_dialog.
14867
14868 * xfns.c: Include gtkutil for USE_GTK.
14869 (x_window_to_frame, x_any_window_to_frame)
14870 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
14871 (x_top_window_to_frame): Add code for USE_GTK.
14872 (x_set_background_color): Call xg_set_background_color for GTK.
14873 (x_set_menu_bar_lines): Check for USE_GTK.
14874 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
14875 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
14876 (x_window): Call xg_create_frame_widgets for USE_GTK.
14877 (Fx_create_frame): Check for USE_GTK
14878 (Fx_file_dialog): New implementation for USE_GTK.
14879
14880 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
14881 (update_menu_bar): Add check for USE_GTK.
14882 (update_tool_bar): Add check for USE_GTK and external tool bar.
14883 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
14884 (redisplay_internal): Add check for USE_GTK and popup_activated.
14885 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
14886 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
14887 (display_menu_bar): Add check for USE_GTK
14888
14889 * lisp.h (Vx_resource_name): Declare extern.
14890
14891 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
14892 for USE_GTK.
14893 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
14894
14895 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
14896 (FRAME_EXTERNAL_TOOL_BAR): New macro.
14897 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
14898
14899 * fileio.c (Fread_file_name): Add check for USE_GTK.
14900
14901 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
14902 Add check for USE_GTK.
14903
14904 * config.in: Added HAVE_GTK
14905
14906 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
14907
14908 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
14909
14910 * charset.h (Funibyte_char_to_multibyte): Export.
14911
14912 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14913
14914 * xmenu.c (mouse_position_for_popup): New function.
14915 (Fx_popup_menu): Call mouse_position_for_popup for X and
14916 mouse_position_hook for others.
14917
14918 2003-01-17 Kim F. Storm <storm@cua.dk>
14919
14920 * editfns.c (Finsert): Mention `string-make-multibyte' and
14921 `string-as-multibyte' in doc string.
14922
14923 2003-01-17 Kenichi Handa <handa@m17n.org>
14924
14925 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
14926
14927 * editfns.c (Fformat): Convert an unibyte char argument that is
14928 formatted by "%c" to multibyte if the total result must be a
14929 multibyte string.
14930
14931 2003-01-16 Kim F. Storm <storm@cua.dk>
14932
14933 * process.c (set-process-filter): Document unibyte/multibyte-ness
14934 of string argument.
14935
14936 2003-01-16 Kenichi Handa <handa@m17n.org>
14937
14938 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
14939
14940 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
14941 (re_search_2): Likewise.
14942
14943 2003-01-15 Kenichi Handa <handa@m17n.org>
14944
14945 * xdisp.c (message_dolog): Fix bug of the case that *Message*
14946 buffer is unibyte.
14947
14948 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
14949
14950 * fns.c (Fsubstring): Clarify doc string.
14951
14952 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
14953 (Fprevious_char_property_change)
14954 (Fnext_single_char_property_change)
14955 (Fprevious_single_char_property_change, Fnext_property_change)
14956 (Fnext_single_property_change, Fprevious_property_change)
14957 (Fprevious_single_property_change, Fadd_text_properties)
14958 (Fput_text_property, Fset_text_properties)
14959 (Fremove_text_properties, Fremove_list_of_text_properties)
14960 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
14961
14962 2003-01-14 Kim F. Storm <storm@cua.dk>
14963
14964 * process.h (struct Lisp_Process): New member plist replaces old
14965 member private_vars. All uses changed.
14966
14967 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
14968 (QCplist): Rename from QCvars. Change all uses.
14969 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
14970 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
14971 (syms_of_process): Intern, staticpro, defsubr these.
14972 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
14973
14974 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
14975
14976 * m/delta.h: Remove (obsolete).
14977
14978 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
14979
14980 * fileio.c (Fdelete_directory, Fdelete_file): Document the
14981 behaviour in front of symlinks.
14982 (Fdelete_file): Raise an error on directories.
14983
14984 2003-01-13 Dave Love <fx@gnu.org>
14985
14986 * fns.c (Freverse): Use QUIT.
14987
14988 2003-01-13 Richard M. Stallman <rms@gnu.org>
14989
14990 * minibuf.c (minibuffer_completion_contents):
14991 Error if point is inside prompt.
14992
14993 * keyboard.c (command_loop_1): Don't redisplay directly
14994 if there's a post-command-hook.
14995
14996 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
14997 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
14998
14999 2003-01-12 Kim F. Storm <storm@cua.dk>
15000
15001 * process.h (struct Lisp_Process): New member private_vars.
15002
15003 * process.c (QCvars): New variable.
15004 (syms_of_process): Intern and staticpro it.
15005 (Fset_process_contact): Removed function.
15006 (Fprocess_variable, Fset_process_variable): New functions.
15007 (syms_of_process): Defsubr them.
15008 (Fstart_process): Initialize private_vars plist to nil.
15009 (Fmake_network_process): New arg :vars to setup the private
15010 variables for new network process.
15011 (server_accept_connection): Copy server's private variables to
15012 client process.
15013
15014 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
15015 crashes). Code rewritten and simplified. Now directly aligns the
15016 pointer and recalculates pure_bytes_used, rather than aligning the
15017 size and adjusting the pointer.
15018
15019 2003-01-11 Kim F. Storm <storm@cua.dk>
15020
15021 * process.c (Fset_process_contact): New function.
15022 (syms_of_process): defsubr it.
15023 (make-network-process): Update doc.
15024
15025 2003-01-10 Andreas Schwab <schwab@suse.de>
15026
15027 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
15028 Reported by Berthold Gunreben <b.gunreben@web.de>.
15029
15030 2003-01-10 Dave Love <fx@gnu.org>
15031
15032 * composite.c (syms_of_composite): Make composition_hash_table weak.
15033
15034 2003-01-09 Kim F. Storm <storm@cua.dk>
15035
15036 * process.c (Fmake_network_process): Convert new port number
15037 to host byte order for `:service t' case. From Mario Lang.
15038
15039 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15040
15041 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
15042 instead of XtAppProcessEvent.
15043
15044 * xterm.c (handle_one_xevent): New function.
15045 (x_dispatch_event): New function.
15046 (XTread_socket): Call handle_one_xevent.
15047
15048 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
15049
15050 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
15051 call XQueryPointer to get coordinates.
15052 (popup_get_selection): Do not set popup_activated_flag to zero,
15053 let popup_deactivate_callback do that. Needed for Motif.
15054 Call x_dispatch_event instead of XtDispatchEvent.
15055 (xmenu_show): Calculate root coordinate from frame top/left position.
15056
15057 2003-01-08 Kim F. Storm <storm@cua.dk>
15058
15059 * process.c (server_accept_connection): Fix recording of new
15060 connection's local address in :local property of contact info.
15061 (Fmake_network_process): Record local network address for new
15062 client processes in :local property of contact info.
15063 (format-network-address): Add arg OMIT-PORT. Change callers.
15064
15065 2003-01-07 Dave Love <fx@gnu.org>
15066
15067 * Makefile.in (fns.o): Depend on coding.h.
15068
15069 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
15070
15071 * minibuf.c (Fread_variable): Doc fix.
15072
15073 * eval.c (Fuser_variable_p): Doc change. For custom variables,
15074 use the same test as for custom-variable-p.
15075
15076 2003-01-05 Richard M. Stallman <rms@gnu.org>
15077
15078 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
15079 Count LAST_LINE_MISFIT in scroll margin for end of window.
15080 Move label too_near_end before setting SCROLL_MARGIN_POS.
15081 Set LAST_LINE_MISFIT before jumping there.
15082
15083 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
15084 scroll_conservatively case. If scrolling that much doesn't change
15085 STARTP, move it down one line.
15086
15087 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
15088 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
15089
15090 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
15091 selected frame.
15092
15093 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
15094 (syms_of_keymap): Staticpro them.
15095 (Fapropos_internal): Initialize them and clear them out.
15096 Don't GCPRO them.
15097
15098 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
15099 Doc fixes.
15100
15101 * lisp.h: New misc type Lisp_Save_Value.
15102 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
15103 (XSAVE_VALUE): New macro.
15104 (struct Lisp_Save_Value): New data type.
15105 (union Lisp_Misc): Add u_save_value alternative.
15106 (make_save_value): Declare.
15107
15108 * alloc.c (make_save_value): New function.
15109
15110 * xterm.c (x_catch_errors): Save dpy using make_save_value.
15111 (x_catch_errors_unwind): Call XSync.
15112
15113 2003-01-01 Richard M. Stallman <rms@gnu.org>
15114
15115 * window.c (window_scroll_pixel_based): Partially undo last change.
15116
15117 * keyboard.c (command_loop_1): Call adjust_point_for_property
15118 in direct action cases for Qforward_char and Qbackward_char.
15119 Set already_adjusted so it won't be done twice.
15120
15121 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
15122
15123 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
15124 type definition of size_t.
15125
15126 2003-01-02 Steven Tamm <steventamm@mac.com>
15127
15128 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
15129 distinguish Carbon GUI builds from X11 builds on darwin.
15130
15131 2002-12-30 Steven Tamm <steventamm@mac.com>
15132
15133 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
15134 to default to t.
15135
15136 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
15137
15138 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
15139
15140 2002-12-28 Steven Tamm <steventamm@mac.com>
15141
15142 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
15143 allow building in a different directory than source. Uses some
15144 GNU Make extensions, but there is no other make on Mac OS X.
15145
15146 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
15147
15148 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
15149 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
15150 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
15151 (Fstring_to_number): Mention the returned value in the doc strings.
15152
15153 2002-12-23 Richard M. Stallman <rms@gnu.org>
15154
15155 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
15156 <scroll-down-aggressively>: Doc fix.
15157
15158 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
15159 string as pane name, if there is one.
15160 (set_frame_menubar): Save menu_items_n_panes from each call to
15161 parse_single_submenu and use it when calling digest_single_submenu.
15162
15163 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
15164 Don't try to make last line fully visible if it is past end of window.
15165
15166 2002-12-22 Steven Tamm <steventamm@mac.com>
15167
15168 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
15169 (mac_menu_show): Add support for hierarchical popup menus.
15170 (add_menu_item): Remove indentation support.
15171 (fill_submenu, fill_menu): Create hierarchical menus
15172 instead of using indentation.
15173
15174 2002-12-22 Richard M. Stallman <rms@gnu.org>
15175
15176 * xdisp.c (try_cursor_movement): Don't call try_window here.
15177 (redisplay_window): Never redisplay minibuffer when inactive.
15178
15179 * window.c (select_window_1): Undo 9/21 change.
15180
15181 2002-12-22 Steven Tamm <steventamm@mac.com>
15182
15183 * macterm.c (XTread_socket): Call KeyTranslate for control and
15184 meta to deal correctly shifted non-alpha characters, like C-S-5
15185 being treated like C-%. Do not look for shift key to deal
15186 with masking off control-key with mac-reverse-ctrl-meta.
15187
15188 2002-12-21 Richard M. Stallman <rms@gnu.org>
15189
15190 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
15191 If it is non-nil, run timers. Use an unwind-protect to requeue
15192 the events that were read ahead.
15193 (popup_get_selection_unwind): New subroutine.
15194 (popup_get_selection_queue): File-scope variable now holds that queue.
15195 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
15196 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
15197 Use an unwind-protect to pop down the dialog box.
15198 (xdialog_show_unwind): New subroutine implements that.
15199
15200 * xdisp.c (row_containing_pos): Change exit test using last_y.
15201 (try_window_id): Abort if row_containing_pos returns null.
15202
15203 * lread.c (load_error_handler): New function.
15204 (Fload): Handle errors in Fsubstitute_in_file_name.
15205 Don't expect Fsignal to return.
15206
15207 * eval.c: Errors and throws work right with interrupt blocking.
15208 (struct catchtag): New elt interrupt_input_blocked.
15209 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
15210 (internal_catch, Fcondition_case, internal_condition_case)
15211 (internal_condition_case_1, internal_condition_case_2): Save it.
15212 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
15213
15214 * editfns.c (Fformat): Add parens.
15215
15216 * dired.c (file_name_completion): Fix that change.
15217 Delete special quit-handling code; just use QUIT.
15218
15219 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
15220
15221 * dired.c (file_name_completion): Close directory on error
15222 just as in directory_files_internal.
15223
15224 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
15225
15226 * window.c (Fset_window_configuration): Set old_point to correct
15227 value when new_current_buffer == current_buffer.
15228
15229 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
15230
15231 Revisited my earlier fix for the following entry in etc/PROBLEMS:
15232 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15233 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15234
15235 These changes were in part based upon suggestions made by Peter
15236 'Luna' Runestig [peter@runestig.com].
15237
15238 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
15239 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
15240 (g_b_init_get_sid_identifier_authority ): Add several static
15241 global variables.
15242
15243 * w32.c (globals_of_w32): New function. Used to initialize those
15244 global variables that must always be initialized on startup even
15245 when the global variable initialized is non zero. Its primary
15246 purpose at this time is to set the global variables
15247 g_b_init_is_windows_9x, g_b_init_open_process_token,
15248 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
15249 g_b_init_get_sid_identifier_authority to 0 on startup.
15250 Called from main.
15251
15252 * w32.c (is_windows_9x): Perform initialization only if
15253 g_b_init_is_windows_9x is equal to 0. On initialization set
15254 g_b_init_is_windows_9x equal to 1.
15255
15256 * w32.c (open_process_token): Perform initialization only if
15257 g_b_init_open_process_token is equal to 0. On initialization set
15258 g_b_init_open_process_token equal to 1.
15259
15260 * w32.c (get_token_information): Perform initialization only if
15261 g_b_init_get_token_information is equal to 0. On initialization
15262 set g_b_init_get_token_information equal to 1.
15263
15264 * w32.c (lookup_account_sid): Perform initialization only if
15265 g_b_init_lookup_account_sid is equal to 0. On initialization
15266 set g_b_init_lookup_account_sid equal to 1.
15267
15268 * w32.c (get_sid_identifier_authority): Perform initialization
15269 only if g_b_init_get_sid_identifier_authority is equal to 0.
15270 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
15271
15272 * w32fns.c (globals_of_w32fns): New function. Used to initialize
15273 those global variables that must always be initialized on startup
15274 even when the global variable initialized is non zero.
15275 Its primary purpose at this time is to initialize the global variable
15276 track_mouse_event_fn.
15277
15278 * w32fns.c (w32_wnd_proc): Remove initialization of
15279 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
15280
15281 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
15282
15283 * w32menu.c (globals_of_w32menu): New function. Used to
15284 initialize those global variables that must always be initialized
15285 on startup even when the global variable initialized is non zero.
15286 Its primary purpose at this time is to initialize the global
15287 variables get_menu_item_info and set_menu_item_info.
15288
15289 * w32menu.c (initialize_frame_menubar): Remove initialization of
15290 get_menu_item_info and set_menu_item_info.
15291
15292 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
15293
15294 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
15295 Declare them.
15296
15297 * emacs.c (main): Call globals_of_w32 prior to calling
15298 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
15299 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
15300 is defined.
15301
15302 * w32term.c (x_update_window_begin): Fix Windows API error
15303 detected by BoundsChecker. Test to determine if
15304 w32_system_caret_hwnd is NULL prior to attempting to use
15305 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
15306
15307 * w32term.c (x_update_window_end): Fix Windows API error
15308 detected by BoundsChecker. Test to determine if
15309 w32_system_caret_hwnd is NULL prior to attempting to use
15310 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
15311
15312 2002-12-17 Kenichi Handa <handa@m17n.org>
15313
15314 * coding.c (coding_system_require_warning): New variable.
15315 (syms_of_coding): DEFVAR it.
15316
15317 * coding.h (coding_system_require_warning): Extern it.
15318
15319 * fileio.c (choose_write_coding_system): Even if
15320 Vcoding_system_for_write is non-nil, if
15321 coding_system_require_warning is nonzero, call
15322 Vselect_safe_coding_system_function.
15323
15324 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
15325
15326 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
15327 (lisp): Add font-core.
15328
15329 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
15330
15331 * textprop.c (text_read_only): New arg `propval'.
15332 (get_char_property_and_overlay): Remove unused var `next_overlay'.
15333 (verify_interval_modification): Use text_read_only's new arg.
15334
15335 2002-12-13 Kenichi Handa <handa@m17n.org>
15336
15337 * coding.c (Funencodable_char_position): Set pend correctly.
15338
15339 2002-12-12 Jason Rumney <jasonr@gnu.org>
15340
15341 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
15342 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
15343 Be more careful about when help_events are generated.
15344
15345 2002-12-12 Steven Tamm <steventamm@mac.com>
15346
15347 * macterm.c (mac_check_for_quit_char): Correctly set the
15348 modifiers of the event to 0.
15349 * mac.c (sys_select): Duplicate rfds before calling select to
15350 ensure that rfds survive the while loop.
15351
15352 2002-12-11 Kim F. Storm <storm@cua.dk>
15353
15354 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
15355 row_containing_pos returned NULL.
15356
15357 2002-12-10 Steven Tamm <steventamm@mac.com>
15358
15359 * mac.c (sys_read): Fix sys_read to not call select if IO is
15360 non-blocking.
15361 (sys_select): Fix sys_select to not use a timeout larger than
15362 the one given.
15363
15364 2002-12-10 Juanma Barranquero <lektu@terra.es>
15365
15366 * editfns.c (Fformat): Use alloca, not _alloca.
15367
15368 2002-12-09 Richard M. Stallman <rms@gnu.org>
15369
15370 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
15371 as the last thing.
15372
15373 2002-12-09 Dave Love <fx@gnu.org>
15374
15375 * s/sol2-8.h: Removed. (Not necessary.)
15376
15377 2002-12-09 Matthew Swift <swift@alum.mit.edu>
15378
15379 * editfns.c (Fformat): Handle precision in string conversion
15380 specifiers like libc functions do (ie, print at most that many
15381 characters).
15382
15383 2002-12-08 Richard M. Stallman <rms@gnu.org>
15384
15385 * xdisp.c (row_containing_pos): Check more carefully
15386 whether charpos is really in the row before returning it.
15387
15388 2002-12-07 Steven Tamm <steventamm@mac.com>
15389
15390 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
15391
15392 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
15393 each stack frame. This may change as it could be time consuming.
15394
15395 * macterm.c (mac_check_for_quit_char, quit_char_comp)
15396 (init_quit_char_handler, mac_determine_quit_char_modifiers)
15397 (mac_initialize): Add code to check for pressing of quit_char
15398 in the OS event queue.
15399
15400 * mac.c (sys_select): Call mac_check_for_quit_char every second
15401 while blocking on select.
15402
15403 * mac.c (sys_read): Use sys_select to test for input first
15404 before calling read, to allow C-g to break.
15405
15406 2002-12-07 Richard M. Stallman <rms@gnu.org>
15407
15408 * minibuf.c (Fcompleting_read): Doc fix.
15409
15410 * lread.c (syms_of_lread) <load-history>: Doc fix.
15411
15412 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
15413
15414 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
15415 autoload.
15416
15417 * data.c (Fdefalias): Record in load-history redefining an autoload.
15418
15419 * alloca.c: Undo ifdef change accidentally made on 12-04.
15420
15421 2002-12-06 Francesco Potorti` <pot@gnu.org>
15422
15423 * xfns.c (png_load): Avoid double gamma correction for PNG images.
15424
15425 2002-12-04 Richard M. Stallman <rms@gnu.org>
15426
15427 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
15428
15429 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
15430
15431 * alloca.c: Don't use #error.
15432
15433 2002-12-03 Dave Love <fx@gnu.org>
15434
15435 * buffer.c (Qucs_set_table_for_input): New.
15436 (Fget_buffer_create): Use it.
15437 (Qset_buffer_major_mode_hook): Deleted.
15438 (Fset_buffer_major_mode): Revert previous change.
15439 (init_buffer_once): Intern ucs-set-table-for-input.
15440 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
15441 Add &Qucs_set_table_for_input.
15442
15443 2002-12-03 Andreas Schwab <schwab@suse.de>
15444
15445 * callint.c (Fcall_interactively): Use next_event only if less
15446 than key_count.
15447
15448 2002-12-02 Andrew Choi <akochoi@shaw.ca>
15449
15450 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
15451 names to 255 characters.
15452
15453 * macterm.c (XTread_socket): If all frames have been collapsed,
15454 expand the first one before handling drag-and-drop events.
15455
15456 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
15457 which is detected by autoconf.
15458
15459 2002-12-01 Steven Tamm <steventamm@mac.com>
15460
15461 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
15462 offset in two hints table to allow prebinding to be redone and
15463 allow the executable to be stripped.
15464
15465 2002-11-29 Dave Love <fx@gnu.org>
15466
15467 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
15468 already provided.
15469
15470 2002-11-29 Richard M. Stallman <rms@gnu.org>
15471
15472 * xdisp.c (start_display): Check more intelligently for
15473 whether the line is continued.
15474 (move_it_vertically_backward): Clear it->continuation_lines_width.
15475
15476 2002-11-28 Dave Love <fx@gnu.org>
15477
15478 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
15479 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
15480
15481 2002-11-27 Steven Tamm <steventamm@mac.com>
15482
15483 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
15484 more descriptive error output from lread.c:Fload upon most require
15485 cycles during boostrapping.
15486
15487 2002-11-27 Jason Rumney <jasonr@gnu.org>
15488
15489 * fileio.c (Finsert_file_contents): Give a more appropriate error
15490 for files bigger than 2Gb when off_t is 32 bit.
15491
15492 * dired.c (Ffile_attributes): Don't return negative file sizes for
15493 files bigger than 2Gb when off_t is 32 bit.
15494
15495 2002-11-27 Dave Love <fx@gnu.org>
15496
15497 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15498
15499 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15500 Test GETPGRP_VOID instead.
15501 [BSD_TERMIOS]: Remove definitions (never used).
15502
15503 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15504 Don't define.
15505 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15506
15507 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15508
15509 2002-11-25 Jason Rumney <jasonr@gnu.org>
15510
15511 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15512 supported.
15513
15514 2002-11-25 Dave Love <fx@gnu.org>
15515
15516 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15517
15518 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15519
15520 2002-11-25 Andreas Schwab <schwab@suse.de>
15521
15522 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15523
15524 2002-11-24 Steven Tamm <steventamm@mac.com>
15525
15526 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15527 determine the size of pointers alloced in unexed space instead
15528 of using possibly invalid emacs_zone pointers. This fixes the
15529 binary incompatibility problems caused by updates to libSystem.B.
15530
15531 2002-11-24 Richard M. Stallman <rms@gnu.org>
15532
15533 * search.c (Fstring_match): Doc fix.
15534
15535 * callint.c (Fcall_interactively): If a command fails because
15536 `*' detects a read-only buffer, but RECORD_FLAG is set,
15537 record it anyway if the args don't actually do tty input.
15538
15539 2002-11-22 Dave Love <fx@gnu.org>
15540
15541 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15542
15543 * keyboard.c (interrupt_signal): Provide forward declaration.
15544 (kbd_buffer_store_event): Don't declare interrupt_signal.
15545
15546 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15547
15548 2002-11-21 Richard M. Stallman <rms@gnu.org>
15549
15550 * eval.c (interactive_p): Skip any number of bytecode
15551 and special form frames, in any order.
15552
15553 2002-11-20 Jason Rumney <jasonr@gnu.org>
15554
15555 * w32fns.c (convert_mono_to_color_image): New function.
15556 (xbm_load, xbm_load_image): Use it when foreground or background
15557 is explicitly set.
15558
15559 2002-11-19 Dave Love <fx@gnu.org>
15560
15561 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
15562
15563 2002-11-18 Jason Rumney <jasonr@gnu.org>
15564
15565 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
15566 (XPutPixel): Swap blue and red.
15567 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
15568 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
15569 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
15570 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
15571
15572 2002-11-18 Dave Love <fx@gnu.org>
15573
15574 * m/orion105.h (HAVE_ALLOCA): Don't define.
15575
15576 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
15577
15578 * m/intel386.h: Don't include alloca.h or define alloca.
15579
15580 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
15581 malloc, realloc, calloc.
15582
15583 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
15584 (bcmp): Don't define.
15585
15586 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
15587
15588 * m/amdahl.h: Don't define LIB_STANDARD.
15589
15590 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
15591
15592 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
15593
15594 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
15595 Don't include alloca.h.
15596
15597 * s/aix3-2.h (HAVE_FSYNC): Don't define.
15598
15599 * regex.c (_GNU_SOURCE): Don't define.
15600
15601 * process.c (_GNU_SOURCE): Don't define.
15602
15603 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
15604
15605 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
15606
15607 * s/sol2-8.h: Include sol2-6.h.
15608
15609 2002-11-18 Miles Bader <miles@gnu.org>
15610
15611 * dispextern.h (struct face): Add `overstrike' field.
15612 * xterm.c (x_draw_glyph_string_foreground)
15613 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15614 * xfaces.c (load_face_font): Set `face->overstrike' based on
15615 result from choose_face_font.
15616 (best_matching_font, choose_face_font): Add `needs_overstrike'
15617 argument, and use it to return whether overstriking is desirable
15618 for this face/font combo.
15619 (set_font_frame_param: Pass new argument to choose_face_font.
15620
15621 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15622
15623 This change is my fix for the following entry in etc/PROBLEMS:
15624 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15625 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15626
15627 * w32.c: Added wrapper functions around the win32 API functions
15628 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
15629 GetSidIdentifierAuthority. These wrapper functions serve two
15630 purposes:
15631 1. They ensure that the wrapped function can never be called
15632 when Emacs is running on an operating system on which they are
15633 not supported (Microsoft Windows 95 / 98 / ME).
15634 2. They call the wrapped functions via function pointers rather
15635 than calling them directly. This avoids taking advantage of the
15636 undocumented fact that although these functions are not supported
15637 in the 9x branch of Microsoft Windows, the functions do exist in
15638 the version of advapi32.dll that is found in the 9x branch of
15639 Microsoft Windows.
15640
15641 * w32.c (init_user_info): Replace the calls to the win32 API
15642 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
15643 and GetSidIdentifierAuthority with calls to the newly added
15644 wrapper functions.
15645
15646 * w32.h: Added extern declarations for the following functions:
15647 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
15648 syms_of_w32menu, and void syms_of_fontset.
15649
15650 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
15651 function pointer track_mouse_event_fn in the handler for the
15652 WM_SETFOCUS message.
15653
15654 * w32menu.c (initialize_frame_menubar): Add code to
15655 reinitialize the function pointers set_menu_item_info and
15656 get_menu_item_info.
15657
15658 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15659
15660 * sound.c: Added a partial implementation of play-sound-internal
15661 for Microsoft Windows. Added various #ifdef / #else / #endif
15662 code blocks to separate the code that will compile under
15663 Microsoft Windows from the code that is specific to GNU/Linux.
15664 Moved several blocks of code around to make this separation of code
15665 into Windows compatible and GNU/Linux compatible code blocks easier.
15666
15667 * makefile.w32-in: Include sound.c and link with WinMM.lib.
15668
15669 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
15670 added support for play-sound-internal under Windows would be
15671 included in the build of Emacs.
15672
15673 2002-11-16 Jason Rumney <jasonr@gnu.org>
15674
15675 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
15676
15677 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
15678
15679 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
15680
15681 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
15682 (adjust_point_for_property): Move out of display and invisible even if
15683 we were already inside before (in case a property was added while
15684 we weren't looking). Be more careful when handling invisible props.
15685 Skip invisible text as if it really wasn't there at all.
15686
15687 2002-11-15 Jason Rumney <jasonr@gnu.org>
15688
15689 * w32term.c (x_draw_image_foreground)
15690 (w32_draw_image_foreground_1): Use standard copy and invert
15691 operations to draw images.
15692
15693 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
15694 depth of 1.
15695 (xbm_read_bitmap_data): Invert bits as xbm is read in.
15696 (XPutPixel): Don't invert bits here.
15697
15698 2002-11-15 Jason Rumney <jasonr@gnu.org>
15699
15700 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
15701 (w32_draw_image_foreground_1): Handle image masks.
15702 (x_draw_image_glyph_string): Don't BitBlt transparently.
15703
15704 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
15705 (x_from_xcolors): Adjust RGB values for W32.
15706 (image_background, image_background_transparent)
15707 (postprocess_image, x_to_xcolors, x_disable_image)
15708 (x_build_heuristic_mask): Adapt for W32 and enable.
15709 (x_create_x_image_and_pixmap): Mark images with palettes as such.
15710 (xbm_load): Remove unused variable.
15711
15712 2002-11-14 Richard M. Stallman <rms@gnu.org>
15713
15714 * buffer.c (syms_of_buffer): Doc fix.
15715
15716 2002-11-14 Dave Love <fx@gnu.org>
15717
15718 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
15719
15720 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
15721 * xmenu.c (unuse_menu_items, digest_single_submenu):
15722 * xfns.c (x_put_x_image):
15723 * xdisp.c (message2_nolog, set_message):
15724 * undo.c (record_point):
15725 * terminfo.c (tparam):
15726 * syntax.c (scan_sexps_forward):
15727 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15728 * composite.c (update_compositions):
15729 * cm.c (calccost, cmgoto):
15730 * charset.c (c_string_width): Declare all args (per C99).
15731
15732 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
15733
15734 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
15735 Don't declare.
15736
15737 * emacs.c (main) [!VMS]: Avoid third arg.
15738
15739 * fns.c (Fcopy_sequence): Doc fix.
15740 (Fmap_char_table): Cast `call2'.
15741
15742 2002-11-14 Francesco Potorti` <pot@gnu.org>
15743
15744 * s/sol2-8.h: New file.
15745
15746 2002-11-14 Kim F. Storm <storm@cua.dk>
15747
15748 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
15749 dependency on `risky-local-variable' and the :propertize form.
15750
15751 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
15752
15753 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
15754
15755 * syntax.c (scan_sexps_forward): Undo last patch.
15756 Use a more obvious fix: check eob before updating the syntax table.
15757
15758 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
15759
15760 * syntax.c (scan_sexps_forward): Update syntax table before reading
15761 a char rather than after so we don't update the table past eob.
15762
15763 2002-11-09 Dave Love <fx@gnu.org>
15764
15765 * buffer.c (Fset_buffer_major_mode): Fix last change.
15766
15767 * regex.c (regexec): Fix pmatch declaration.
15768
15769 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
15770
15771 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
15772 to self-inserting characters.
15773 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
15774
15775 * coding.c (Vtranslation_table_for_input): New.
15776 (syms_of_coding): DEFVAR it.
15777
15778 2002-11-08 Juanma Barranquero <lektu@terra.es>
15779
15780 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
15781 window.
15782
15783 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15784
15785 * process.c (Fformat_network_address): Remove unused locals p,
15786 cp, and i.
15787
15788 2002-11-06 Dave Love <fx@gnu.org>
15789
15790 * buffer.c (Qset_buffer_major_mode_hook): New.
15791 (Fset_buffer_major_mode): Use it.
15792
15793 2002-11-06 Richard M. Stallman <rms@gnu.org>
15794
15795 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
15796 and stop_polling.
15797
15798 * process.c (wait_reading_process_input):
15799 Test POLLING_PROBLEM_IN_SELECT, not hpux.
15800 Avoid initialization for auto Lisp_Object var.
15801
15802 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
15803
15804 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
15805
15806 2002-11-05 Richard M. Stallman <rms@gnu.org>
15807
15808 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
15809
15810 * callint.c (Fcall_interactively): New local filter_specs.
15811 (Fcall_interactively): Check for progn as well as let.
15812 Add a gcpro.
15813 (Qprogn): New variable.
15814 (syms_of_callint): Staticpro and init Qprogn.
15815
15816 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
15817
15818 * lread.c (Feval_buffer): Doc fix.
15819
15820 2002-11-04 Dave Love <fx@gnu.org>
15821
15822 * keyboard.c (read_char): Always translate iff
15823 Vkeyboard_translate_table is a char table and c is valid.
15824
15825 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15826 and fix C types.
15827
15828 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
15829
15830 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
15831
15832 * editfns.c (get_pos_property): Don't hardcode Qfield.
15833
15834 * keyboard.c (adjust_point_for_property): Handle `display' prop on
15835 overlays. Also handle `invisible' prop.
15836
15837 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
15838
15839 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
15840 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
15841
15842 2002-11-01 Andreas Schwab <schwab@suse.de>
15843
15844 * editfns.c (Fmessage): Revert last change to properly handle %%.
15845
15846 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
15847
15848 * xmenu.c (unuse_menu_items): New fun.
15849 (menu_items_inuse): New var.
15850 (syms_of_xmenu): Initialize it.
15851 (init_menu_items): Use it to detect re-entrance.
15852 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
15853 (Fx_popup_menu): Remove spurious XSETFRAME.
15854
15855 * editfns.c (find_field): Make an exception for nil fields.
15856
15857 2002-11-01 Dave Love <fx@gnu.org>
15858
15859 * m/gec63.h: Deleted.
15860
15861 2002-10-31 Dave Love <fx@gnu.org>
15862
15863 * xterm.c (XTread_socket): Fix last change.
15864 (xaw_scroll_callback): Cast call_data to long to avoid warning.
15865
15866 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
15867
15868 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
15869
15870 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
15871
15872 * editfns.c (overlays_around, get_pos_property): New funs.
15873 (find_field): Use them.
15874 Also be careful not to modify POS before its last use.
15875 (Fmessage): Don't Fformat if there's nothing to format.
15876
15877 2002-10-30 Dave Love <fx@gnu.org>
15878
15879 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
15880 [HAVE_PTY_H]; Include pty.h.
15881
15882 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
15883
15884 * xterm.c (Qeql): Declare.
15885 (Vx_keysym_table): New.
15886 (syms_of_xterm): Initialize it.
15887 (XTread_socket): Use it. Deal with ASCII keysyms.
15888 (XSetIMValues) [HAVE_X11R6]: Prototype.
15889
15890 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
15891 (lispy_kana_keys): Comment out.
15892 (make_lispy_event) [XK_kana_A]: Comment out.
15893 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
15894 Fix sprintf call.
15895
15896 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
15897 regexp.h change).
15898 (TERMINFO, LIBS_TERMCAP): Define.
15899
15900 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
15901 (bcmp): Define conditional on HAVE_BCMP.
15902 (NO_SIOCTL_H): Don't define.
15903 (TIOCSIGSEND): Don't make conditional on IRIX6.
15904
15905 * s/sol2-5.h: Don't include strings.h.
15906 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
15907
15908 * s/irix6-0.h (IRIX6): Don't define.
15909 (bcopy, bcmp, bzero): Don't undef.
15910
15911 * s/irix6-5.h: Don't include strings.h.
15912 (IRIX6): Don't define.
15913 (bcopy, bcmp, bzero): Don't undef.
15914
15915 * syntax.c (Fforward_comment): Doc fix.
15916
15917 2002-10-29 Kim F. Storm <storm@cua.dk>
15918
15919 * process.c (Fsignal_process): Allow PROCESS to be specified by
15920 name in addition to pid (as integer or string).
15921
15922 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
15923
15924 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
15925 environments.
15926
15927 2002-10-27 Kim F. Storm <storm@cua.dk>
15928
15929 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15930
15931 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
15932
15933 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
15934
15935 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15936
15937 2002-10-26 Richard M. Stallman <rms@gnu.org>
15938
15939 * editfns.c (Fformat): Detect invalid format letters for floats.
15940
15941 2002-10-25 Kenichi Handa <handa@m17n.org>
15942
15943 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
15944 (x_set_title): Likewise.
15945
15946 2002-10-25 Juanma Barranquero <lektu@terra.es>
15947
15948 * macgui.h:
15949 * w32gui.h: Remove definition of XColor.
15950
15951 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
15952
15953 2002-10-24 Kim F. Storm <storm@cua.dk>
15954
15955 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
15956 Callers changed (supply dummy arg).
15957
15958 * lisp.h (get_window_cursor_type): Update prototype.
15959
15960 * w32term.c (x_display_and_set_cursor): Get active_cursor from
15961 get_window_cursor_type to track system caret.
15962
15963 2002-10-24 Kim F. Storm <storm@cua.dk>
15964
15965 * process.c (Fformat_network_address): New function.
15966 (syms_of_process): Defsubr it.
15967 (list_processes_1): Use it to format :local/:remote address if
15968 service/host is not set; before Emacs would crash in that case.
15969 (Fmake_network_process): Don't use Ffind_operation_coding_system
15970 to setup coding system if host or service is not set.
15971
15972 2002-10-23 Juanma Barranquero <lektu@terra.es>
15973
15974 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
15975
15976 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
15977 COLORREF.
15978
15979 * macgui.h:
15980 * w32gui.h: Add definition of XColor.
15981
15982 * macfns.c:
15983 * w32fns.c:
15984 * xfaces.c: Remove definition of XColor.
15985
15986 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
15987
15988 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
15989
15990 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
15991 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
15992 window if it is dedicated.
15993 (Fshrink_window): Add preserve_before as was done for enlarge_window.
15994 (Vspecial_display_function): Update docstring.
15995
15996 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
15997 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
15998 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
15999
16000 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
16001
16002 * casefiddle.c (casify_region): Don't treat a prefix char as part
16003 of a word when at the beginning.
16004
16005 2002-10-17 Juanma Barranquero <lektu@terra.es>
16006
16007 * lread.c (syms_of_lread): Fix typos.
16008
16009 2002-10-17 Dave Love <fx@gnu.org>
16010
16011 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
16012
16013 2002-10-16 Richard M. Stallman <rms@gnu.org>
16014
16015 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
16016
16017 2002-10-14 Juanma Barranquero <lektu@terra.es>
16018
16019 * w16select.c (syms_of_win16select): Fix docstring for
16020 `selection-coding-system'.
16021
16022 * w32select.c (syms_of_w32select): Likewise.
16023
16024 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
16025
16026 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
16027 a backslash-quoted char.
16028 (scan_lists, scan_sexps_forward): Pacify the compiler.
16029
16030 2002-10-13 Richard M. Stallman <rms@gnu.org>
16031
16032 * window.c (window_scroll): Set immediate_quit.
16033
16034 * print.c (print): When backquote form is the car of a list,
16035 output in old style. Use old_backquote_output to output all
16036 comma forms inside it in old style too.
16037
16038 * buffer.h (struct buffer): Move `undo_list' down below `name'.
16039
16040 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
16041
16042 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
16043 batch mode).
16044
16045 * lread.c (Fload): Doc fix (load-suffixes).
16046
16047 2002-10-10 Steven Tamm <steventamm@mac.com>
16048
16049 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
16050 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
16051 Also switch the default to Qnil from Qt.
16052
16053 2002-10-08 Kenichi Handa <handa@m17n.org>
16054
16055 * coding.c (code_convert_region): When we need more GAP for
16056 conversion, pay attention to the case that coding->produced is not
16057 greater than coding->consumed.
16058
16059 2002-10-07 Richard M. Stallman <rms@gnu.org>
16060
16061 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
16062
16063 2002-10-06 Andrew Choi <akochoi@shaw.ca>
16064
16065 * macmenu.c (mac_menu_show): Add j to count menu items; match
16066 menu_item_selection to it to find selected item.
16067
16068 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16069
16070 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
16071 cases. The correct fix is to pass ReparentNotify to Xt.
16072 The shell widget interprets ConfigureNotify differently depending
16073 on if it has been reparented or not.
16074
16075 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
16076
16077 * editfns.c (Fformat_time_string): Doc fix.
16078
16079 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
16080
16081 * fns.c (Flength): Doc fix.
16082
16083 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
16084
16085 * keyboard.c (keyremap): New struct.
16086 (read_key_sequence): Use it: globally replace keytran_foo with
16087 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
16088 keytran_next and fkey_next to just `next'.
16089
16090 2002-10-04 Steven Tamm <steventamm@mac.com>
16091
16092 * macterm.c (keycode_to_xkeysym_table): Change return to be
16093 treated like an X keysym.
16094
16095 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16096
16097 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
16098 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
16099 This is to also handle x/y changes that occur because of a resize.
16100
16101 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
16102
16103 * frame.c (Vdelete_frame_functions): New variable.
16104 (syms_of_frame): Initialize and defvar it.
16105 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
16106 it when frame's `tooltip' parameter is non-nil.
16107
16108 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
16109
16110 * w32fns.c (x_create_tip_frame): Likewise.
16111
16112 * macfns.c (x_create_tip_frame): Likewise.
16113
16114 2002-09-30 Kenichi Handa <handa@m17n.org>
16115
16116 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
16117 -1 before calling ccl_driver.
16118
16119 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
16120 Only when it is non-nil, handle composition sequence.
16121 (setup_coding_system) <0>: Don't force composition handling.
16122
16123 * Makefile.in (lisp, shortlisp): Add utf-16.elc
16124
16125 2002-09-29 Richard M. Stallman <rms@gnu.org>
16126
16127 * search.c (Freplace_match): Adjust match data for the substitution
16128 just made in the buffer.
16129
16130 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
16131 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
16132
16133 2002-09-27 Richard M. Stallman <rms@gnu.org>
16134
16135 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
16136 (read_char): Use them. Do all exits thru the end of the function.
16137
16138 2002-09-27 Kenichi Handa <handa@etl.go.jp>
16139
16140 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
16141 is nil.
16142
16143 2002-09-26 Richard M. Stallman <rms@gnu.org>
16144
16145 * regex.h (__restrict_arr): Don't define if already defined.
16146
16147 * coding.c (run_pre_post_conversion_on_str):
16148 Save and restore Vdeactivate_mark.
16149
16150 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
16151
16152 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
16153
16154 2002-09-26 Kenichi Handa <handa@etl.go.jp>
16155
16156 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
16157 nonzero, try face's family at first. Otherwise try FAMILY at first.
16158 (choose_face_font): If C is a single byte char or latin-1, call
16159 try_font_list with PREFER_FACE_FAMILY 1.
16160
16161 2002-09-21 Richard M. Stallman <rms@gnu.org>
16162
16163 * window.c (select_window_1): Don't select frame.
16164 Set frame's selected window only when frame itself is selected.
16165 (Fselect_window): Doc fix.
16166
16167 2002-09-18 Kim F. Storm <storm@cua.dk>
16168
16169 * process.c (make-network-process): Doc fix (there is no
16170 network-server-log-function hook).
16171
16172 2002-09-18 Richard M. Stallman <rms@gnu.org>
16173
16174 * print.c (print): Clear out the unused parts of Vprint_number_table.
16175 (syms_of_print): Doc fix for `print-number-table'.
16176
16177 * unexelf.c (unexec): Undo previous change.
16178
16179 2002-09-17 Andreas Schwab <schwab@suse.de>
16180
16181 * m/alpha.h [LINUX]: Don't define DATA_START.
16182
16183 2002-09-16 Dave Love <fx@gnu.org>
16184
16185 * unexelf.c (unexec): Deal with .got, reinstating change from
16186 25-08-1999.
16187
16188 2002-09-13 Richard M. Stallman <rms@gnu.org>
16189
16190 * s/sol2-6.h (UNEXEC): Comment out definition.
16191
16192 * unexsol.c (unexec): Don't downcase first letter of error msg.
16193
16194 * xfaces.c (Fcolor_supported_p): Just one arg is required.
16195
16196 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
16197
16198 * unexsol.c: Include buffer.h, charset.h, coding.h.
16199
16200 2002-09-11 Richard M. Stallman <rms@gnu.org>
16201
16202 * unexsol.c: Don't use report_file_error; do it by hand
16203 using dlerror.
16204
16205 * process.c (wait_reading_process_input, both versions):
16206 Before calling turn_on_atimers, call stop_polling.
16207
16208 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
16209
16210 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
16211 we go to too_near_end, call clear_glyph_matrix.
16212 (redisplay_window): After make_cursor_line_fully_visible,
16213 call clear_glyph_matrix and bypass `goto done'.
16214
16215 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
16216 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
16217
16218 2002-09-10 Richard M. Stallman <rms@gnu.org>
16219
16220 * fileio.c (Fdo_auto_save): Catch error making directory.
16221 Only call push_message if we need to.
16222 At the same time, make an unwind-protect to pop it.
16223 Rename local message_p to old_message_p.
16224 (do_auto_save_make_dir, do_auto_save_eh): New functions.
16225 (do_auto_save_unwind): Don't call pop_message.
16226
16227 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
16228
16229 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
16230
16231 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
16232
16233 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
16234
16235 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
16236
16237 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
16238 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
16239 (re_match_2_internal): Be more careful with infinite loops.
16240
16241 2002-09-10 Kim F. Storm <storm@cua.dk>
16242
16243 * macros.c (end_kbd_macro): New function.
16244 (Fend_kbd_macro): Use it.
16245
16246 * macros.h (end_kbd_macro): Declare extern.
16247
16248 * keyboard.c (Fdiscard_input): If defining keyboard macro,
16249 end and save it instead of discarding it.
16250
16251 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
16252
16253 * s/sol2-6.h: Fix typo. Add comment.
16254
16255 2002-09-09 Richard M. Stallman <rms@gnu.org>
16256
16257 * regex.c (regnum_t): Use signed int, not unsigned int.
16258
16259 * s/sol2-6.h: New file.
16260
16261 * s/sol2-5.h (UNEXEC): Definition deleted.
16262
16263 2002-09-08 Kim F. Storm <storm@cua.dk>
16264
16265 * macros.c (executing_macro_index): Change type to EMACS_INT.
16266 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
16267
16268 * macros.h (executing_macro_index): Change type to EMACS_INT.
16269
16270 2002-09-06 Richard M. Stallman <rms@gnu.org>
16271
16272 * casetab.c (set_case_table): Make canon table point to eqv table.
16273
16274 2002-09-06 Juanma Barranquero <lektu@terra.es>
16275
16276 * coding.c (syms_of_coding): Fix spacing.
16277
16278 * composite.c (Fcompose_region_internal)
16279 (Fcompose_string_internal): Likewise.
16280
16281 * data.c (Flsh): Likewise.
16282
16283 * fontset.c (Fset_fontset_font): Likewise.
16284
16285 * macfns.c (Fx_server_max_request_size): Likewise.
16286
16287 * w16select.c (syms_of_win16select): Likewise.
16288
16289 * w32select.c (syms_of_w32select): Likewise.
16290
16291 * xselect.c (syms_of_xselect): Likewise.
16292
16293 2002-09-05 Richard M. Stallman <rms@gnu.org>
16294
16295 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
16296 call EXTEND_RANGE_TABLE and return a proper value.
16297 (set_image_of_range): Don't call set_image_of_range_1
16298 if no TRANSLATE or if range includes all of Latin-1.
16299 Only call it for the Latin-1 part of the range.
16300 For other cases, make two separate ranges,
16301 one for the original specified characters and one for
16302 their case-conversions.
16303
16304 2002-09-04 Richard M. Stallman <rms@gnu.org>
16305
16306 * s/sol2-5.h (UNEXEC): Use unexsol.o.
16307
16308 * window.c (displayed_window_lines): Correct for one-off bug
16309 in HEIGHT on non-window displays.
16310
16311 * regex.c (set_image_of_range_1): New function.
16312 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
16313 Return a value to indicate running out of memory.
16314 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
16315 (extend_range_table_work_area): New subroutine.
16316 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
16317 Different calling conventions, and used from set_image_of_range{,_1}.
16318 (IMMEDIATE_QUIT_CHECK): Definitions moved.
16319
16320 2002-09-04 Juanma Barranquero <lektu@terra.es>
16321
16322 * makefile.w32-in: All dependencies updated.
16323
16324 2002-09-01 Richard M. Stallman <rms@gnu.org>
16325
16326 * unexsol.c: New file.
16327
16328 * xfns.c (Qbox): Declare external, don't define.
16329
16330 * xdisp.c (redisplay_window) <force-start case>:
16331 If point is on semi-visible last line, reposition
16332 it at previous line.
16333
16334 * alloc.c (display_malloc_warning): Use display-warning.
16335 (malloc_warning_1): Function deleted.
16336
16337 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
16338
16339 * lread.c (read1): Handle #! by skipping the line.
16340
16341 2002-08-31 Richard M. Stallman <rms@gnu.org>
16342
16343 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
16344 Don't include LDFLAGS.
16345 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
16346
16347 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
16348
16349 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
16350 member of x_display_info unless we compile for some window system.
16351
16352 2002-08-31 Kim F. Storm <storm@cua.dk>
16353
16354 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
16355 (get_window_cursor_type): Don't use them.
16356 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
16357
16358 2002-08-30 Kenichi Handa <handa@etl.go.jp>
16359
16360 * xdisp.c (get_next_display_element): Fix previous change.
16361
16362 2002-08-30 Andrew Choi <akochoi@shaw.ca>
16363
16364 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
16365 (expose_window): Use it to fix the display of overlapping
16366 rows (merge code from xterm.c).
16367
16368 * macfns.c (Qbox): Add extern declaration.
16369
16370 2002-08-30 Juanma Barranquero <lektu@terra.es>
16371
16372 * w32fns.c (Qbox): Make extern.
16373 (syms_of_w32fns): Remove initialization of Qbox.
16374
16375 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
16376
16377 * xfns.c (Fx_open_connection): Fix error message.
16378
16379 2002-08-30 Kim F. Storm <storm@cua.dk>
16380
16381 The following changes consolidates the handling of the cursor
16382 type in xdisp.c, moving duplicate code and functionality from
16383 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
16384
16385 * frame.h (enum text_cursor_kinds): Consolidated here.
16386 Added DEFAULT_CURSOR value.
16387 (struct frame) <desired_cursor, cursor_width>
16388 <blink_off_cursor, blink_off_cursor_width>: New fields.
16389 Consolidated from output_x, output_w32 and output_mac structs.
16390 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16391 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
16392
16393 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
16394 Variables consolidated here.
16395 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
16396 (Vcursor_in_non_selected_windows): Renamed from
16397 cursor_in_non_selected_windows and changed to Lisp_Object.
16398 (syms_of_xdisp): Define and staticpro new and moved variables.
16399 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
16400 consolidated here. Recognize Qhollow setting.
16401 (set_frame_cursor_types): New function to set frame cursor types
16402 based on the frame parameters.
16403 (get_window_cursor_type): New function to calculate new cursor
16404 type and width for the specified window. Based on duplicated
16405 code consolidated here.
16406 Enhancements: cursor-in-non-selected-windows may be a cursor type,
16407 check buffer-local alternate-cursor-type and blink-cursor-alist
16408 before using built-in blink off methods.
16409
16410 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
16411
16412 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
16413 (get_specified_cursor_type, get_window_cursor_type)
16414 (set_frame_cursor_types): Added prototypes.
16415
16416 * macfns.c (x_specified_cursor_type): Removed.
16417 (x_set_cursor_type): Use set_frame_cursor_types.
16418 (Qbar, Qbox): Removed.
16419 (syms_of_macfns): Don't intern or staticpro them.
16420
16421 * macterm.c (x_specified_cursor_type): Remove prototype.
16422 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16423 (x_display_and_set_cursor): Use get_window_cursor_type.
16424 Remove unused local variables cursor_non_selected, active_cursor.
16425 Redraw cursor if hbar cursor width changes.
16426 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
16427
16428 * macterm.h (enum text_cursor_kinds): Removed.
16429 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
16430 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16431 (FRAME_DESIRED_CURSOR): Macro removed.
16432
16433 * w32fns.c (Vblink_cursor_alist): Removed.
16434 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16435 (syms_of_w32fns): Don't intern, staticpro, or define them.
16436 (x_specified_cursor_type): Removed.
16437 (x_set_cursor_type): Use set_frame_cursor_types.
16438
16439 * w32term.c (x_specified_cursor_type): Remove prototype.
16440 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16441 (x_display_and_set_cursor): Use get_window_cursor_type.
16442 Remove unused local variables cursor_off_state.
16443 Redraw cursor if hbar cursor width changes.
16444 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
16445
16446 * w32term.h (enum text_cursor_kinds): Removed.
16447 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
16448 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16449 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16450 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16451 (struct w32_display_info) <x_highlight_frame>: Renamed member from
16452 w32_highlight_frame.
16453
16454 * xfns.c (Vblink_cursor_alist): Removed.
16455 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16456 (syms_of_xfns): Don't intern, staticpro, or define them.
16457 (x_specified_cursor_type): Removed.
16458 (x_set_cursor_type): Use set_frame_cursor_types.
16459
16460 * xterm.c (x_specified_cursor_type): Remove prototype.
16461 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16462 (x_display_and_set_cursor): Use get_window_cursor_type.
16463 Remove unused local variables cursor_off_state.
16464 Redraw cursor if hbar cursor width changes.
16465
16466 * xterm.h (enum text_cursor_kinds): Removed.
16467 (struct output_x) <current_cursor, desired_cursor, cursor_width>
16468 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16469 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16470 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16471 (x_specified_cursor_type): Remove prototype.
16472
16473 2002-08-28 Richard M. Stallman <rms@gnu.org>
16474
16475 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16476 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16477 (Vblink_cursor_alist): New variable.
16478 (syms_of_w32fns): Initialize and defvar it.
16479 (x_specified_cursor_type): Recognize Qbox for filled box.
16480 Exceptions are hollow boxes.
16481 (Qbox, Qhollow): New variables.
16482 (syms_of_w32fns): Initialize and staticpro them.
16483
16484 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16485 New macros.
16486 (struct w32_output): New fields blink_off_cursor,
16487 blink_off_cursor_width.
16488 (FRAME_CURSOR_WIDTH): New macro.
16489
16490 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16491 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16492
16493 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16494 for bar cursor.
16495
16496 * w32term.c (expose_overlaps): New function.
16497 (expose_window): Use it to fix the display of overlapping rows.
16498
16499 2002-08-28 Simon Josefsson <jas@extundo.com>
16500
16501 * xfns.c (Fx_open_connection): Improve help when X connection
16502 fails, xhost is insecure and xauth is better.
16503
16504 2002-08-28 Juanma Barranquero <lektu@terra.es>
16505
16506 * makefile.w32-in: Add missing dependencies on w32term.h and
16507 composite.h.
16508
16509 * emacs.c (USAGE1): Add missing newline.
16510
16511 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16512
16513 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16514
16515 2002-08-27 Richard M. Stallman <rms@gnu.org>
16516
16517 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16518 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16519 (Vblink_cursor_alist): New variable.
16520 (syms_of_xfns): Initialize and defvar it.
16521 (x_specified_cursor_type): Recognize Qbox for filled box.
16522 Exceptions are hollow boxes.
16523 (Qbox, Qhollow): New variables.
16524 (syms_of_xfns): Initialize and staticpro them.
16525
16526 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16527 New macros.
16528 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16529
16530 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16531 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16532
16533 * emacs.c (main): Handle --script.
16534 (USAGE1): Mention --script.
16535 (standard_args): Define sort order for --script.
16536
16537 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16538
16539 * xdisp.c (redisplay_updating_p): Variable removed.
16540 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16541 New variables.
16542 (init_iterator): Don't free realized faces if
16543 inhibit_free_realized_faces is set.
16544 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16545 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16546 initialize Qinhibit_free_realized_faces.
16547
16548 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
16549 when iterator is adding glyphs to a glyph matrix.
16550
16551 2002-08-27 Kenichi Handa <handa@etl.go.jp>
16552
16553 * xdisp.c (get_next_display_element): In unibyte case, don't use
16554 octal form for such eight-bit characters that can be converted to
16555 multibyte char.
16556
16557 2002-08-26 Kim F. Storm <storm@cua.dk>
16558
16559 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
16560 foreground and background colors. From Joe Buehler.
16561
16562 2002-08-26 Miles Bader <miles@gnu.org>
16563
16564 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
16565
16566 2002-08-25 Andrew Choi <akochoi@shaw.ca>
16567
16568 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
16569 defined instead of MAC_OSX.
16570
16571 * s/darwin.h (select): Define select to sys_select only if
16572 HAVE_CARBON is defined.
16573 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
16574 (DONT_REOPEN_PTY): #def it.
16575
16576 * macterm.c (XTread_socket): Remove code to call
16577 SendEventToEventTarget for keys with command modifiers when
16578 mac_command_key_is_meta is nil.
16579
16580 2002-08-24 Andreas Schwab <schwab@suse.de>
16581
16582 * eval.c (Fdefvar): Fix last change.
16583
16584 2002-08-23 Richard M. Stallman <rms@gnu.org>
16585
16586 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
16587 Record variables in load history as (defvar . VAR).
16588 (Fdefvar): Don't record in load history if no initial value.
16589 (Qdefvar): New variable.
16590 (syms_of_eval): Init and staticpro it.
16591
16592 * lread.c (syms_of_lread): Doc fix.
16593 (build_load_history): Use Fmember to see if a definition
16594 is already in the Vload_history element.
16595
16596 * process.c (Fstart_process): Remove /: from program name.
16597
16598 * emacs.c (decode_env_path): Don't add /: if file name handler
16599 has a `safe-magic' property.
16600
16601 * callproc.c (Fcall_process): Remove /: from program name.
16602
16603 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
16604
16605 * regex.c (PATFETCH): Remove the translating fetch.
16606 (PATFETCH_RAW): Rename to PATFETCH.
16607 (set_image_of_range): New fun.
16608 (SET_RANGE_TABLE_WORK_AREA): Use it.
16609 (regex_compile): Don't translate the pattern chars so eagerly.
16610 Only do it when inserting an `exactn' bytecode or when handling
16611 a char-range.
16612 (mutually_exclusive_p): Avoid empty statement.
16613
16614 2002-08-22 Kim F. Storm <storm@cua.dk>
16615
16616 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
16617 end up on a partially visible line; this reverts a specific part
16618 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
16619 display error which has been reported several times now.
16620 However it introduces the problem that changes was supposed to fix.
16621 See my comments in the source if you want to debug this further.
16622
16623 2002-08-20 Kenichi Handa <handa@etl.go.jp>
16624
16625 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16626
16627 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
16628
16629 * msdos.c (croak): Add `void' to definition.
16630
16631 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
16632 Don't define them, they are defined in msdos.c.
16633
16634 * mem-limits.h [MSDOS]: Declare etext.
16635
16636 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
16637 `const' since CORRECT_DIR_SEPS modifies its target.
16638
16639 2002-08-19 Kim F. Storm <storm@cua.dk>
16640
16641 * keyboard.c (Fclear_this_command_keys): Add optional arg
16642 KEEP-RECORD to avoid clearing lossage when we just want to clear
16643 the current key sequence (kmacro needs this).
16644
16645 2002-08-19 Kenichi Handa <handa@localhost>
16646
16647 * composite.c (run_composition_function): Call FUNC if it is fboundp.
16648
16649 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
16650 cons, return Qnil.
16651
16652 2002-08-17 Richard M. Stallman <rms@gnu.org>
16653
16654 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
16655
16656 * sysdep.c [!VMS]: Include sys/files.h.
16657
16658 * editfns.c (save_restriction_restore): Defend from unchained marker.
16659
16660 * buffer.c (overlays_at): Handle extending vec uniformly.
16661 (overlays_in): Handle extending vec from length 0 as in overlays_at.
16662
16663 2002-08-15 Andrew Choi <akochoi@shaw.ca>
16664
16665 * mac.c (init_mac_osx_environment): New function.
16666
16667 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
16668
16669 2002-08-14 Kim F. Storm <storm@cua.dk>
16670
16671 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
16672 executing macro before appending to it (when used from Lisp).
16673 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
16674 which is called prior to each iteration of macro (for kmacro.el).
16675 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
16676
16677 * lisp.h (Fexecute_kbd_macro): Update prototype.
16678
16679 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
16680
16681 2002-08-14 Kenichi Handa <handa@etl.go.jp>
16682
16683 * xselect.c (QUTF8_STRING): New variable.
16684 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
16685 (x_atom_to_symbol): Likewise.
16686 (x_get_local_selection): New argument local_request. If it is
16687 nonzero, call handler_fn with the second arg nil.
16688 (x_handle_selection_request): Call x_get_local_selection with
16689 local_request 0.
16690 (lisp_data_to_selection_data): Don't encode the string here.
16691 (Fx_get_selection_internal): Call x_get_local_selection with
16692 local_request 1.
16693 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
16694
16695 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
16696
16697 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
16698
16699 2002-08-13 Richard M. Stallman <rms@gnu.org>
16700
16701 * minibuf.c (Fminibufferp): New function.
16702 (syms_of_minibuf): Defsubr it.
16703 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
16704
16705 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
16706
16707 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
16708
16709 2002-08-12 Richard M. Stallman <rms@gnu.org>
16710
16711 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
16712 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
16713 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
16714 already.
16715
16716 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
16717
16718 2002-08-11 Andrew Choi <akochoi@shaw.ca>
16719
16720 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
16721 (Vmac_pass_command_to_system): New variable.
16722 (Vmac_pass_control_to_system): New variable.
16723 (do_mouse_moved): Check wp with is_emacs_window.
16724 (XTread_socket): Check window_ptr with is_emacs_window.
16725 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
16726 events back to Mac Toolbox for processing, depending on values of
16727 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
16728 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
16729 Vmac_pass_control_to_system.
16730
16731 2002-08-10 Kenichi Handa <handa@etl.go.jp>
16732
16733 * coding.c (unencodable_char_position): New function.
16734 (Funencodable_char_position): New function.
16735 (syms_of_coding): Defsubr Funencodable_char_position.
16736
16737 2002-08-10 Andrew Choi <akochoi@shaw.ca>
16738
16739 * mac.c (sys_select) [MAC_OSX]: New function.
16740
16741 * macterm.c (MakeMeTheFrontProcess): New function.
16742 (mac_initialize): Call MakeMeTheFrontProcess.
16743
16744 * s/darwin.h: Define select to sys_select.
16745
16746 2002-08-09 Richard M. Stallman <rms@gnu.org>
16747
16748 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
16749
16750 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
16751
16752 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
16753 end of the buffer.
16754
16755 2002-08-08 Ken Raeburn <raeburn@gnu.org>
16756
16757 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
16758
16759 * puresize.h (BASE_PURESIZE): Increase to 910000.
16760
16761 2002-08-08 Kenichi Handa <handa@etl.go.jp>
16762
16763 * coding.c (Ffind_operation_coding_system): For write-region, if
16764 VISIT is a filename, make it the target.
16765
16766 2002-08-07 Richard M. Stallman <rms@gnu.org>
16767
16768 * alloc.c (mark_object): Detect long lists for debugging.
16769 (mark_object_loop_halt): New variable.
16770
16771 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
16772
16773 * data.c (Fmake_variable_frame_local): Doc fix.
16774
16775 2002-08-01 David Ponce <david@dponce.com>
16776
16777 * w32menu.c (local_heap, local_alloc, local_free): New macros.
16778 (malloc_widget_value, free_widget_value)
16779 (w32_free_submenu_strings): Use them.
16780
16781 (push_submenu_start, push_submenu_end, push_left_right_boundary)
16782 (push_menu_pane, push_menu_item, single_keymap_panes)
16783 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
16784 (single_submenu, set_frame_menubar)
16785 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
16786
16787 (Fx_popup_menu): Don't show pop up menu until preceding one is
16788 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
16789
16790 * w32menu.c: Changes adapted from xmenu.c
16791 (set_frame_menubar): First parse all submenus,
16792 then make widget_value trees from them.
16793 Don't allocate any widget_value objects
16794 until we are done with the parsing.
16795 (parse_single_submenu): New function.
16796 (digest_single_submenu): New function.
16797 (single_submenu): Function deleted, replaced by those two.
16798
16799 2002-08-04 Andrew Choi <akochoi@shaw.ca>
16800
16801 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
16802 returns a valid window pointer before proceeding for keyDown and
16803 autoKey events.
16804
16805 2002-08-03 Andrew Choi <akochoi@shaw.ca>
16806
16807 * macterm.c (USE_CARBON_EVENTS): New macro.
16808 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
16809 (x_iconify_frame): Call CollapseWindow.
16810 (Vmac_reverse_ctrl_meta): New variable.
16811 (Vmac_wheel_button_is_mouse_2): New variable.
16812 (init_mac_drag_n_drop): New function.
16813 (mac_do_receive_drag): New function.
16814 (mac_handle_service_event): New function.
16815 (init_service_handler): New function.
16816 (mac_to_emacs_modifiers): New function.
16817 (mac_event_to_emacs_modifiers): New function.
16818 (mac_get_mouse_btn): New function.
16819 (mac_convert_event_ref): New function.
16820 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
16821 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
16822 mac_get_mouse_btn.
16823 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
16824
16825 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
16826 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
16827 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
16828 TOOL_BAR_EVENT for MAC_OS as well.
16829 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
16830 as for WINDOWS_NT.
16831 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
16832
16833 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
16834
16835 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
16836
16837 * xdisp.c (forward_to_next_line_start): Fix a condition that
16838 lead to a newline being skipped.
16839
16840 2002-08-02 Andrew Choi <akochoi@shaw.ca>
16841
16842 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
16843
16844 2002-08-01 Richard M. Stallman <rms@gnu.org>
16845
16846 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
16847
16848 2002-07-31 Andrew Choi <akochoi@shaw.ca>
16849
16850 * macfns.c: #undef init_process before #define-ing it.
16851
16852 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
16853 HAVE_CARBON is defined.
16854
16855 2002-07-31 Richard M. Stallman <rms@gnu.org>
16856
16857 * xmenu.c (set_frame_menubar): First parse all submenus,
16858 then make widget_value trees from them.
16859 Don't allocate any widget_value objects
16860 until we are done with the parsing.
16861 (parse_single_submenu): New function.
16862 (digest_single_submenu): New function.
16863 (single_submenu): Function deleted, replaced by those two.
16864
16865 2002-07-30 Juanma Barranquero <lektu@terra.es>
16866
16867 * w32proc.c (syms_of_ntproc): Fix docstring of
16868 `w32-get-true-file-attributes'.
16869
16870 2002-07-28 Richard M. Stallman <rms@gnu.org>
16871
16872 * s/hpux8.h (HPUX8): Define this before including hpux.h.
16873 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
16874
16875 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
16876
16877 * keyboard.c (make_lispy_event):
16878 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
16879 Explicitly clear up_modifier in event->modifiers.
16880
16881 2002-07-27 Richard M. Stallman <rms@gnu.org>
16882
16883 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
16884
16885 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16886 for bar cursor.
16887
16888 2002-07-26 Kenichi Handa <handa@etl.go.jp>
16889
16890 * coding.c (detect_coding_iso2022): While checking a byte sequence
16891 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
16892 it in the normal loop.
16893
16894 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
16895
16896 * xterm.c (expose_overlaps): New function.
16897 (expose_window): Use it to fix the display of overlapping rows.
16898
16899 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
16900
16901 2002-07-23 Ken Raeburn <raeburn@gnu.org>
16902
16903 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
16904 since it only depends on XUINT.
16905
16906 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
16907 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
16908 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
16909 Macros deleted.
16910
16911 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
16912 its value over other approaches.
16913 * sysdep.c (start_of_data): Don't define the function if a macro
16914 form has been defined.
16915
16916 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
16917
16918 * xdisp.c (redisplay_updating_p): New variable.
16919 (init_iterator): Don't free realized faces when
16920 redisplay_updating_p is set.
16921 (redisplay_internal): Set redisplay_updating_p while updating
16922 the display.
16923
16924 2002-07-23 Richard M. Stallman <rms@gnu.org>
16925
16926 * editfns.c (Fmessage): Treat "" like nil.
16927
16928 2002-07-23 Kenichi Handa <handa@etl.go.jp>
16929
16930 * xdisp.c (face_before_or_after_it_pos):
16931 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16932
16933 2002-07-22 Juanma Barranquero <lektu@terra.es>
16934
16935 * callproc.c (init_callproc) [DOS_NT]:
16936 Initialize Vshared_game_score_directory to nil.
16937 (syms_of_callproc) [DOS_NT]: Likewise.
16938
16939 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
16940
16941 * xdisp.c (display_line): Replace an abort with xassert.
16942
16943 2002-07-21 Richard M. Stallman <rms@gnu.org>
16944
16945 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
16946 and END_UNCHANGED when setting buffer_unchanged_p.
16947 Use current_matrix_up_to_date_p to decide whether to use
16948 try_cursor_movement.
16949
16950 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
16951
16952 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
16953
16954 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
16955 Set to nil if dir does not exist.
16956 (syms_of_callproc): Init unconditionally and simply.
16957
16958 * buffer.c (Fbuffer_list): Doc fix.
16959
16960 2002-07-21 Ken Raeburn <raeburn@gnu.org>
16961
16962 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
16963
16964 * buffer.c (mmap_realloc): When shrinking, make sure number of
16965 pages to unmap is rounded towards zero.
16966
16967 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
16968 (XSETINT): Deleted.
16969
16970 * m/att3b.h (XINT): Don't define.
16971 (VALBITS, VALMASK, XTYPE): Deleted.
16972 (DATA_SEG_BITS): Define.
16973 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
16974 ARRAY_MARK_FLAG): Deleted.
16975 (DATA_SEG_BITS): Define.
16976 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
16977 (DATA_SEG_BITS): Define.
16978
16979 2002-07-20 Richard M. Stallman <rms@gnu.org>
16980
16981 * print.c (print_error_message): New args CONTEXT and CALLER.
16982 Calls changed.
16983
16984 * lisp.h (print_error_message): Declare new args.
16985
16986 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
16987 and CONTEXT to print_error_message, don't print them here.
16988 For a Quit, don't use Vsignaling_function.
16989 Call message_log_maybe_newline.
16990
16991 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
16992
16993 2002-07-20 Kim F. Storm <storm@cua.dk>
16994
16995 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
16996
16997 2002-07-19 Ken Raeburn <raeburn@gnu.org>
16998
16999 * bytecode.c (struct byte_stack): Pointers into byte string now
17000 point to const.
17001 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
17002 const.
17003 * charset.h (BCOPY_SHORT): Source pointer now points to const.
17004 * coding.c (encode_eol, detect_coding, detect_eol):
17005 (decode_coding, encode_coding, detect_coding_system):
17006 Source strings now treated as const.
17007 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
17008 modify Lisp string contents.
17009 * coding.h (decode_coding, encode_coding, detect_coding,
17010 detect_eol): Declarations updated.
17011 * composite.c (compose_chars_in_text): Treat Lisp string contents
17012 as const.
17013 * dispnew.c (safe_bcopy): Source pointer now points to const.
17014 * lisp.h (STRING_COPYIN): New macro.
17015 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
17016 (internal_with_output_to_temp_buffer): Declarations updated.
17017 * print.c (temp_output_buffer_setup):
17018 (internal_with_output_to_temp_buffer): Buffer name argument is now
17019 pointer to const.
17020 * sound.c (struct sound_device): Function pointer field "write"
17021 buffer argument now points to const.
17022 (vox_write): Buffer argument points to const.
17023 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
17024 contents as const.
17025 * sysdep.c (emacs_write): Buffer pointer now const.
17026 * term.c (encode_terminal_code): Buffer pointer now const.
17027 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
17028 (x_face_list_fonts, x_update_menu_appearance):
17029 (hash_string_case_insensitive): Treat Lisp string contents as const.
17030
17031 2002-07-19 Juanma Barranquero <lektu@terra.es>
17032
17033 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
17034
17035 * fileio.c (syms_of_fileio): Likewise.
17036 (Ffile_name_as_directory): Fix argument name in docstring.
17037 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
17038
17039 2002-07-18 Richard M. Stallman <rms@gnu.org>
17040
17041 * data.c (Fdefalias): Doc fix.
17042
17043 2002-07-17 Dave Love <fx@gnu.org>
17044
17045 * intervals.h (text_property_stickiness): Use P_.
17046
17047 * ccl.c: Remove `emacs' conditionals.
17048 (ccl_backtrace_table): Fix size spec.
17049 (ccl_driver): Fix type errors.
17050
17051 2002-07-16 Ken Raeburn <raeburn@gnu.org>
17052
17053 * alloc.c (xstrdup, make_string, make_unibyte_string)
17054 (make_multibyte_string, build_string): String pointer args now
17055 point to const.
17056 * charset.c (find_charset_in_text, c_string_width):
17057 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
17058 * fileio.c (report_file_error):
17059 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
17060 (count_combining_before, count_combining_after, insert_1_both):
17061 (insert, insert_and_inherit, insert_string):
17062 (insert_before_markers, insert_before_markers_and_inherit):
17063 * lread.c (intern, oblookup, hash_string):
17064 * minibuf.c (temp_echo_area_glyphs):
17065 * search.c (fast_c_string_match_ignore_case):
17066 * sysdep.c (emacs_open, set_file_times):
17067 * xfaces.c (xstricmp):
17068 * xdisp.c (store_frame_title, string_char_and_length):
17069 (message_dolog, message2, message2_nolog, set_message): Likewise.
17070 (set_message_1): Cast message string argument to const pointer.
17071 * editfns.c (general_insert_function): Insertion function now
17072 takes pointer to const for input data.
17073 * charset.h (find_charset_in_text, c_string_width):
17074 (parse_str_as_multibyte): Declarations updated.
17075 * dispextern.h (xstricmp): Declaration updated.
17076 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
17077 (count_size_as_multibyte, count_combining_before):
17078 (count_combining_after, insert_1, insert_1_both, message_dolog):
17079 (insert, insert_and_inherit, insert_before_markers)
17080 (insert_before_markers_and_inherit, set_message, message2):
17081 (message2_dolog, build_string, make_string, make_unibyte_string):
17082 (make_multibyte_string, intern, oblookup, report_file_error):
17083 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
17084 (emacs_open, xstrdup): Declarations updated.
17085 * systime.h (set_file_times): Declaration updated.
17086
17087 * charset.c (find_charset_in_text, lisp_string_width): Use const
17088 for pointer to lisp string data.
17089 * charset.h (FETCH_STRING_CHAR_ADVANCE):
17090 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
17091 * coding.c (Ffind_coding_systems_region_interval):
17092 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
17093 (Fmake_directory_internal, Fdelete_directory):
17094 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
17095 * fontset.c (font_family_registry, fs_query_fontset):
17096 (list_fontsets):
17097 * frame.c (Fframe_parameter):
17098 * keyboard.c (cmd_error_internal):
17099 * keymap.c (Fdescribe_buffer_bindings):
17100 * lread.c (complete_filename_p, openp):
17101 * minibuf.c (Fminibuffer_complete_word):
17102 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
17103 (face_before_or_after_it_pos, next_element_from_string):
17104 (get_overlay_arrow_glyph_row, display_mode_element):
17105 (decode_mode_spec_coding):
17106 * xterm.c (same_x_server): Likewise.
17107
17108 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
17109 settings of non-existent fields.
17110
17111 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
17112 copy a lisp value.
17113
17114 * lread.c (Fintern_soft): Use string macros instead of
17115 Lisp_String fields.
17116 * keyboard.c (echo_char, parse_modifiers_uncached):
17117 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
17118 * textprop.c (validate_interval_range, interval_of): Likewise.
17119
17120 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
17121
17122 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17123 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
17124 XSTRING()->size_byte.
17125
17126 * lisp.h (SDATA, SREF): Produce rvalue.
17127 (SSET): New macro.
17128 * alloc.c (make_event_array): Use SSET for storing into a string.
17129 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
17130 a string.
17131 * casefiddle.c (casify_object): Use SSET.
17132 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17133 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
17134 address of string contents.
17135 * data.c (Faref): Use SDATA.
17136 (Faset): Use SDATA, SSET.
17137 * dired.c (directory_files_internal): Use SSET.
17138 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
17139 (Fread_file_name): Use SREF, SSET.
17140 * fns.c (concat): Use SSET.
17141 (concat, Fdelete): Use SDATA.
17142 * insdel.c (insert_from_string_1): Use SDATA.
17143 * keyboard.c (Fevent_convert_list): Use SREF.
17144 * lread.c (Fload): Use SDATA, SSET.
17145 * macfns.c (validate_x_resource_name): Use SSET.
17146 * process.c (status_message): Use SSET.
17147 * search.c (wordify): Use SDATA.
17148 (Freplace_match): Use SREF.
17149 * w32fns.c (validate_x_resource_name): Use SSET.
17150 * xfns.c (validate_x_resource_name): Use SSET.
17151 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
17152
17153 2002-07-16 Richard M. Stallman <rms@gnu.org>
17154
17155 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
17156
17157 * xdisp.c (reconsider_clip_changes):
17158 Don't test prevent_redisplay_optimizations_p.
17159 (redisplay_internal): Test prevent_redisplay_optimizations_p
17160 along with clip_changed in some cases.
17161 (try_window_id): Likewise.
17162 (redisplay_window): New local var buffer_unchanged_p.
17163
17164 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
17165
17166 * process.c (create_process): Test USG_SUBTTY_WORKS.
17167 (process_send_signal): Clean up handling of GID.
17168 Detect errors in ioctls meant to set GID.
17169
17170 * window.c (temp_output_buffer_show):
17171 Don't set prevent_redisplay_optimizations_p.
17172
17173 2002-07-15 Juanma Barranquero <lektu@terra.es>
17174
17175 * eval.c (Fdefvaralias): Add docstring argument.
17176
17177 2002-07-15 Ken Raeburn <raeburn@gnu.org>
17178
17179 * lisp.h (STRING_INTERVALS): Produce rvalue.
17180 (STRING_SET_INTERVALS): New macro.
17181 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
17182 * fns.c (Fstring_as_multibyte): Likewise.
17183 * intervals.c (balance_possible_root_interval, delete_interval)
17184 (create_root_interval, copy_intervals_to_string): Likewise.
17185 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
17186 instead of 0.
17187
17188 2002-07-14 Ken Raeburn <raeburn@gnu.org>
17189
17190 * lisp.h (STRING_SET_CHARS): New macro.
17191 (SCHARS, SBYTES): Produce rvalues.
17192 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
17193 * fns.c (concat): Likewise.
17194 * lread.c (read_vector): Likewise.
17195
17196 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
17197 (STRING_SET_UNIBYTE): New macro.
17198 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
17199 length of -1) changed to use STRING_SET_UNIBYTE.
17200 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
17201 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
17202 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
17203 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
17204 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
17205 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
17206 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
17207 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
17208 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
17209 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
17210 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
17211 STRING_BYTES or indirection changed to SCHARS, SBYTES,
17212 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
17213 unchanged for now.
17214
17215 2002-07-13 Kim F. Storm <storm@cua.dk>
17216
17217 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
17218
17219 2002-07-12 Richard M. Stallman <rms@gnu.org>
17220
17221 * fileio.c (Fwrite_region): Doc fix.
17222
17223 * print.c (print_error_message): Don't handle Vsignaling_function here.
17224
17225 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
17226 (command_loop_1): Avoid certain actions after memory-full error.
17227
17228 * eval.c (Fsignal): Don't call cancel_hourglass.
17229 For a memory-full error, don't call Vsignal_hook_function
17230 and don't set Vsignaling_function.
17231
17232 * process.c (process_send_signal): Add abort call.
17233
17234 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
17235
17236 * keymap.c (Fkey_binding): Fix typo.
17237
17238 2002-07-11 Richard M. Stallman <rms@gnu.org>
17239
17240 * alloc.c (Vmemory_full): New variable.
17241 (Vmemory_signal_data): Rename from memory_signal_data.
17242 Uses changed.
17243 (syms_of_alloc): Defvar them.
17244 (memory_full, buffer_memory_full): Set Vmemory_full.
17245
17246 * lisp.h (Vmemory_full): Add declaration.
17247 (current_column, indented_beyond_p): Change declaration.
17248
17249 * indent.c (last_known_column): Declare as double, not float.
17250 (current_column, current_column_1, string_display_width)
17251 (position_indentation): Return `double'.
17252 (indented_beyond_p): Arg `column' is `double'. Callers changed.
17253
17254 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
17255 (back_to_previous_visible_line_start)
17256 (reseat_at_next_visible_line_start, next_element_from_buffer):
17257 Use `double', not `float', when calling indented_beyond_p.
17258
17259 * s/hpux11.h (BROKEN_SA_RESTART): Define.
17260
17261 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
17262
17263 2002-07-11 Juanma Barranquero <lektu@terra.es>
17264
17265 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
17266 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
17267 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
17268 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
17269 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
17270 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
17271
17272 2002-07-10 Juanma Barranquero <lektu@terra.es>
17273
17274 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
17275 All callers changed.
17276
17277 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
17278
17279 * data.c (Fdefalias): Add an optional `docstring' argument.
17280 (set_internal, Fsetq_default): Use XCAR/XCDR.
17281
17282 * composite.c (HASH_VALUE, HASH_KEY):
17283 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
17284
17285 2002-07-09 Kenichi Handa <handa@etl.go.jp>
17286
17287 * callproc.c (Fcall_process): Fix previous change.
17288
17289 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
17290
17291 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
17292 Add support for hash-tables.
17293 (Ftry_completion): Return t even if the string appears multiple times.
17294
17295 * fns.c (Fnconc): Use XCDR.
17296 (Fprovide): Use CONSP and XCDR.
17297 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17298 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
17299 (Fmake_hash_table): Accept `:size nil'.
17300 (Fmakehash): Delete: moved to subr.el.
17301 (syms_of_fns): Don't defsubr makehash.
17302
17303 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17304 (HASH_TABLE_SIZE): Move from fns.c.
17305
17306 2002-07-07 Richard M. Stallman <rms@gnu.org>
17307
17308 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
17309 Instead just return 0 when there is something to be done.
17310 (try_scrolling): If make_cursor_line_fully_visible returns 0,
17311 retry scrolling as if cursor were off the bottom.
17312 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
17313 return CURSOR_MOVEMENT_MUST_SCROLL.
17314 (redisplay_window): If make_cursor_line_fully_visible returns 0,
17315 go to try_to_scroll.
17316
17317 * buffer.c (Fbuffer_local_value): Store current value into its binding
17318 so we get the up-to-date value for the binding that is loaded.
17319
17320 * eval.c (Fdefmacro): Doc fix.
17321
17322 2002-07-05 Dave Love <fx@gnu.org>
17323
17324 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
17325 correctly.
17326
17327 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
17328 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
17329 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
17330 CCL_LookupCharConstTbl.
17331 (syms_of_ccl): Defvar translation-hash-table-vector.
17332
17333 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17334
17335 * xdisp.c: Remove unused variable `face'.
17336
17337 2002-07-04 Juanma Barranquero <lektu@terra.es>
17338
17339 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
17340 obsolescence information.
17341
17342 2002-07-03 Andrew Choi <akochoi@shaw.ca>
17343
17344 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
17345 pattern. Search cache first.
17346 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
17347 for Japanese font.
17348 (XLoadQueryFont): Use it.
17349
17350 2002-07-02 Richard M. Stallman <rms@gnu.org>
17351
17352 * keymap.c (Fdefine_key): Doc fix.
17353
17354 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
17355
17356 2002-07-02 Juanma Barranquero <lektu@terra.es>
17357
17358 * keymap.c (syms_of_keymap): Fix typo.
17359
17360 2002-07-01 Andrew Choi <akochoi@shaw.ca>
17361
17362 * s/darwin.h: Define POSIX_SIGNALS.
17363
17364 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
17365 and FSRefMakePath to convert FSSpec returned with Apple Event to
17366 Posix pathname.
17367 (mac_initialize) [TARGET_API_MAC_CARBON]:
17368 Call init_required_apple_events and disable the `Quit' menu item
17369 provided automatically by the Carbon Toolbox.
17370
17371 2002-07-01 Dave Love <fx@gnu.org>
17372
17373 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
17374 for K&R.
17375
17376 * xterm.c: Fix prototype for K&R.
17377
17378 * term.c (costs_set): Declare static, non-initialized for pcc.
17379
17380 2002-07-01 Richard M. Stallman <rms@gnu.org>
17381
17382 * keyboard.c (timer_last_idleness_start_time): New variable.
17383 (timer_start_idle): Set that.
17384 (read_key_sequence): Use that to reset timer_idleness_start_time
17385 to previous value.
17386
17387 * window.c (Frecenter): With arg, set optional_new_start.
17388
17389 * xdisp.c (redisplay_internal): Make optional_new_start really work.
17390
17391 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
17392 buffer for completion.
17393
17394 2002-06-29 Ken Raeburn <raeburn@gnu.org>
17395
17396 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
17397
17398 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17399
17400 * keyboard.c (readable_filtered_events): New function that filters
17401 FOCUS_IN_EVENT depending on parameter.
17402 (readable_events): Calls readable_filtered_events, not filtering
17403 FOCUS_IN_EVENT.
17404 (get_filtered_input_pending): New function, filtering parameter passed
17405 to readable_filtered_events.
17406 (get_input_pending): Calls get_filtered_input_pending, not filtering
17407 FOCUS_IN_EVENT.
17408 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
17409 FOCUS_IN_EVENT.
17410
17411 * xterm.h (struct x_output): Add focus_state.
17412
17413 * xterm.c (x_focus_changed): New function.
17414 (x_detect_focus_change): New function.
17415 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
17416 EnterNotify and LeaveNotify to track X focus changes.
17417
17418 2002-06-28 Andreas Schwab <schwab@suse.de>
17419
17420 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
17421
17422 2002-06-27 Kim F. Storm <storm@cua.dk>
17423
17424 * xdisp.c (mode_line_string_list, mode_line_string_face)
17425 (mode_line_string_face_prop): New variables.
17426 (store_mode_line_string): New function.
17427 (display_mode_element): Use store_mode_line_string to
17428 add mode-line string elements to mode_line_string_list
17429 when mode_line_string_list is non-nil.
17430 (Fformat_mode_line): Now returns propertized string by
17431 default. New arg NO-PROPS to ignore properties.
17432 (decode_mode_spec): Only add two dashes for %- in propertized
17433 mode-line string.
17434 (syms_of_xdisp): Init and staticpro mode_line_string_list.
17435
17436 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
17437
17438 * minibuf.c (minibuffer_completion_contents): Add return type.
17439
17440 2002-06-27 Juanma Barranquero <lektu@terra.es>
17441
17442 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
17443
17444 2002-06-26 Juanma Barranquero <lektu@terra.es>
17445
17446 * fileio.c (read_file_name_cleanup): Add missing return.
17447
17448 2002-06-26 Richard M. Stallman <rms@gnu.org>
17449
17450 * window.c (Frecenter): Don't set force_start flag.
17451
17452 * minibuf.c (do_completion, Fminibuffer_complete_word)
17453 (Fminibuffer_completion_help): Complete just the text before point.
17454 (minibuffer_completion_contents): New function.
17455
17456 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
17457
17458 * frame.c (frames_bury_buffer): Function deleted.
17459
17460 2002-06-25 Miles Bader <miles@gnu.org>
17461
17462 * callint.c (Fcall_interactively): When checking to see if doprnt hit
17463 the end of callint_message, allow for a terminating '\0'.
17464
17465 2002-06-24 Juanma Barranquero <lektu@terra.es>
17466
17467 * w32select.c: Include composite.h.
17468
17469 * w16select.c: Likewise.
17470
17471 2002-06-24 Kenichi Handa <handa@etl.go.jp>
17472
17473 * callproc.c (Fcall_process): If code detection is necessary,
17474 call detect_coding directly here.
17475
17476 * coding.c (detect_eol): Preserve coding->cmp_data.
17477
17478 * w16select.c (Fw16_get_clipboard_data):
17479 * w32fns.c (w32_to_x_font):
17480 * w32select.c (Fw32_get_clipboard_data):
17481 * xselect.c (selection_data_to_lisp_data):
17482 * xterm.c (XTread_socket): Disable composition handling.
17483
17484 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
17485
17486 * print.c (temp_output_buffer_setup): Kill all local variables.
17487
17488 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17489
17490 * lread.c (Fread): Remove redundant and imprecise declaration.
17491
17492 * xfns.c (check_x_display_info): Use check_x_frame.
17493
17494 * .gdbinit (xprintsym): Use the new `xname' field.
17495 (xsymbol): Use it.
17496
17497 2002-06-22 Jason Rumney <jasonr@gnu.org>
17498
17499 * w32fns.c (file_dialog_callback): New function.
17500 (Fx_file_dialog): Allow selecting directories as well as files.
17501
17502 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17503
17504 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17505 OpenBSD. Add support for mipseb-*-netbsd* machines.
17506
17507 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17508
17509 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17510 black and white before scrolling. Restore frame background and
17511 foreground color after scrolling.
17512 (do_window_update): Call XClearWindow before calling expose_frame.
17513 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17514 FRAME_FOREGROUND_PIXEL of frame.
17515
17516 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17517 test Mac command key as <ALT> key.
17518
17519 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17520
17521 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17522
17523 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17524 Lookup keys in function-key-map immediately so that key-translation-map
17525 can be applied earlier.
17526 Remove function_key_possible and key_translation_possible, replaced
17527 by checking `keytran_start < t'.
17528
17529 * .gdbinit (xsymbol): Use the new `xname' field.
17530
17531 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17532
17533 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17534 test Mac command key as <ALT> key.
17535
17536 * mac.c (do_applescript): Call initialize_applescript if necessary
17537 when first called. Dispose of result_desc only when there is no error.
17538 (Fdo_applescript): Use %d format specifier instead of %ld.
17539
17540 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17541
17542 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17543 of FrontWindow for cases keyDown and autoKey.
17544
17545 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17546 Vdefault_fontset to Monaco with mac-roman coding.
17547
17548 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
17549 init_process before and after inclusion of Carbon/Carbon.h, resp.
17550
17551 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
17552 cursor_gc.
17553 (add_font_name_table_entry): New function.
17554 (init_font_name_table): Use add_font_name_table_entry; add italic,
17555 bold, and bold-italic entries for truetype fonts.
17556
17557 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
17558 for Mac too.
17559 (try_font_list) [MAC_OS]: If no font matches given registry, try
17560 fonts with any registry matching face_family.
17561 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
17562
17563 * s/darwin.h: If autoconf detects the Ncurses library, define
17564 LIBS_TERMCAP to -lncurses to use it.
17565
17566 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
17567
17568 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
17569
17570 2002-06-15 Richard M. Stallman <rms@gnu.org>
17571
17572 * window.c (Fset_window_configuration): Explicitly preserve
17573 the point value that new_current_buffer had at the start.
17574
17575 2002-06-14 Juanma Barranquero <lektu@terra.es>
17576
17577 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
17578 Fix typos.
17579
17580 2002-06-14 Kim F. Storm <storm@cua.dk>
17581
17582 * insdel.c (insert_1_both, insert_from_string_1)
17583 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
17584 insert happened in the end_unchanged region. Otherwise, the
17585 redisplay may be confused and duplicate the last line in the
17586 buffer [seen after save-buffer when require-final-newline==t].
17587
17588 2002-06-13 Jason Rumney <jasonr@gnu.org>
17589
17590 * w32.c (init_environment): Remove EMACSLOCKDIR.
17591 (stat): Swap _S_IFDIR and _S_IFREG.
17592
17593 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17594
17595 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
17596 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
17597 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
17598 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
17599 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
17600 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
17601 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
17602 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
17603 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
17604 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
17605 SELECTION_REQUEST_EVENT, selection_clear_event to
17606 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
17607 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
17608 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
17609 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
17610 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
17611 no_event to NO_EVENT.
17612
17613 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17614
17615 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
17616
17617 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
17618
17619 * intervals.c (textget): Don't forget to `return'.
17620 (lookup_char_property): Use XCAR/XCDR.
17621
17622 2002-06-12 Juanma Barranquero <lektu@terra.es>
17623
17624 * xdisp.c (Fformat_mode_line): Fix typo.
17625
17626 2002-06-12 Kim F. Storm <storm@cua.dk>
17627
17628 * xdisp.c (Fformat_mode_line): New function.
17629 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
17630 (store_frame_title_char, store_frame_title): Use unconditionally.
17631 (init_xdisp): Defsubr Fformat_mode_line.
17632 Initialize frame_title_buf etc. unconditionally.
17633
17634 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
17635
17636 * keyboard.c (read_key_sequence):
17637 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
17638 things through those maps after downcasing events.
17639 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
17640 applies after function-key-map.
17641 Make sure that keytran can be done in the middle in the sequence.
17642 Be careful not to throw away events past the one we downcase.
17643
17644 * lread.c (read_integer): Remove unused var `tem'.
17645 (read1): Fix int/Lisp_Object mixup.
17646
17647 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
17648
17649 2002-06-11 Richard M. Stallman <rms@gnu.org>
17650
17651 * keyboard.c (readable_events): Ignore any number of
17652 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
17653
17654 2002-06-09 Miles Bader <miles@gnu.org>
17655
17656 * xfaces.c (Ftty_supports_face_attributes_p): New function.
17657 (parse_rgb_list, tty_lookup_color): New functions.
17658 (tty_defined_color): Use `tty_lookup_color' to do all the work.
17659 (color_distance, Fcolor_distance): New functions.
17660 (TTY_SAME_COLOR_THRESHOLD): New macro.
17661 (Qtty_color_standard_values): New variable.
17662 (syms_of_xfaces): Initialize new vars & functions.
17663
17664 2002-06-08 Colin Walters <walters@verbum.org>
17665
17666 * textprop.c (Vchar_property_alias_alist): New variable.
17667 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
17668
17669 * intervals.c (lookup_char_property): New function for looking up
17670 overlay and text properties, created from textget.
17671 (textget): Use it.
17672
17673 * intervals.h (lookup_char_property): Declare.
17674 (Vchar_property_alias_alist): Declare.
17675
17676 * buffer.c (Foverlay_get): Use lookup_char_property.
17677
17678 2002-06-07 Sam Steingold <sds@gnu.org>
17679
17680 * xselect.c (lisp_data_to_selection_data): Fix last change:
17681 *data_ret is not a Lisp string, while unibyte_string is.
17682
17683 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
17684
17685 * xselect.c (lisp_data_to_selection_data): Fix last change:
17686 set size_ret.
17687
17688 2002-06-07 Andreas Schwab <schwab@suse.de>
17689
17690 * m/amdx86-64.h: New file.
17691
17692 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
17693
17694 * fns.c (Fstring_make_unibyte): Doc fix.
17695
17696 * xselect.c (lisp_data_to_selection_data): If the requested type
17697 is STRING, call string_make_unibyte to encode the selected text
17698 as a string.
17699
17700 * window.c (Fset_window_hscroll): Doc fix.
17701
17702 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17703
17704 * fileio.c (choose_write_coding_system):
17705 Call select-safe-coding-system properly.
17706
17707 2002-06-03 Richard M. Stallman <rms@gnu.org>
17708
17709 * xdisp.c (message_with_string): Error if STRING is not a string.
17710
17711 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
17712
17713 * fileio.c (choose_write_coding_system): Pass FILE arg to
17714 Vselect_safe_coding_system_function.
17715
17716 2002-06-03 Ken Raeburn <raeburn@gnu.org>
17717
17718 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
17719
17720 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
17721
17722 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
17723 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
17724 * keymap.c (describe_command): Likewise.
17725 * minibuf.c (read_minibuf): Likewise.
17726
17727 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
17728 Cast `current_column' return value to int.
17729 (back_to_previous_visible_line_start)
17730 (reseat_at_next_visible_line_start, next_element_from_buffer):
17731 Cast `indented_beyond_p' 3rd arg to float.
17732
17733 * indent.c (last_known_column): Now a float.
17734 (current_column_1, position_indentation, current_column)
17735 (string_display_width): Return float.
17736 (Fcurrent_column): Cast `current_column' return value to int.
17737 (Fcurrent_indentation): Cast `position_indentation' retval to int.
17738 (indented_beyond_p): Third arg now a float.
17739 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
17740
17741 * lisp.h (current_column): Now returns float.
17742 (indented_beyond_p): 3rd arg now a float.
17743
17744 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
17745
17746 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
17747 is Qcompound_text_with_extensions.
17748
17749 * xselect.c (lisp_data_to_selection_data): Always set selection
17750 type as string if x_encode_text returns streingp non-NULL.
17751
17752 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
17753
17754 2002-05-30 Richard M. Stallman <rms@gnu.org>
17755
17756 * window.c (Fset_window_configuration): Correct the handling
17757 of point in current buffer, to work with multiple windows.
17758
17759 2002-05-29 Colin Walters <walters@verbum.org>
17760
17761 * lread.c (Fread_from_string): Don't depend on order of evaluation
17762 for C function parameters.
17763
17764 2002-05-28 Richard M. Stallman <rms@gnu.org>
17765
17766 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
17767 way for blinked-off state and for a nonselected window.
17768
17769 * window.c (window_scroll_pixel_based): Don't call Fbolp;
17770 instead, see if the new start pos is at beginning of line.
17771
17772 * fileio.c (Fwrite_region): If START is a string, don't
17773 make any annotations.
17774
17775 * eval.c (syms_of_eval): Doc fix.
17776
17777 2002-05-28 Colin Walters <walters@debian.org>
17778
17779 * emacs.c (USAGE1): Add --no-splash.
17780 (standard_args): Ditto.
17781
17782 2002-05-28 Colin Walters <walters@gnu.org>
17783
17784 * lread.c (readchar_count): New variable.
17785 (readchar): Increment it.
17786 (unreadchar): Decrement it.
17787 (read_multibyte): Decrement it.
17788 (Vread_with_symbol_positions): New variable.
17789 (Vread_symbol_positions_list): New variable.
17790 (read_internal_start): New function, created from Fread and
17791 Fread_from_string. Handle Vread_symbol_positions_list and
17792 Vread_with_symbol_positions.
17793 (readevalloop, Fread, Fread_from_string): Use it.
17794 (read1): Use readchar_count to add symbol positions to
17795 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
17796 (syms_of_lread): DEFVAR_LISP and initialize them.
17797
17798 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
17799 (substitute_object_recurse, substitute_object_in_subtree)
17800 (substitute_in_interval): Prototype.
17801 (read_multibyte): Return c if it's less than zero.
17802
17803 2002-05-28 Kim F. Storm <storm@cua.dk>
17804
17805 * fileio.c (Fread_file_name_internal): Added brute-force
17806 speed up for using predicate file-directory-p.
17807
17808 2002-05-28 Kim F. Storm <storm@cua.dk>
17809
17810 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
17811 New variables.
17812 (syms_of_fileio): DEFVAR_LISP them.
17813 (read_file_name_cleanup): New unwind function.
17814 (Fread_file_name_internal): Only return completions satifying
17815 Vread_file_name_predicate. Temporarily unwind protect and rebind
17816 default-directory while checking completions against the predicate.
17817 (Fread_file_name): Added PREDICATE argument. Specbind it to
17818 Vread_file_name_predicate during completion.
17819 Call Vread_file_name_function to read the file name if non-nil.
17820
17821 * lisp.h (Fread_file_name): Now has 6 args.
17822
17823 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
17824 predicate for Fread_file_name when reading directory name.
17825 Supply Qnil for predicate in other calls to Fread_file_name.
17826
17827 2002-05-26 Miles Bader <miles@gnu.org>
17828
17829 * term.c (tty_capable_p): New function.
17830 * dispextern.h (tty_capable_p): New function declaration.
17831 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
17832 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
17833
17834 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
17835
17836 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
17837 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
17838 (Vwrite_region_annotate_functions): Docstring fix.
17839
17840 2002-05-23 Kim F. Storm <storm@cua.dk>
17841
17842 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
17843 phys_cursor's hpos is overwritten. This is still not completely
17844 correct, as it doesn't really make sense to use hpos at all to
17845 get the cursor glyph (as that is relative to the width of the
17846 characters on the line, which may have changed during the update).
17847
17848 2002-05-22 Jason Rumney <jasonr@gnu.org>
17849
17850 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
17851 Lisp_Object.
17852 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
17853 Use modified enumfont_t struct.
17854
17855 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17856
17857 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
17858 Handle the `hbar' cursor type.
17859 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17860
17861 * w32fns.c (Qhbar): New variable.
17862 (x_specified_cursor_type): Use it.
17863
17864 2002-05-21 Ken Raeburn <raeburn@gnu.org>
17865
17866 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
17867 now, when the address is needed.
17868
17869 2002-05-21 Colin Walters <walters@gnu.org>
17870
17871 * Makefile.in (shortlisp): Add font-core.el.
17872
17873 2002-05-20 Richard M. Stallman <rms@gnu.org>
17874
17875 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
17876
17877 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
17878 equivalent key bindings here.
17879
17880 2002-05-20 Ken Raeburn <raeburn@gnu.org>
17881
17882 Change symbol structure to contain a lisp object for the symbol
17883 name:
17884 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
17885 object field named "xname".
17886 (SYMBOL_NAME): New macro.
17887 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
17888 name field.
17889 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
17890 (mark_object, gc_sweep): Use symbol xname field and XSTRING
17891 instead of name field.
17892 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
17893 SYMBOL_NAME instead of XSYMBOL and name field.
17894 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
17895 instead of XSYMBOL and name field.
17896 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
17897 and SYMBOL_NAME instead of XSYMBOL and name field.
17898 * coding.c (Fread_coding_system, code_convert_region1)
17899 (code_convert_string1, code_convert_string_norecord)
17900 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
17901 XSYMBOL and name field.
17902 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
17903 (Fmake_variable_buffer_local, Fmake_local_variable)
17904 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
17905 of XSYMBOL and name field.
17906 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
17907 XSYMBOL and name field.
17908 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
17909 instead of XSYMBOL and name field.
17910 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
17911 XSYMBOL and name field.
17912 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
17913 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17914 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
17915 instead of XSYMBOL and name field.
17916 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
17917 (parse_modifiers, apply_modifiers, Fevent_convert_list)
17918 (parse_solitary_modifier, Fexecute_extended_command):
17919 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17920 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
17921 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
17922 of XSYMBOL and name field.
17923 (describe_command, describe_translation): Use SYMBOL_NAME and
17924 assignment instead of XSYMBOL and name field and XSETSTRING.
17925 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
17926 instead of XSYMBOL and name field.
17927 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
17928 name field and XSETSTRING.
17929 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17930 of XSYMBOL and name field.
17931 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
17932 assignment instead of XSYMBOL and name field and XSETSTRING.
17933 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
17934 XSTRING instead of XSYMBOL and name field.
17935 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
17936 and XSTRING instead of XSYMBOL and name field.
17937 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
17938 and XSTRING instead of XSYMBOL and name field.
17939 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
17940 XSTRING instead of XSYMBOL and name field.
17941 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17942 of XSYMBOL and name field.
17943 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
17944 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17945
17946 2002-05-19 Ken Raeburn <raeburn@gnu.org>
17947
17948 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
17949 and XCDR real rvalues in most configurations.
17950
17951 * buffer.c (fix_overlays_in_range, fix_overlays_before):
17952 Don't take the address of the cdr part of a cons cell; instead, track
17953 the parent cell and call XSETCDR, or set the variable for the head
17954 of the list if we haven't started down the list yet.
17955
17956 2002-05-19 Richard M. Stallman <rms@gnu.org>
17957
17958 * doc.c (reread_doc_file): Don't ask for confirmation.
17959
17960 2002-05-18 Jason Rumney <jasonr@gnu.org>
17961
17962 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
17963 (xbm_load_image): Use it.
17964 (xbm_load): Ditto.
17965 (xbm_read_bitmap_data): Reverted to xfns.c version.
17966 From David Ponce <david@dponce.com>.
17967
17968 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
17969
17970 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
17971 2.02 and later.
17972
17973 2002-05-16 Juanma Barranquero <lektu@terra.es>
17974
17975 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
17976
17977 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
17978
17979 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
17980 meaningful test.
17981 (read_char_minibuf_menu_prompt): Fix typo.
17982
17983 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
17984
17985 * eval.c (Fcommandp): Doc fix.
17986
17987 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
17988
17989 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
17990 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
17991 (Fset_keymap_parent): Gcpro a bit more.
17992 (access_keymap): Gcpro around meta_map call and around the main loop.
17993 (get_keyelt): Gcpro when following indirect references.
17994 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
17995 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
17996 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
17997 Remove useless ad-hoc remap code.
17998
17999 2002-05-13 Richard M. Stallman <rms@gnu.org>
18000
18001 * search.c (search_buffer): Give up boyer moore search if inverse
18002 translation change charset_base.
18003
18004 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
18005
18006 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
18007 characters is carried over from the previous block of text, adjust
18008 coding->produced to account for the extra character.
18009
18010 2002-05-11 Andreas Schwab <schwab@suse.de>
18011
18012 * coding.c (intersection): Keep the elements of the returned list
18013 in the same order as in the first list.
18014
18015 2002-05-11 Kim F. Storm <storm@cua.dk>
18016
18017 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
18018 only update cmm_size if realloc actually succeeds.
18019 Testing with initial size of 2 elements revealed that using
18020 realloc on GNU/Linux would cause a random trap in xmalloc
18021 later on, so I rewrote the code to use malloc/bcopy/free instead
18022 of realloc.
18023
18024 2002-05-10 Jason Rumney <jasonr@gnu.org>
18025
18026 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
18027
18028 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
18029
18030 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
18031 parens, to ensure correct evaluation order.
18032
18033 2002-05-10 Kim F. Storm <storm@cua.dk>
18034
18035 * keymap.c (Vemulation_mode_map_alists): New variable.
18036 (syms_of_keymap): DEFVAR_LISP it.
18037 (current_minor_maps): Process keymap alists in that list before
18038 minor-mode-overriding-map-alist and minor-mode-map-alist.
18039
18040 2002-05-09 Richard M. Stallman <rms@gnu.org>
18041
18042 * search.c (Freplace_match): Doc fix.
18043
18044 2002-05-09 Kim F. Storm <storm@cua.dk>
18045
18046 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
18047 Enlarge cursor rectangle drawn around image with non-zero relief.
18048
18049 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
18050 Enlarge cursor rectangle drawn around image with non-zero relief.
18051
18052 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
18053 Enlarge cursor rectangle drawn around image with non-zero relief.
18054
18055 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
18056
18057 * xselect.c (lisp_data_to_selection_data): Don't set selection
18058 type if comes from the Lisp object's car. If the selection
18059 contains a pure ASCII text, always return QSTRING as its type.
18060
18061 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18062
18063 * mac.c (mac-cut-function): Doc fix.
18064
18065 2002-05-05 Richard M. Stallman <rms@gnu.org>
18066
18067 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
18068
18069 2002-05-04 Jason Rumney <jasonr@gnu.org>
18070
18071 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
18072 for event-click-count.
18073
18074 * process.c (init_process): Only add server subfeature if we can
18075 use non-blocking I/O.
18076
18077 2002-05-04 Andrew Choi <akochoi@shaw.ca>
18078
18079 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
18080 repeatedly.
18081
18082 2002-05-03 Jason Rumney <jasonr@gnu.org>
18083
18084 * process.c (Fmake_network_process): Only support server sockets
18085 when we can make them non-blocking.
18086
18087 * s/ms-w32.h (HAVE_SELECT): Define.
18088
18089 * w32.h (FILE_NDELAY): New flag.
18090
18091 * w32.c (sys_getpeername, fcntl): New functions.
18092 (_sys_read_ahead): Temporarily block on non-blocking sockets.
18093
18094 * w32proc.c: Include sys/file.h.
18095
18096 2002-05-03 Colin Walters <walters@verbum.org>
18097
18098 * callproc.c (Vgame_score_directory): Renamed to
18099 Vshared_game_score_directory.
18100
18101 2002-04-30 Richard M. Stallman <rms@gnu.org>
18102
18103 * s/gnu.h [emacs]: Include stdio.h.
18104 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
18105
18106 * eval.c (do_autoload): Error if called while preparing to dump.
18107
18108 * fns.c (Frequire): Error if need to load while preparing to dump.
18109
18110 2002-04-28 Colin Walters <walters@verbum.org>
18111
18112 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
18113 Default to "~/.emacs.d/games".
18114
18115 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
18116
18117 * lread.c (openp): Change arg exec_only to predicate.
18118 (build_load_history): Use XCAR/XCDR.
18119 (Flocate_file_internal): New fun.
18120 (syms_of_lread): Defsubr it.
18121 (Fload): Update call to openp.
18122
18123 * lisp.h (openp): Update prototype.
18124
18125 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
18126 * w32proc.c (sys_spawnve):
18127 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
18128 * w32.c (check_windows_init_file):
18129 * sound.c (Fplay_sound_internal):
18130 * process.c (Fstart_process):
18131 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
18132 * mac.c (run_mac_command):
18133 * emacs.c (init_cmdargs):
18134 * callproc.c (Fcall_process): Update call to openp.
18135
18136 * textprop.c (remove_properties): Don't use XCAR without CONSP.
18137
18138 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
18139
18140 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18141
18142 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
18143 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
18144
18145 2002-04-28 Richard M. Stallman <rms@gnu.org>
18146
18147 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
18148
18149 * eval.c (Fcommandp): New arg for_call_interactively.
18150 * lisp.h (Fcommandp): Declare new arg.
18151
18152 2002-04-28 Jason Rumney <jasonr@gnu.org>
18153
18154 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
18155
18156 * w32.c (stat, fstat): Use file index information to generate
18157 inodes for directories where available.
18158
18159 2002-04-26 Andrew Choi <akochoi@shaw.ca>
18160
18161 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
18162 [HAVE_CARBON]: Include Mac object files.
18163
18164 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
18165 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
18166 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
18167 MAC_OSX, and MAC_OS instead of macintosh.
18168
18169 * editfns.c [MAC_OS8]: Include stdio.h.
18170
18171 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
18172
18173 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
18174 Apple Monaco.
18175
18176 * process.c (QCfamily, QCfilte): Declare extern.
18177 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
18178 calling select.
18179
18180 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
18181
18182 * tparam.c [MAC_OSX]: Don't define BC and UP.
18183
18184 * config.in [HAVE_CARBON]: Add.
18185
18186 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
18187 Move here from mac/src and mac/inc.
18188
18189 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
18190
18191 2002-04-26 Gerd Moellmann <gerd@gnu.org>
18192
18193 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
18194 Compute phys_cursor_width from the x position returned
18195 by x_draw_glyhs, which is cheaper.
18196 (x_display_and_set_cursor): Compute the buffer-local value
18197 of `cursor-in-non-selected-windows' only when needed.
18198
18199 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18200
18201 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
18202 cursor on a stretch glyph has a width that depends on
18203 x_stretch_cursor_p.
18204
18205 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18206
18207 * abbrev.c (abbrev-start-location): Doc fix.
18208
18209 * indent.c (Fvertical_motion): Fix last change.
18210
18211 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18212
18213 * indent.c (Fvertical_motion): Move to the start of the line
18214 containing PT before moving up or down.
18215
18216 2002-04-24 Gerd Moellmann <gerd@gnu.org>
18217
18218 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
18219 case of writing a whole row, more or less analogous to the case of
18220 writing only parts of a row.
18221
18222 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
18223 0 for NO_CURSOR.
18224
18225 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
18226
18227 2002-04-23 Colin Walters <walters@verbum.org>
18228
18229 * buffer.c (syms_of_buffer): Doc fix.
18230
18231 2002-04-23 Gerd Moellmann <gerd@gnu.org>
18232
18233 * xterm.c (notice_overwritten_cursor): Handle the special case
18234 of the cursor being in the first blank non-text line at the
18235 end of a window.
18236
18237 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
18238 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
18239 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
18240 bar cursors only, to make phys_cursor_width contain what its name
18241 suggests.
18242 (notice_overwritten_cursor): Consider the cursor image erased if
18243 the output area intersects the cursor image in y-direction.
18244
18245 2002-04-23 Simon Marshall <simon@gnu.org>
18246
18247 * xfns.c (x_set_mouse_color): Change default for cross_cursor
18248 to XC_hand2.
18249
18250 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18251
18252 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
18253
18254 2002-04-22 Kim F. Storm <storm@cua.dk>
18255
18256 * textprop.c (remove_properties): Fixed trap for malformed plist.
18257
18258 2002-04-22 Richard M. Stallman <rms@gnu.org>
18259
18260 * cmds.c (Fend_of_line): Handle intangible text in mid line.
18261
18262 * window.c (make_window): Initialize height_fixed_p,
18263 last_cursor_off_p, and p->cursor_off_p slots.
18264
18265 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18266
18267 * fns.c (use-dialog-box): Doc fix.
18268
18269 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18270
18271 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
18272 variables `row', `i' and `area'.
18273 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
18274 toolkit library.
18275
18276 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
18277
18278 * xfaces.c (clear_font_table): Don't free the default font of
18279 a frame even if it's on another display.
18280 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
18281 that could be Qt.
18282
18283 2002-04-19 Juanma Barranquero <lektu@terra.es>
18284
18285 * indent.c (Fmove_to_column): Remove unused local variable
18286 `next_boundary_byte'.
18287 (current_column_1): Likewise.
18288
18289 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
18290
18291 * msdos.c (Qhbar): New variable.
18292 (syms_of_msdos): Intern and staticpro it.
18293 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
18294 cursor type.
18295
18296 2002-04-19 Dave Lambert <dlambert@acm.org>
18297
18298 Theses change implement an underscore-like (`hbar') cursor.
18299
18300 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
18301
18302 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
18303 Handle the `hbar' cursor type.
18304 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
18305
18306 * xfns.c (Qhbar): New variable.
18307 (syms_of_xfns): Intern and staticpro it.
18308 (x_specified_cursor_type): Handle `hbar' cursor.
18309
18310 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
18311 not defined.
18312
18313 2002-04-18 Richard M. Stallman <rms@gnu.org>
18314
18315 * textprop.c (remove_properties): New arg LIST allows scanning
18316 either a list or a plist.
18317 (interval_has_some_properties_list): New function, like
18318 interval_has_some_properties using list instead of plist.
18319 All callers changed.
18320 (Fremove_list_of_text_properties): New function.
18321 (syms_of_textprop): Defsubr it.
18322
18323 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18324
18325 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
18326
18327 2002-04-17 Juanma Barranquero <lektu@terra.es>
18328
18329 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
18330
18331 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18332
18333 * window.c (coordinates_in_window): Don't report on margin area
18334 if its width is zero.
18335
18336 2002-04-16 Jason Rumney <jasonr@gnu.org>
18337
18338 * w32fns.c (Fx_file_dialog): Decode file name before using.
18339
18340 * w32term.c (construct_drag_n_drop): Likewise.
18341
18342 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
18343
18344 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
18345 store load-history in pure space.
18346
18347 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
18348
18349 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
18350
18351 * xterm.c (Qlatin_1, Qutf_8): New vars.
18352 (syms_of_xterm): Initialize them.
18353 (XTread_socket): Eliminate incorrect optimization that tried to avoid
18354 decoding the output of X*LookupString.
18355 Always use latin-1 to decode the output of XLookupString.
18356 Try Xutf8LookupString if XmbLookupString failed.
18357
18358 * region-cache.c (new_region_cache): Use BEG.
18359
18360 2002-04-16 Gerd Moellmann <gerd@gnu.org>
18361
18362 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
18363 configuration files.
18364 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
18365 returns 0.
18366
18367 2002-04-15 Andreas Schwab <schwab@suse.de>
18368
18369 * config.in: Regenerated using autoheader.
18370
18371 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
18372 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
18373 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
18374 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
18375 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
18376 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
18377 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
18378 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
18379 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
18380 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
18381 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
18382 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
18383 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
18384 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
18385 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
18386 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
18387 STACK_DIRECTION, now set by autoconf.
18388
18389 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18390
18391 * dispnew.c (marginal_area_string): Sort arguments.
18392
18393 * dispextern.h (marginal_area_string): Add prototype.
18394
18395 2002-04-13 Richard M. Stallman <rms@gnu.org>
18396
18397 * fileio.c (Finsert_file_contents):
18398 Don't call temp_output_buffer_setup--do just part, by hand.
18399
18400 * coding.c (run_pre_post_conversion_on_str):
18401 Don't call temp_output_buffer_setup--do just part, by hand.
18402
18403 * keyboard.c (command_loop_1): Don't call start_hourglass
18404 or cancel_hourglass when executing a macro.
18405
18406 * marker.c (count_markers): New function.
18407
18408 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
18409 grow without limit. Move recently used elements to the front.
18410
18411 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
18412
18413 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
18414
18415 2002-04-12 Gerd Moellmann <gerd@gnu.org>
18416
18417 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
18418 rows marginal areas.
18419 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
18420 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
18421
18422 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
18423
18424 2002-04-12 Dave Love <fx@gnu.org>
18425
18426 * dispnew.c (marginal_area_string): New.
18427
18428 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
18429 (Qleft_margin, Qright_margin): Declare.
18430 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
18431
18432 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
18433 note_mode_line_highlight and extended.
18434
18435 * keyboard.c (Qleft_margin, Qright_margin): Declare.
18436 (make_lispy_event): Deal with mouse events in margins.
18437
18438 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
18439
18440 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
18441
18442 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
18443 than deactivating the mark if tmm is set to `lambda'.
18444 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
18445 Use a single event for HELP_EVENT.
18446 (Fexecute_extended_command): Save last_point_position.
18447
18448 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18449
18450 * lisp.h (Fpropertize): Add prototype.
18451
18452 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
18453
18454 2002-04-10 Colin Walters <walters@verbum.org>
18455
18456 * config.in: Add HAVE_SHARED_GAME_DIR.
18457
18458 * callproc.c (Vgame_score_directory): New variable.
18459 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
18460
18461 2002-04-10 Richard M. Stallman <rms@gnu.org>
18462
18463 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
18464
18465 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
18466
18467 * minibuf.c (read_minibuf): Use empty_string.
18468 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
18469 Short-circuit the search as soon as it "failed".
18470 (Fall_completions): Allow lambda forms and lists of strings for alist.
18471 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
18472 when require_match is nil.
18473 (Ftest_completion): Rename from `test_completion' and export to elisp.
18474 Call the predicate also when alist is a list.
18475 Obey Vcompletion_regexp_list.
18476 (do_completion, Fminibuffer_complete_and_exit): Use it.
18477 (Fassoc_string): Rename from `assoc_for_completion'.
18478 Allow list of strings as well and export to elisp.
18479
18480 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
18481
18482 * puresize.h (BASE_PURESIZE): Increase to 900KB.
18483
18484 2002-04-08 Juanma Barranquero <lektu@terra.es>
18485
18486 * w32.c (sys_accept): Don't hide variable `s'.
18487
18488 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18489
18490 * callint.c (Fcall_interactively): Use INTEGERP instead of
18491 NUMBERP for checking Vhistory_length.
18492
18493 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18494
18495 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18496 Doc fix to reflect it.
18497
18498 2002-04-04 Richard M. Stallman <rms@gnu.org>
18499
18500 * xdisp.c (display_mode_element): New arg RISKY.
18501 Disregard text props found or specified within a variable
18502 that isn't marked risky-local-variable.
18503 (Qrisky_local_variable): New variable.
18504 (syms_of_xdisp): Init and staticpro it.
18505
18506 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18507
18508 * undo.c (record_point): New fun.
18509 (record_delete, record_insert): Use it.
18510
18511 2002-04-03 Juanma Barranquero <lektu@terra.es>
18512
18513 * doc.c (Fdocumentation): Add missing parentheses.
18514 (Fdocumentation_property): Likewise.
18515
18516 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18517
18518 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18519 data is 0, just return nil.
18520
18521 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18522
18523 * msdos.c (syms_of_msdos): Fix last change with
18524 mouse_autoselect_window.
18525
18526 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18527
18528 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18529 mouse_autoselect_window.
18530
18531 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18532
18533 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18534 with system-specific keysyms. Use it also for unknown function keys.
18535
18536 * doc.c (reread_doc_file): Return whether reload was attempted.
18537 (Fdocumentation, Fdocumentation_property): Don't try to reload
18538 if the doc is 0 and only ask once.
18539
18540 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18541
18542 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18543
18544 * keyboard.c (read_char): If the event was Qselect_window,
18545 restore timer_idleness_start_time to its previous value.
18546
18547 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
18548
18549 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
18550
18551 * region-cache.c (new_region_cache): Use BEG.
18552
18553 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
18554 Use BEG and BEG_BYTE.
18555
18556 * doc.c (get_doc_string): Return nil if the location is wrong.
18557 (reread_doc_file): New fun.
18558 (Fdocumentation, Fdocumentation_property):
18559 Call it if get_doc_string fails.
18560 (Fsnarf_documentation): Make it work for a dumped Emacs.
18561
18562 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
18563 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
18564
18565 * charset.c (Fstring): Allow 0 arguments.
18566
18567 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
18568
18569 * process.c (DATAGRAM_CONN_P, list_processes_1)
18570 (Fprocess_datagram_address, Fset_process_datagram_address)
18571 (Fset_network_process_options, server_accept_connection):
18572 Fix some int/Lisp_Object confusions (thank you union types).
18573
18574 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18575
18576 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
18577
18578 * w32term.c: Likewise.
18579 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
18580
18581 * keyboard.c (Qselect_window): New symbol.
18582 (head_table): Use it.
18583 (keys_of_keyboard): Bound select-window event to handle-select-window.
18584 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
18585
18586 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
18587 (last_window): New variable.
18588 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
18589 (note_mouse_movement): Remove reimplemented code in #if 0.
18590 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
18591 Emacs windows.
18592
18593 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
18594
18595 2002-03-31 Gerd Moellmann <gerd@gnu.org>
18596
18597 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
18598 Callers changed.
18599
18600 2002-03-30 Richard M. Stallman <rms@gnu.org>
18601
18602 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
18603 loop whenever it stops making progress.
18604
18605 * widget.c (set_frame_size): Don't call change_frame_size.
18606
18607 2002-03-30 Gerd Moellmann <gerd@gnu.org>
18608
18609 * dispnew.c (direct_output_for_insert):
18610 Call mark_window_display_accurate.
18611
18612 2002-03-29 Jason Rumney <jasonr@gnu.org>
18613
18614 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
18615
18616 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
18617
18618 * Makefile.in (lread.o): Depend on coding.h.
18619
18620 * lread.c (openp, Fload): Encode the file name before passing it
18621 to `stat', `access', and `emacs_open'.
18622 (openp): GCPRO the encoded file name. Don't recompute Lisp
18623 strings unnecessarily.
18624
18625 2002-03-29 Kim F. Storm <storm@cua.dk>
18626
18627 * fns.c (Flax_plist_put): Doc fix.
18628
18629 2002-03-28 Miles Bader <miles@gnu.org>
18630
18631 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
18632
18633 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18634
18635 * process.c (set-network-process-options): Add usage.
18636 (make-network-process): Doc fix.
18637
18638 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
18639
18640 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
18641
18642 2002-03-26 Richard M. Stallman <rms@gnu.org>
18643
18644 * fns.c (Fsubstring_no_properties): New function.
18645 (Flax_plist_get, Flax_plist_put): New functions.
18646 (syms_of_fns): defsubr them.
18647
18648 * xdisp.c (update_menu_bar): Test only update_mode_lines;
18649 don't test or alter w->update_mode_line.
18650
18651 * window.c (Fdisplay_buffer): Doc fix.
18652
18653 2002-03-24 Richard M. Stallman <rms@gnu.org>
18654
18655 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
18656
18657 2002-03-24 Gerd Moellmann <gerd@gnu.org>
18658
18659 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
18660 (Fdefmacro): Handle `(declare ...)'.
18661 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
18662 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
18663
18664 2002-03-24 Jason Rumney <jasonr@gnu.org>
18665
18666 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
18667 (xbm_file_p): Add prototypes.
18668 (xbm_format, xbm_image_p): Sync with xfns.c.
18669 (reflect_byte): New function.
18670 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
18671 (xbm_load_image): Create bitmaps with a depth of 1.
18672 (init_xfns): Enable XBM images.
18673
18674 2002-03-23 Jason Rumney <jasonr@gnu.org>
18675
18676 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
18677 correctly. Do not pass up_modifier to keyboard buffer.
18678
18679 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
18680
18681 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
18682
18683 * Makefile.in (bootstrapclean): New target.
18684 (bootstrap-temacs, bootstrap-doc): Remove.
18685 (bootstrap-emacs): Use a bog-standard `temacs'.
18686 Don't bother to build a DOC file.
18687
18688 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
18689
18690 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
18691 in temacs even if !CANNOT_DUMP.
18692 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
18693
18694 * alloc.c (check_pure_size): Only output a warning.
18695
18696 2002-03-22 Jason Rumney <jasonr@gnu.org>
18697
18698 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
18699 supported.
18700
18701 * w32term.c (zv_bits): Declare as short, for word alignment.
18702 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
18703 (syms_of_w32term): Define x-use-underline-position-properties.
18704
18705 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
18706 (clear_image_cache): Block input, fix logic, clear matrices in
18707 all frames that share this cache.
18708
18709 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
18710
18711 * emacs.c (main): Update the Copyright year in the blurb printed
18712 by "emacs --version".
18713
18714 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
18715
18716 * xterm.c (XTread_socket): If XK_ISO_Lock and
18717 XK_ISO_Last_Group_Lock are defined, handle keysyms between
18718 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
18719
18720 2002-03-21 Kim F. Storm <storm@cua.dk>
18721
18722 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
18723 menu-bar bindings in keymap and local-map properties _are_ used.
18724 But try keymap property first in accordance with 2002-01-03 patch.
18725 Added comment describing why this is not always reliable.
18726 (tool_bar_items): Ditto for tool-bar.
18727
18728 2002-03-21 Jason Rumney <jasonr@gnu.org>
18729
18730 * w32fns.c (x_clear_image_1): Disable color table code.
18731
18732 2002-03-21 Kim F. Storm <storm@cua.dk>
18733
18734 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
18735 removed the wrong version of the DEFUN macro; fixed it.
18736
18737 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
18738 Fmember rather than Fmemq).
18739 (Fprovide): Check that subfeatures is a list.
18740
18741 * process.c (QCfeature, QCdatagram): Removed variables.
18742 (QCtype, Qdatagram): New variables.
18743 (network_process_featurep): Removed function.
18744 (Fmake_network_process): Removed :feature check.
18745 Use :type 'datagram instead of :datagram t to create a datagram
18746 socket. This allows us to add other connection types (e.g. raw
18747 sockets) later in a consistent manner.
18748 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
18749 supported subfeatures for feature make-network-process.
18750 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
18751 Intern and staticpro QCtype and Qdatagram.
18752 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
18753
18754 * xfns.c: (QCtype): Remove duplicate declaration and
18755 initialization (is now declared in process.c).
18756
18757 * w32fns.c: (QCtype): Remove duplicate declaration and
18758 initialization (is now declared in process.c).
18759
18760 2002-03-21 Richard M. Stallman <rms@gnu.org>
18761
18762 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
18763 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
18764 when jumping to `fail' to avoid undoing reg changes in the
18765 last iteration of the loop.
18766 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
18767
18768 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
18769 Depend on process.h.
18770
18771 2002-03-20 Jason Rumney <jasonr@gnu.org>
18772
18773 Most of the following changes are still conditional on HAVE_IMAGES
18774 which is not set by default on Windows.
18775
18776 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
18777
18778 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
18779 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
18780 (four_corners_best, x_clear_image_1, x_clear_image)
18781 (x_alloc_image_color, postprocess_image)
18782 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
18783 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
18784 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
18785
18786 * w32gui.h (struct XImage): Define.
18787
18788 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
18789 extract mouse co-ordinates.
18790
18791 2002-03-20 Jason Rumney <jasonr@gnu.org>
18792
18793 * w32.c (init_winsock): Dynamically load new server and UDP
18794 socket functions.
18795 (socket_to_fd): New function.
18796 (sys_socket): Use it.
18797 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
18798 (sys_recvfrom, sys_sendto): New wrapper functions.
18799
18800 * process.c (QCfamily, QCfilter): Remove duplicate declaration
18801 and initialization.
18802
18803 * makefile.w32-in (LIBS): Remove $(WSOCK32).
18804
18805 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
18806
18807 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
18808 Don't use "sun" as a variable, it's a predefined constant on Sun
18809 machines.
18810
18811 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18812
18813 * bytecode.c (Fbyte_code): Revert last change.
18814
18815 2002-03-19 Kim F. Storm <storm@cua.dk>
18816
18817 * makefile.w32-in (LIBS): Add $(WSOCK32).
18818 From David Ponce <dponce@voila.fr>.
18819
18820 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18821
18822 * process.c (wait_reading_process_input): Move variables `pname'
18823 and `pnamelen' down where they are used.
18824
18825 * bytecode.c (Fbyte_code): Discard unused computed value to
18826 prevent gcc warning.
18827
18828 * lisp.h (Fplist_member): Add prototype.
18829
18830 2002-03-18 Kim F. Storm <storm@cua.dk>
18831
18832 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
18833 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
18834
18835 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
18836 Remove explicit GNU_LINUX settings for datagram support.
18837
18838 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18839
18840 * process.c (Fmake_network_process): Remove unused variable `sa'.
18841 Doc fix. Add usage:.
18842 (set_socket_options): Remove unused variables `optnum' and `opttype'.
18843
18844 2002-03-17 Richard M. Stallman <rms@gnu.org>
18845
18846 * xdisp.c (cursor_type_changed): New variable.
18847 (redisplay_internal): Redisplay all windows if cursor_type_changed.
18848 Clear it when clearing windows_or_buffers_changed.
18849 (try_cursor_movement, redisplay_window, try_window_id)
18850 (try_window_reusing_current_matrix): Test cursor_type_changed
18851 along with windows_or_buffers_changed.
18852
18853 * window.h (cursor_type_changed): New variable.
18854
18855 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
18856 not update_mode_lines, and always set it to 1.
18857
18858 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
18859 if no frames needed redrawing.
18860
18861 2002-03-17 Kim F. Storm <storm@cua.dk>
18862
18863 The following changes add support for network server processes,
18864 datagram connections, and local (unix) sockets.
18865
18866 * process.h (struct Lisp_Process): New member log.
18867 Doc fix: Member command used to indicate stopped network process.
18868 Doc fix: Member childp contains plist for network process.
18869 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
18870
18871 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
18872 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
18873 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
18874 New variables.
18875 (NETCONN1_P): New macro.
18876 (DATAGRAM_SOCKETS): New conditional symbol.
18877 (datagram_address): New array.
18878 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
18879 (status_message): Use concat3.
18880 (Fprocess_status): Add `listen' status to doc string. Return `stop'
18881 for a stopped network process.
18882 (Fset_process_buffer): Update contact plist for network process.
18883 (Fset_process_filter): Ditto. Don't enable input for stopped
18884 network processes. Server must listen, even if filter is t.
18885 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
18886 New functions.
18887 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
18888 (Fprocess_contact): Added KEY argument. Handle datagrams.
18889 (list_processes_1): Optionally show only processes with the query
18890 on exit flag set. Dynamically adjust column widths. Omit tty
18891 column if not needed. Report stopped network processes.
18892 Identify server and datagram network processes.
18893 (Flist_processes): New optional arg `query-only'.
18894 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
18895 (conv_lisp_to_sockaddr, set_socket_options)
18896 (network_process_featurep, unwind_request_sigio): New helper functions.
18897 (Fprocess_datagram_address, Fset_process_datagram_address):
18898 (Fset_network_process_options): New lisp functions.
18899 (Fopen_network_stream): Removed. Now defined in simple.el.
18900 (Fmake_network_process): New lisp function. Code is based on previous
18901 Fopen_network_stream, but heavily reworked with new property list based
18902 argument list, support for datagrams, server processes, and local
18903 sockets in addition to old client-only functionality.
18904 (server_accept_connection): New function.
18905 (wait_reading_process_input): Use it to handle incoming connects.
18906 Do not enable input on a new connection if process is stopped.
18907 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
18908 (send_process): Handle datagram sockets.
18909 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
18910 network process is indicated by setting command field to t .
18911 (Fprocess_send_eof): No-op if datagram connection.
18912 (Fstatus_notify): Don't read input for a stream server socket or a
18913 stopped network process.
18914 (init_process): Initialize datagram_address array.
18915 (syms_of_process): Intern and staticpro new variables, defsubr new
18916 functions.
18917
18918 2002-03-16 Jason Rumney <jasonr@gnu.org>
18919
18920 * w32fns.c (w32_to_all_x_charsets): Return correct type in
18921 startup case.
18922
18923 2002-03-16 Richard M. Stallman <rms@gnu.org>
18924
18925 * xdisp.c (redisplay_internal, redisplay_windows):
18926 Use list_of_error to call internal_condition_case_1.
18927 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
18928 so as to catch all errors with no possibility of debugger redisplay.
18929 (list_of_error): New variable.
18930 (syms_of_xdisp): Init and staticpro it.
18931
18932 * print.c (print_object): Delete `\ ' from printed rep of frame.
18933
18934 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
18935
18936 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
18937 until its implementation is fixed.
18938
18939 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18940
18941 * xfns.c (png_load): Remove unused variable `gamma_str'.
18942
18943 2002-03-14 Richard M. Stallman <rms@gnu.org>
18944
18945 * xfns.c (x_real_positions): Handle failure in XQueryTree.
18946
18947 2002-03-14 Miles Bader <miles@gnu.org>
18948
18949 * intervals.c (adjust_for_invis_intang): New function.
18950 (set_point_both): Use `adjust_for_invis_intang' to do most of the
18951 work for dealing with invisible+intangible regions. Do so before
18952 and after both forward and backward movements, to handle both
18953 front-sticky and rear-sticky cases.
18954 * textprop.c (text_property_stickiness): Function moved here from
18955 `editfns.c'.
18956 * intervals.h (text_property_stickiness): New declaration.
18957 * editfns.c (char_property_eq): Function removed.
18958 (text_property_stickiness): Function moved to `textprop.c'.
18959
18960 2002-03-13 Jason Rumney <jasonr@gnu.org>
18961
18962 * config.in: Add STRFTIME_NO_POSIX2.
18963
18964 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
18965 and %OX when underlying strftime does not.
18966
18967 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
18968
18969 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
18970 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
18971 line) to avoid annoying flicker.
18972 (xm_scroll_callback): Get rid of the now unnecessary kludge.
18973 (XTread_socket): Mark it static.
18974
18975 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
18976
18977 2002-03-13 Kim F. Storm <storm@cua.dk>
18978
18979 * puresize.h (BASE_PURESIZE): Increase to 775000.
18980
18981 2002-03-12 Juanma Barranquero <lektu@terra.es>
18982
18983 * editfns.c (syms_of_editfns): Fix typo.
18984
18985 2002-03-12 Gerd Moellmann <gerd@gnu.org>
18986
18987 * xsmfns.c: Include stdio.h because termhooks.h needs it.
18988 Include termopt.h for interrupt_input.
18989
18990 2002-03-11 Andreas Schwab <schwab@suse.de>
18991
18992 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
18993
18994 2002-03-11 Gerd Moellmann <gerd@gnu.org>
18995
18996 * xterm.c (note_mouse_movement): Put code for
18997 x_autoselect_window_p in #if 0.
18998
18999 * lread.c (Fload): Don't assume that message_with_string uses the
19000 string it is given like a C string.
19001
19002 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19003
19004 * xterm.h (x_session_check_input, x_session_initialize): Declare.
19005
19006 * xterm.c (XTread_socket): Add call to x_session_check_input and
19007 x_session_have_connection.
19008 (x_initialize): Add call to x_session_initialize.
19009
19010 * termhooks.h (enum event_kind): Add save_session_event.
19011
19012 * keyboard.c: Add Emacs event save_session_event.
19013
19014 * emacs.c (main): Add call to syms_of_xsmfns.
19015
19016 * lisp.h (syms_of_xsmfns): Declare extern.
19017
19018 * config.in: Add HAVE_X_SM.
19019
19020 * Makefile.in (LIBXT): Add -lSM -lICE
19021 if HAVE_X_SM and not USE_X_TOOLKIT.
19022 (XOBJ): New file xsmfns.c added.
19023
19024 * xsmfns.c: New file for X session management.
19025
19026 2002-03-09 Jason Rumney <jasonr@gnu.org>
19027
19028 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
19029 read-only when setting modified time.
19030
19031 2002-03-08 Gerd Moellmann <gerd@gnu.org>
19032
19033 * xdisp.c (move_it_vertically_backward): At the end of the function,
19034 when moving forward by lines, treat terminal frames specially.
19035
19036 * keyboard.c (echo_char): Make sure to add a separator between
19037 keys even if echo_dash hasn't been called.
19038
19039 * xdisp.c: Use new string macros.
19040 (update_echo_area): Pass number of bytes to message3 instead of
19041 number of chars.
19042 (set_message_1): Don't access a string's size_byte directly.
19043 (decode_mode_spec_coding): Use number of bytes of eoltype string
19044 instead number of chars.
19045
19046 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
19047
19048 2002-03-08 Juanma Barranquero <lektu@terra.es>
19049
19050 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
19051 24-bit.
19052
19053 2002-03-06 Jason Rumney <jasonr@gnu.org>
19054
19055 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
19056
19057 2002-03-06 Gerd Moellmann <gerd@gnu.org>
19058
19059 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
19060 (cancel_echoing, echo_length, echo_truncate): Changed to
19061 work with new kboard definition.
19062 (echo_now): Use message3_nolog instead of message2_nolog.
19063
19064 * alloc.c (mark_kboards): Mark echo_string.
19065
19066 * keyboard.h (ECHOBUFSIZE): Removed.
19067 (struct kboard): Member echoptr removed, member echobuf renamed
19068 to echo_string.
19069
19070 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
19071 message3 instead of message2 to display the message using STRING's
19072 text properties.
19073
19074 2002-03-05 Andreas Schwab <schwab@suse.de>
19075
19076 * xdisp.c (hscroll_margin): Change to EMACS_INT.
19077
19078 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
19079
19080 * frame.c (default-frame-alist): Explain that setting it doesn't
19081 affect existing frames.
19082
19083 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
19084
19085 * indent.c (skip_invisible): Fix my brain fart.
19086
19087 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
19088
19089 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
19090
19091 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
19092 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
19093 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
19094 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
19095 and variables to use EMACS_INT instead of just int.
19096
19097 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
19098
19099 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
19100
19101 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
19102 environment, pass it down with corrected value.
19103
19104 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19105
19106 * lread.c (read_filtered_event): Do not call start_hourglass
19107 before returning.
19108
19109 2002-03-04 Juanma Barranquero <lektu@terra.es>
19110
19111 * w32term.c (x_display_and_set_cursor): Fix typo.
19112
19113 2002-03-03 Richard M. Stallman <rms@gnu.org>
19114
19115 * fileio.c (Fmake_temp_name): Doc fix.
19116
19117 2002-03-03 Gary Wong <gtw@gnu.org>
19118
19119 * termcap.c [!emacs]: Replace ospeed for building standalone
19120 libtermcap, for binary compatibility.
19121
19122 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
19123
19124 2002-03-03 Richard M. Stallman <rms@gnu.org>
19125
19126 * xrdb.c (file_p): Rename arg `path' to `filename'.
19127
19128 * abbrev.c (Fexpand_abbrev): Increment plist as use count
19129 only if it is an integer.
19130
19131 * xfns.c (png_load): Set screen_gamma based on f->gamma.
19132 If png_get_sRGB gives an answer, call png_set_gamma
19133 using the default image gamma value.
19134
19135 * lread.c (read1): When reading from a file, default string to
19136 multibyte only if it has some multibyte characters.
19137
19138 * print.c (print_object): Output multibyte chars 128...255
19139 using \x even if ! print_escape_multibyte.
19140
19141 * xdisp.c (display_mode_element): Move the places where
19142 bytepos, charpos, this, and lisp_string are set.
19143 Use lisp_string to set bytepos.
19144
19145 * xdisp.c (redisplay_internal):
19146 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
19147
19148 * xdisp.c (display_mode_element): Merge properties specified with
19149 :propertize onto those that come with the string.
19150
19151 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
19152
19153 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
19154 automatic-hscrolling. Users changed.
19155 <hscroll-margin>: Renamed from automatic-hscroll-margin.
19156 Users changed.
19157 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
19158
19159 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
19160
19161 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
19162
19163 2002-03-02 Kim F. Storm <storm@cua.dk>
19164
19165 * window.c (Fminibuffer_selected_window): New function.
19166 (syms_of_window): Defsubr it.
19167
19168 2002-03-01 Kim F. Storm <storm@cua.dk>
19169
19170 * window.h (struct window): New member phys_cursor_width.
19171
19172 * window.c (make_window, replace_window): Init phys_cursor_width.
19173
19174 * xterm.c (x_display_and_set_cursor): Blink box cursor using
19175 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19176
19177 * w32term.c (x_display_and_set_cursor): Blink box cursor using
19178 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19179
19180 * lisp.h (GCPRO6): New macro.
19181
19182 * process.c (Fopen_network_stream): Use GCPRO6.
19183
19184 2002-03-01 Kim F. Storm <storm@cua.dk>
19185
19186 * process.c (Qconnect, Qfailed): New variables.
19187 (syms_of_process): Intern and staticpro them.
19188 (Fprocess_status): Document connect and failed return values.
19189 [NON_BLOCKING_CONNECT]: New conditional.
19190 (connect_wait_mask, num_pending_connects): New variables.
19191 (status_message): Convert Qfailed status.
19192 (Fopen_network_stream): Added support for non-blocking connect.
19193 New optional args: filter, sentinel, non_blocking. Doc updated.
19194 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
19195 (deactivate_process): Handle pending non-blocking connect.
19196 (wait_reading_process_input): Poll for status of non-blocking
19197 connects. Exec sentinel directly when connect succeeds.
19198 (status_notify): Don't read process output if not yet connected.
19199
19200 2002-02-28 Kim F. Storm <storm@cua.dk>
19201
19202 * window.c: (minibuf_selected_window): Renamed from
19203 Vminibuf_selected_window. Users changed.
19204 (syms_of_window): Staticpro it.
19205
19206 2002-02-26 Kim F. Storm <storm@cua.dk>
19207
19208 The following changes add a new Vminibuf_selected_window variable
19209 which is similar to Vminibuf_scroll_window, but which is only set
19210 on entry to the minibuffer (from a non-minibuffer window):
19211
19212 * window.c: (Vminibuf_selected_window): New variable.
19213 (struct save_window_data): New member minibuf_selected_window.
19214 (Fset_window_configuration): Restore Vminibuf_selected_window.
19215 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
19216 Set minibuf_scroll_window member to nil if minibuf_level is 0.
19217 (compare_window_configurations): Compare minibuf_selected_window.
19218
19219 * window.h: (Vminibuf_selected_window): Declare extern.
19220
19221 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
19222 entry to minibuffer or on entry from a non-minibuffer window.
19223
19224 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
19225 Vminibuf_selected_window instead of Vminibuf_scroll_window.
19226
19227 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
19228 instead of Vminibuf_scroll_window when deciding in which window
19229 the region should be highlighted. Consequently, the region remains
19230 highlighteded even when a completion buffer is also displayed.
19231
19232 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
19233
19234 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
19235
19236 * xselect.c (Qcompound_text_with_extensions): Renamed from
19237 Qcompound_text_no_extensions.
19238 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
19239
19240 2002-02-26 Juanma Barranquero <lektu@terra.es>
19241
19242 * w32proc.c (syms_of_ntproc): Doc fix.
19243
19244 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19245
19246 * intervals.h: Include "dispextern.h" unconditionally.
19247
19248 2002-02-24 Jason Rumney <jasonr@gnu.org>
19249
19250 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
19251 and disp-table.elc.
19252 (lisp): Add emacs-lisp/backquote.elc.
19253
19254 2002-02-24 Kim F. Storm <storm@cua.dk>
19255
19256 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
19257 The validation of the event type was too strict as it didn't
19258 allow string events; buffer names are used in bindings for
19259 menu-bar-select-buffer (see `menu-bar-update-buffers').
19260
19261 2002-02-23 Kim F. Storm <storm@cua.dk>
19262
19263 The following changes rework my patch of 2002-02-06 which
19264 added command remapping by entering the commands directly into
19265 the keymaps. Now, command remapping uses an explicit `remap'
19266 prefix in the keymaps, i.e. [remap COMMAND].
19267
19268 * keymap.c (Qremap, remap_command_vector): New variables.
19269 (is_command_symbol): Remove function.
19270 (Fdefine_key): No longer accept a symbol for KEY.
19271 Added validation of [remap COMMAND] argument for KEY.
19272 The DEF is no longer required to be a symbol when remapping a command.
19273 (Fremap_command): New function to remap command through keymaps.
19274 (Flookup_key): Perform command remapping initiated by
19275 Fremap_command directly for speed.
19276 (Fkey_binding): Use Fremap_command for command remapping.
19277 (where_is_internal): Handle new command remapping representation.
19278 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
19279 staticpro them. Defsubr Fremap_command.
19280
19281 * keymap.h (Fremap_command): Declare extern.
19282 (is_command_symbol): Remove extern.
19283
19284 * keyboard.c (command_loop_1): Use Fremap_command for command
19285 remapping; now try command remapping for all symbols.
19286
19287 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19288
19289 * coding.h (run_pre_post_conversion_on_str): Add prototype.
19290
19291 2002-02-23 Jason Rumney <jasonr@gnu.org>
19292
19293 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
19294 on the string before encoding it.
19295 (Fw32_get_clipboard_data): Run post-read-conversion on the string
19296 after decoding it.
19297
19298 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
19299
19300 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19301
19302 * w32term.c (enter_timestamp): Remove unused static variable to
19303 prevent warning.
19304
19305 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
19306
19307 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19308
19309 * w16select.c (Fw16_get_clipboard_data): Fix last change.
19310
19311 * xselect.c (selection_data_to_lisp_data): Fix last change.
19312
19313 2002-02-22 Jason Rumney <jasonr@gnu.org>
19314
19315 * w32term.h (struct w32_output): New member menu_command_in_progress.
19316
19317 * w32menu.c (menubar_selection_callback): Free the menu and
19318 clear the menu_command_in_progress flag.
19319
19320 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
19321 (menu_free_timer): New variable.
19322 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
19323 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
19324 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
19325 menu command is in progress.
19326 <WM_COMMAND>: Set the menu_command_in_progress flag.
19327 Kill any menu_free_timer that is running.
19328
19329 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
19330 Call ExtTextOutA rather than ExtTextOut.
19331
19332 2002-02-22 Eli Zaretskii <eliz@gnu.org>
19333
19334 * puresize.h (BASE_PURESIZE): Increase to 755000.
19335
19336 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19337
19338 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
19339 on the string before encoding it.
19340 (Fw16_get_clipboard_data): Run post-read-conversion on the string
19341 after decoding it.
19342
19343 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19344
19345 Support for ICCCM Extended Segments in X selections:
19346
19347 * xselect.c <Qcompound_text_no_extensions>: New variable.
19348 (syms_of_xselect): Intern and staticpro it.
19349 (selection_data_to_lisp_data): Run post-read-conversion on decoded
19350 selection text.
19351 (lisp_data_to_selection_data): If next-selection-coding-system is
19352 compound-text-no-extensions, set the type of selection to be
19353 compound-text.
19354
19355 * xterm.h (x_encode_text): Update prototype.
19356
19357 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
19358 callers changed. If SELECTIONP is non-zero, run the
19359 pre-write-conversion function before encoding the selection text.
19360
19361 2002-02-21 Kim F. Storm <storm@cua.dk>
19362
19363 * frame.c (syms_of_frame): Change mouse-highlight default to t.
19364
19365 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
19366 Correct composing of language-change event.
19367
19368 2002-02-20 Kim F. Storm <storm@cua.dk>
19369
19370 * keyboard.c (menu_bar_items): Don't include keymap or local-map
19371 bindings at PT when building menu (the menu is not updated often
19372 enough for this to work reliable).
19373 (tool_bar_items): Likewise.
19374 (current_active_maps): Removed unused (and buggy) function.
19375
19376 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19377
19378 * xfns.c (gif_load): Use correct width and height for GIF images.
19379
19380 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
19381
19382 * floatfns.c (Fatan): Accept an optional second arg and call
19383 atan2 if passed 2 args.
19384
19385 2002-02-18 Jason Rumney <jasonr@gnu.org>
19386
19387 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
19388
19389 2002-02-17 Jason Rumney <jasonr@gnu.org>
19390
19391 * w32term.c (x_autoselect_window_p): New variable.
19392 (syms_of_w32term): DEFVAR_BOOL and initialize it.
19393 (note_mouse_movement): Use it.
19394
19395 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
19396
19397 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
19398
19399 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19400 New variables.
19401 (syms_of_w32fns): Intern and staticpro them.
19402 (x_frame_parms) <"fullscreen">: New parameter.
19403 (x_fullscreen_move, x_set_fullscreen): New functions.
19404 (x_set_frame_parameters): Support Qfullscreen.
19405 (x_real_positions): Save x/y_pixels_diff frame params.
19406 (x_figure_window_size): Support full-screen frames.
19407 (Fx_create_frame): Default the fullscreen parameter.
19408
19409 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
19410 (x_fullscreen_adjust): New functions.
19411 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
19412 fullscreen. Call x_check_fullscreen_move, and set the
19413 want_fullscreen member of output_data.w32
19414 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
19415
19416 * w32term.h: New enum for FULLSCREEN_* constants.
19417 (struct w32_output): New members want_fullscreen, x_pixels_diff,
19418 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
19419 (x-fullscreen-adjust): New prototype.
19420
19421 2002-02-17 Kim F. Storm <storm@cua.dk>
19422
19423 * frame.c (Vmouse_highlight): New variable.
19424 (syms_of_frame): DEFVAR_LISP it.
19425
19426 * frame.h (Vmouse_highlight): Declare extern.
19427
19428 * xterm.h (struct x_display_info): Add mouse_face_hidden.
19429
19430 * xterm.c (disable_mouse_highlight): Removed variable.
19431 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19432 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19433 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
19434 and on after keyboard input.
19435 (x_term_init): Initialize mouse_face_hidden.
19436
19437 * msdos.h (struct display_info): Add mouse_face_hidden.
19438
19439 * msdos.c (disable_mouse_highlight): Removed variable.
19440 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19441 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19442 (internal_terminal_init): Initialize mouse_face_hidden.
19443 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
19444 and on after keyboard input.
19445
19446 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
19447
19448 * w32term.c (disable_mouse_highlight): Removed variable.
19449 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
19450 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19451 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
19452 and on after keyboard input.
19453 (w32_initialize_display_info): Initialize mouse_face_hidden.
19454
19455 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
19456
19457 * msdos.c (last_mouse_window): New variable.
19458 (dos_rawgetc): Fix last change--if the mouse is in the same window
19459 as recorded in last_mouse_window, don't select this window.
19460
19461 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
19462
19463 * msdos.c (x_autoselect_window_p): New variable.
19464 (syms_of_msdos): Defvar it.
19465 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
19466 which the last mouse movement occured, unless it is already selected.
19467
19468 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
19469 New variables.
19470 (syms_of_xdisp): DEVFAR them.
19471 (hscroll_window_tree): Use automatic_hscroll_margin and
19472 Vautomatic_hscroll_step to compute the amount of window scrolling.
19473
19474 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19475
19476 * xterm.c (x-autoselect-window): New variable.
19477 (note_mouse_movement): Use it.
19478
19479 * keyboard.c: Do not include "systime.h" twice.
19480
19481 2002-02-15 Andreas Schwab <schwab@suse.de>
19482
19483 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
19484
19485 * alloc.c (NSTATICS): Increase to 1280.
19486
19487 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19488
19489 * alloc.c (NSTATICS): Bump to 1026.
19490
19491 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19492 (Vx_super_keysym): New variables.
19493 (syms_of_xterm): DEFVAR_LISP them.
19494 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19495 variables to determine which keys to use for the various modifiers.
19496
19497 2002-02-13 Kim F. Storm <storm@cua.dk>
19498
19499 * window.c: (Vmode_line_in_non_selected_windows): Removed.
19500 (mode_line_in_non_selected_windows): New variable.
19501 (syms_of_window): DEFVAR_BOOL it.
19502
19503 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19504 Use mode_line_in_non_selected_windows.
19505 (mode_line_in_non_selected_windows): Declare extern.
19506 (Vmode_line_in_non_selected_windows): Removed extern.
19507
19508 2002-02-13 Richard M. Stallman <rms@gnu.org>
19509
19510 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19511 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19512 (Fclear_this_command_keys): Doc fixes.
19513
19514 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19515 (update_face_from_frame_parameter): Increment face_change_count
19516 and windows_or_buffers_changed to force redisplay using changed faces.
19517
19518 * xdisp.c (QCpropertize): New variable.
19519 (mode_line_proptrans_alist): New variable.
19520 (display_mode_element): New arg PROPS; all calls changed.
19521 Implement this, for strings.
19522 Handle literal output of strings by sharing the
19523 main-line code for strings, using local var `literal'.
19524 Handle :propertize feature.
19525 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19526 mode_line_proptrans_alist.
19527
19528 2002-02-11 Kim F. Storm <storm@cua.dk>
19529
19530 * window.c: (Vmode_line_in_non_selected_windows): New variable.
19531 (syms_of_window): DEFVAR_LISP it.
19532
19533 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19534 (CURRENT_MODE_LINE_FACE_ID): Use it.
19535 (Vmode_line_in_non_selected_windows): Declare extern.
19536
19537 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19538 to get mode line face.
19539
19540 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19541
19542 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19543 variables; cus-start.el doesn't need them anymore.
19544
19545 2002-02-09 Kim F. Storm <storm@cua.dk>
19546
19547 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
19548 reduction. This fixes a display problem where stray newlines were
19549 inserted in the window (corrected by C-l). Clarified code (IMHO).
19550
19551 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
19552
19553 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
19554
19555 * xdisp.c (display_mode_lines): Fix last change.
19556
19557 2002-02-09 Jason Rumney <jasonr@gnu.org>
19558
19559 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
19560 match each other.
19561 (w32_load_system_font): Prevent Cleartype fonts from loading.
19562 (Fx_show_tip): Ensure tip frames are above other topmost windows.
19563
19564 2002-02-09 Kim F. Storm <storm@cua.dk>
19565
19566 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
19567 (CURRENT_MODE_LINE_HEIGHT): Use it.
19568 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
19569
19570 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
19571 (pos_visible_p, handle_face_prop): Likewise.
19572 (display_mode_lines): Likewise, but for the real selected window.
19573 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
19574
19575 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
19576 in non-selected windows.
19577 (realize_basic_faces): Realize it.
19578 (syms_of_term): Intern and staticpro it.
19579
19580 2002-02-08 Kim F. Storm <storm@cua.dk>
19581
19582 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
19583 Changed mail addresses to emacs-devel@gnu.org.
19584
19585 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
19586
19587 * fileio.c (Fsubstitute_in_file_name): If the file name includes
19588 ~user, and there's no such user, don't discard everything before ~user.
19589
19590 * floatfns.c (Fround): Doc fix.
19591
19592 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19593
19594 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
19595
19596 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
19597
19598 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
19599
19600 2002-02-07 Kim F. Storm <storm@cua.dk>
19601
19602 * keymap.c (where_is_internal): Only check whether definition is
19603 remapped if it fulfills is_command_symbol.
19604
19605 2002-02-07 Andreas Schwab <schwab@suse.de>
19606
19607 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
19608
19609 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
19610
19611 2002-02-06 Kim F. Storm <storm@cua.dk>
19612
19613 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
19614 defining command remapping. Doc updated.
19615 (Flookup_key): Remap command through keymap if KEY is a symbol.
19616 (is_command_symbol): New function.
19617 (Fkey_binding): Use it. New optional argument NO-REMAP.
19618 Doc updated. Callers changed. Perform command remapping via
19619 recursive call unless that arg is non-nil.
19620 (where_is_internal): New argument no_remap. Callers changed.
19621 Call recursively to find original key bindings for a remapped
19622 comand unless that arg is non-nil.
19623 (Fwhere_is_internal): New optional argument NO-REMAP.
19624 Doc updated. Callers changed. Pass arg to where_is_internal.
19625
19626 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
19627 (is_command_symbol): Add prototype.
19628
19629 * keyboard.c (Vthis_original_command): New variable.
19630 (syms_of_keyboard): DEFVAR_LISP it.
19631 (command_loop_1): Set it, and perform command remapping.
19632
19633 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19634
19635 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
19636
19637 2002-02-06 Jason Rumney <jasonr@gnu.org>
19638
19639 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
19640
19641 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
19642
19643 * charset.c (get_charset_id): Use if-else instead of ?:.
19644
19645 2002-02-06 Richard M. Stallman <rms@gnu.org>
19646
19647 * filelock.c (S_ISLNK): Define if not defined.
19648
19649 2002-02-03 Richard M. Stallman <rms@gnu.org>
19650
19651 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
19652
19653 * lread.c (read1): Redesign strategy for force_multibyte and
19654 force_singlebyte. Now is_multibyte records whether read_buffer
19655 is multibyte. Encountering any multibyte character makes it so.
19656
19657 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
19658
19659 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
19660 with the same sequence, map that sequence to f10 rather than f0.
19661
19662 2002-02-03 Andreas Schwab <schwab@suse.de>
19663
19664 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
19665 latter never being defined on GNU/Linux.
19666
19667 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
19668
19669 * xfaces.c (realize_default_face): Don't set the weight and slant of
19670 the default face to Qnormal, unless these attributes are unspecified.
19671
19672 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19673
19674 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
19675 Call cancel_hourglass unconditionally.
19676
19677 * eval.c (Fsignal): Remove duplicated declaration of
19678 the variable `display_hourglass_p'.
19679
19680 2002-01-31 Richard M. Stallman <rms@gnu.org>
19681
19682 * editfns.c (region_limit): Nicer error message.
19683
19684 * coding.c (decode_composition_emacs_mule):
19685 Give up if NCOMPONENT gets too large to index `component'.
19686
19687 * callint.c (check_mark): New arg to specify clearer error message.
19688 Callers changed.
19689
19690 2002-01-27 Richard M. Stallman <rms@gnu.org>
19691
19692 * minibuf.c (Fcompleting_read): Doc fix.
19693
19694 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19695
19696 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
19697 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
19698 Fix doc-strings.
19699
19700 2002-01-26 Richard M. Stallman <rms@gnu.org>
19701
19702 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
19703
19704 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
19705 and scroll_up_aggressively.
19706
19707 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19708
19709 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
19710
19711 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
19712
19713 * textprop.c (Fnext_property_change, Fnext_single_property_change)
19714 (Fprevious_property_change, Fprevious_single_property_change):
19715 Stay within the narrowed-buffer boundaries.
19716
19717 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
19718
19719 * term.c (Ftty_display_color_cells): New function.
19720 (syms_of_term): Defsubr it.
19721 (Ftty_display_color_cells, Ftty_display_color_p): Change the
19722 argument name to DISPLAY. Doc fix.
19723
19724 * dispextern.h: Add prototype for set_tty_color_mode and
19725 tty_setup_colors.
19726
19727 2002-01-24 Jason Rumney <jasonr@gnu.org>
19728
19729 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
19730 If region left to draw is not what was expected, mark the frame as
19731 garbaged.
19732
19733 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
19734 Combine the regions returned by BeginPaint and GetUpdateRect.
19735
19736 2002-01-23 Jason Rumney <jasonr@gnu.org>
19737
19738 * w32term.c (x_update_window_begin): Only hide caret if
19739 w32_use_visible_system_caret is set.
19740 (x_update_window_end): Only show caret if
19741 w32_use_visible_system_caret is set.
19742 (syms_of_w32term): Handle SystemParametersInfo call failing.
19743
19744 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
19745
19746 2002-01-22 Richard M. Stallman <rms@gnu.org>
19747
19748 * unexelf.c (unexec): Define n so as to cause compilation error
19749 for the code where people have often written n instead of nn.
19750
19751 * .gdbinit (hookpost-run): Defined.
19752
19753 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19754
19755 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
19756
19757 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19758
19759 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
19760 if fullscreen is being set.
19761
19762 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19763
19764 * minibuf.c (Fminibuffer_contents)
19765 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
19766 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
19767
19768 2002-01-21 Richard M. Stallman <rms@gnu.org>
19769
19770 * window.c (check_frame_size): Fix minimum height calculation.
19771
19772 2002-01-20 Ken Raeburn <raeburn@gnu.org>
19773
19774 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
19775 height before comparison.
19776 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
19777
19778 2002-01-20 Jason Rumney <jasonr@gnu.org>
19779
19780 * w32term.c (w32_system_caret_width): Remove.
19781 (w32_use_visible_system_caret): New user flag.
19782 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
19783 Windows reports a screen reader running.
19784 (x_update_window_begin): Hide the system caret.
19785 (x_update_window_end): Show the system caret.
19786 (x_display_and_set_cursor): Don't draw a cursor when
19787 w32_use_visible_system_caret is set. Do not adjust width.
19788
19789 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
19790 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
19791 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
19792 the user requests it. Use system default width when creating.
19793 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
19794
19795 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
19796 New window messages.
19797
19798 2002-01-20 Richard M. Stallman <rms@gnu.org>
19799
19800 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
19801
19802 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19803
19804 * doprnt.c (doprnt1): Fix typos in error call.
19805
19806 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
19807
19808 * unexelf.c (unexec) [__sgi]: Support the .got sections.
19809
19810 2002-01-20 Jason Rumney <jasonr@gnu.org>
19811
19812 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
19813 that Windows returns. If a double check fails, try to guess how
19814 ExtTextOut is going to act.
19815
19816 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
19817 in place of stricmp.
19818 (w32_list_synthesized_fonts): Removed.
19819 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
19820 (struct enumfont_t): New element; list.
19821 (enum_font_cb2): List all style and charset variations of a font.
19822 (Fw32_select_font): New optional argument; include_proportional.
19823 Exclude vertical fonts. Exclude proportional fonts unless
19824 include_proportional is non-nil.
19825 (w32_enable_synthesized_fonts): Change to a boolean.
19826 (Fw32_send_sys_command): Doc fix.
19827
19828 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19829
19830 * dispnew.c (update_frame): Move the variable `tem' to the block
19831 where it is used.
19832
19833 2002-01-19 Jason Rumney <jasonr@gnu.org>
19834
19835 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
19836 call to face-set-after-frame-default.
19837
19838 2002-01-18 Richard M. Stallman <rms@gnu.org>
19839
19840 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
19841 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
19842
19843 2002-01-17 Richard M. Stallman <rms@gnu.org>
19844
19845 * window.c (enlarge_window): When exceeding size of parent,
19846 directly delete all the siblings instead of trying to resize it.
19847
19848 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19849
19850 * term.c (set_tty_color_mode): Remove unused variable `tem'.
19851
19852 2002-01-16 Henrik Enberg <henrik@enberg.org>
19853
19854 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
19855
19856 2002-01-16 Kim F. Storm <storm@cua.dk>
19857
19858 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
19859 is invisible. This can happen if cursor is on top line of a
19860 window, and we switch to a buffer with a header line.
19861
19862 * w32term.c (x_erase_phys_cursor): Ditto.
19863
19864 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19865
19866 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
19867 `dont_resize' only when used.
19868
19869 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
19870
19871 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
19872
19873 * xdisp.c (display_mode_element): When computing charpos, depend
19874 on multibyteness of elt, not the text in field.
19875
19876 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19877
19878 * buffer.c (Fkill_all_local_variables):
19879 Increment `update_mode_lines' only once.
19880
19881 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19882
19883 * lisp.h (adjust_after_replace_noundo)
19884 (Fupdate_coding_systems_internal): Add prototypes.
19885
19886 * sound.c (Fplay_sound): Initialize header_size also for :data case.
19887
19888 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
19889
19890 Support for the --color command-line argument and tty-color-mode
19891 frame parameter:
19892
19893 * term.c (tty_default_color_capabilities, tty_setup_colors)
19894 (set_tty_color_mode): New functions.
19895 (term_init): Call tty_default_color_capabilities.
19896 (Qtty_color_mode_alist): New variable.
19897 (syms_of_term): Intern and staticpro it.
19898
19899 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
19900 frames.
19901 (do_switch_frame): For termcap frames, switch the tty
19902 color mode as specified by the frame's parameters.
19903 (Qtty_color_mode): New variable.
19904 (syms_of_frame): Intern and staticpro it.
19905
19906 * emacs.c (USAGE2): Add the --color option.
19907 (standard_args): Ditto.
19908
19909 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19910
19911 * xterm.h (struct x_output): New members want_fullscreen,
19912 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
19913 y_pixels_outer_diff.
19914 New enum for FULLSCREEN_* constants.
19915 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
19916 is NULL.
19917 (x_fullscreen_adjust): Add prototype.
19918
19919 * emacs.c (USAGE2): Add the new full-screen arguments.
19920 (standard_args): Ditto.
19921
19922 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19923 New variables.
19924 (syms_of_xfns): Intern and staticpro them.
19925 (x_frame_parms) <"fullscreen">: New parameter.
19926 (x_fullscreen_move, x_set_fullscreen): New functions.
19927 (x_set_frame_parameters): Support for Qfullscreen.
19928 (x_real_positions): More accurate computation of the frame position.
19929 (x_figure_window_size): Support full-screen frames.
19930 (Fx_create_frame): Default the fullscreen parameter.
19931
19932 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
19933 (XTread_socket) <Expose>: Call x_check_fullscreen.
19934 <ConfigureNotify>: Don't resize to fullscreen.
19935 Call x_check_fullscreen_move, and set the want_fullscreen member of
19936 output_data.x.
19937
19938 2002-01-13 Jason Rumney <jasonr@gnu.org>
19939
19940 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
19941 for mice with more than 3 buttons.
19942
19943 * w32term.c (parse_button): New parameter xbutton. Callers changed.
19944 (w32_read_socket): Handle new "XBUTTON" messages.
19945
19946 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
19947 (syms_of_w32fns): DEFVAR_BOOL it.
19948 (w32_wnd_proc): Handle new "XBUTTON" messages.
19949
19950 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19951
19952 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
19953
19954 2002-01-13 Andreas Schwab <schwab@suse.de>
19955
19956 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
19957
19958 2002-01-12 Andreas Schwab <schwab@suse.de>
19959
19960 * .gdbinit (xbuffer): Remove address operator since data is now a
19961 pointer.
19962
19963 2002-01-11 Richard M. Stallman <rms@gnu.org>
19964
19965 * insdel.c (adjust_after_replace_noundo): New function.
19966
19967 * coding.c (code_convert_region): Don't copy old text if undo disabled.
19968
19969 2002-01-09 Jason Rumney <jasonr@gnu.org>
19970
19971 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
19972 when checking for multiple frames.
19973
19974 2002-01-08 Richard M. Stallman <rms@gnu.org>
19975
19976 * window.c (delete_window): Rewrite the code for changing the
19977 selected window to handle the case where WINDOW is not a leaf.
19978
19979 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
19980
19981 * process.c (send_process): Set src_multibyte to 1 after the call
19982 top setup_coding_system, not before the call.
19983
19984 2002-01-07 Jason Rumney <jasonr@gnu.org>
19985
19986 * xmenu.c (set_frame_menubar, xmenu_show):
19987 (xdialog_show): Initialize wv->help to Qnil.
19988
19989 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
19990 (w32_dialog_show): Initialize wv->help to Qnil.
19991
19992 2002-01-06 Jason Rumney <jasonr@gnu.org>
19993
19994 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
19995
19996 * w32menu.c (w32_menu_display_help): Revert last change.
19997
19998 * xmenu.c (menu_highlight_callback): Revert last change.
19999
20000 2002-01-06 Andreas Schwab <schwab@suse.de>
20001
20002 * insdel.c (make_gap_larger): Make sure buffer size does not
20003 overflow range of int.
20004
20005 2002-01-05 Jason Rumney <jasonr@gnu.org>
20006
20007 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20008 OVERLAPS_P.
20009
20010 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
20011
20012 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
20013 to the left or to the right of the pointer, put it against
20014 the left screen edge.
20015 (x_frame_parms): Add missing braces around initializer.
20016
20017 * w32term.c (x_setup_relief_colors): Don't compute an image's
20018 background color if it doesn't have a Pixmap.
20019 (notice_overwritten_cursor): Don't depend on
20020 output_cursor and updated_area. Compare pixel coordinates with
20021 window's cursor pixel coordinates.
20022 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20023 Call notice_overwritten_cursor with new arg list.
20024 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20025 unconditionally.
20026 (x_draw_image_relief): Use predefined macro instead of
20027 constant when the value of `tool_bar_button_relief' is negative.
20028
20029 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
20030
20031 2002-01-04 Richard M. Stallman <rms@gnu.org>
20032
20033 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
20034
20035 2002-01-03 Richard M. Stallman <rms@gnu.org>
20036
20037 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
20038 (Fkey_binding): Try the `keymap' property map first.
20039 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
20040 minor mode bindings.
20041
20042 2002-01-03 Kim F. Storm <storm@cua.dk>
20043
20044 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
20045
20046 2002-01-02 Richard M. Stallman <rms@gnu.org>
20047
20048 * keyboard.c (read_key_sequence): Handle the keymap property
20049 before minor mode maps.
20050
20051 * editfns.c (Fformat): Update thissize from field_width
20052 based on the actual width, in the string case.
20053
20054 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20055
20056 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
20057 when used as truth value to prevent gcc warnings.
20058
20059 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
20060 * w32proc.c: Include <config.h>.
20061
20062 2002-01-01 Andreas Schwab <schwab@suse.de>
20063
20064 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
20065 not EMACS_INT, to make them compatible with DEFVAR_INT.
20066 * lisp.h (max_specpdl_size): Adjust declaration.
20067
20068 2002-01-01 Richard M. Stallman <rms@gnu.org>
20069
20070 * print.c (print_object): Test print_escape_nonascii only for
20071 unibyte strings.
20072 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
20073 when outputting to a multibyte buffer.
20074
20075 2001-12-29 Richard M. Stallman <rms@gnu.org>
20076
20077 * print.c (print_object): In multibyte string, use hex escapes.
20078 Use octal only for unibyte strings.
20079 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
20080
20081 * lread.c (read_escape): New arg BYTEREP for reporting whether
20082 escape forces unibyte or multibyte.
20083 (read1): When reading a string, take note of that info.
20084
20085 2001-12-29 Ken Raeburn <raeburn@gnu.org>
20086
20087 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
20088 comparison to test lisp value returned by Fget.
20089
20090 2001-12-29 Richard M. Stallman <rms@gnu.org>
20091
20092 * lisp.h (max_specpdl_size): Add declaration.
20093
20094 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
20095
20096 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
20097 Handle modifier bits. Correct typo in error message.
20098
20099 2001-12-28 Richard M. Stallman <rms@gnu.org>
20100
20101 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
20102 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
20103 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20104 Update calls to Fdefine_abbrev.
20105 (write_abbrev): Update for changed data format.
20106 Don't list "system" abbrevs.
20107 (Fexpand_abbrev): Update use count with new data format.
20108 (describe_abbrev): Update for changed data format.
20109 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
20110
20111 * config.in (HAVE_MBSINIT): Add #undef.
20112
20113 * strftime.c (mbsinit): Define as no-op if not available.
20114
20115 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
20116 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
20117
20118 * keymap.c (Flookup_key): Error message if key has wrong data type.
20119 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
20120 (exclude_key): New variable.
20121
20122 2001-12-28 Gerd Moellmann <gerd@gnu.org>
20123
20124 * xterm.c (x_setup_relief_colors): Don't compute an image's
20125 background color if it doesn't have a Pixmap.
20126
20127 * xterm.c (notice_overwritten_cursor): Don't depend on
20128 output_cursor and updated_area. Compare pixel coordinates with
20129 window's cursor pixel coordinates.
20130 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20131 Call notice_overwritten_cursor with new arg list.
20132 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20133 unconditionally.
20134
20135 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
20136 height of the cursor line to the amount to scroll.
20137
20138 2001-12-27 Richard M. Stallman <rms@gnu.org>
20139
20140 * intervals.c (set_point_both): The position after an invisible,
20141 intangible character is not an acceptable stopping point.
20142
20143 2001-12-27 Ken Raeburn <raeburn@gnu.org>
20144
20145 * window.c (enlarge_window): In new preserve_before code, convert
20146 CURBEG from lisp object to integer before doing arithmetic.
20147
20148 2001-12-27 Richard M. Stallman <rms@gnu.org>
20149
20150 * bytecode.c (Fbyte_code): Undo previous change.
20151
20152 2001-12-26 Kim F. Storm <storm@cua.dk>
20153
20154 * keyboard.c (record_char): Ignore duplicate help-echo events only
20155 separated by mouse-movement. When tracking mouse, only record
20156 first and last mouse-movement event in same window.
20157 Don't record mouse-movement events in keyboard macros.
20158
20159 2001-12-25 Richard M. Stallman <rms@gnu.org>
20160
20161 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
20162 (Fenlarge_window): New arg PRESERVE_BEFORE.
20163
20164 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
20165 instead of Fstring_as_unibyte.
20166
20167 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20168
20169 The following changes remove mocklisp support:
20170
20171 * mocklisp.h, mocklisp.c: Files removed.
20172
20173 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
20174 `Qmocklisp' and `Qmocklisp_arguments'.
20175 Remove prototype of syms_of_mocklisp.
20176
20177 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
20178
20179 * callint.c: Do not include mocklisp.h.
20180 (Fcall_interactively): Do not test for mocklisp case.
20181
20182 * eval.c: Remove variables `Qmocklisp_arguments',
20183 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
20184 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
20185 Do not test for mocklisp case.
20186 (Fwhile): Remove unused variable `tem'.
20187 (syms_of_eval): Remove variable `moclisp-arguments'.
20188
20189 * data.c (wrong_type_argument): Remove mocklisp case.
20190
20191 * doc.c (Fdocumentation): Remove mocklisp case.
20192
20193 * emacs.c (main): Do not call syms_of_mocklisp.
20194
20195 2001-12-21 Richard M. Stallman <rms@gnu.org>
20196
20197 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
20198 to the left or to the right of the pointer, put it against
20199 the left screen edge.
20200
20201 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
20202
20203 * Makefile.in (distclean): Remove .gdbinit if we are building
20204 outside the source tree.
20205
20206 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
20207
20208 * w32.c (emacs_root_dir): New function.
20209
20210 * msdos.c (emacs_root_dir): New function.
20211
20212 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
20213 of the current drive as the fallback for default_directory.
20214
20215 * dired.c (file_name_completion): Run the elements of
20216 completion-ignored-extensions through ENCODE_FILE.
20217
20218 * lisp.h (scmp): Remove prototype, since it's now a static
20219 function private to dired.c.
20220
20221 2001-12-18 Richard M. Stallman <rms@gnu.org>
20222
20223 * dired.c (scmp): Function moved from minibuf.c.
20224 Delete multibyte handling--used only on encoded strings.
20225
20226 * minibuf.c (scmp): Function moved to dired.c.
20227
20228 * fns.c (merge): Add QUIT call.
20229
20230 2001-12-18 Dave Love <fx@gnu.org>
20231
20232 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
20233 language/georgian.el.
20234
20235 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
20236
20237 * Makefile.in (lisp, shortlisp): Synchronize with changes to
20238 lisp/Makefile.in:DONTCOMPILE.
20239
20240 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20241
20242 * xdisp.c (window_box_height): Do not return negative values.
20243 From Gerd Moellmann <gerd@gnu.org>.
20244
20245 * keyboard.c (head_table): Add missing braces around initializer.
20246
20247 * term.c (keys): Likewise.
20248
20249 * xfns.c (x_frame_parms, visual_classes): Likewise.
20250
20251 2001-12-17 Sam Steingold <sds@gnu.org>
20252
20253 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
20254 patch (COMPOSING_P, not COMPOSING).
20255
20256 2001-12-17 Richard M. Stallman <rms@gnu.org>
20257
20258 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
20259
20260 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
20261 before calling decode_coding.
20262
20263 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
20264
20265 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
20266 instead of only for COMPOSITION_DISABLED.
20267
20268 2001-12-16 Richard M. Stallman <rms@gnu.org>
20269
20270 * alloc.c (pure_alloc): After overflow, allocate just a small block.
20271
20272 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
20273
20274 * buffer.h (struct buffer): New field `display_error_modiff'.
20275 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
20276
20277 * window.c (Frecenter): Clear display_error_modiff field.
20278
20279 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
20280 Call redisplay_window, but not if display_error_modiff field says no.
20281 (redisplay_window_error): New function.
20282 (displayed_buffer): New variable.
20283 (redisplay_internal, redisplay_windows): Call the new functions
20284 instead of redisplay_window directly.
20285
20286 2001-12-15 Richard M. Stallman <rms@gnu.org>
20287
20288 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
20289
20290 2001-12-14 Andrew Innes <andrewi@gnu.org>
20291
20292 * makefile.w32-in (EMACSLOADPATH): Define.
20293 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
20294 (bootstrap-temacs): Remove dependency on bootstrap-clean.
20295
20296 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
20297
20298 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
20299 parameter have a numeric value all the time.
20300
20301 * w32fns.c (x_report_frame_params): Likewise.
20302
20303 2001-12-12 Richard M. Stallman <rms@gnu.org>
20304
20305 * fileio.c (Fwrite_region): Doc fix.
20306
20307 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
20308 (redisplay_internal): Call clear_image_cache only for window terminals.
20309
20310 2001-12-12 Gerd Moellmann <gerd@gnu.org>
20311
20312 * xdisp.c (move_it_vertically_backward): Change heuristic
20313 for the case that we didn't move far enough initially.
20314
20315 * window.c (Frecenter): Simplify computation in the case of window
20316 system frames and ARG < 0; use window_box_height.
20317
20318 2001-12-11 Richard M. Stallman <rms@gnu.org>
20319
20320 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
20321 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
20322
20323 2001-12-11 Andrew Innes <andrewi@gnu.org>
20324
20325 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
20326 arg is negative.
20327
20328 2001-12-11 Richard M. Stallman <rms@gnu.org>
20329
20330 * m/hp800.h: Split the __hpux conditional into the parts
20331 that are right for GNU/Linux too and the parts that are not.
20332 Use the former if GNU_LINUX.
20333 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
20334
20335 * s/gnu-linux.h (GNU_LINUX): Defined.
20336
20337 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20338
20339 * macros.c, msdos.c, w16select.c: Change doc-string comments to
20340 `new style' [w/`doc:' keyword].
20341
20342 2001-12-10 Jason Rumney <jasonr@gnu.org>
20343
20344 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
20345 before using.
20346
20347 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20348
20349 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
20350 keyword].
20351
20352 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
20353
20354 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
20355
20356 * s/hpux10.h (srand48): Don't undefine.
20357
20358 2001-12-09 Jason Rumney <jasonr@gnu.org>
20359
20360 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
20361 Add comment to explain where the struct came from.
20362 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
20363 (add_menu_item): Process pop-up menus first to avoid memory leak.
20364 (add_menu_item, w32_menu_display_help): Use `help' field as
20365 Lisp_Object.
20366 (w32_free_submenu_strings): Only free owner-drawn strings.
20367
20368 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20369
20370 * COPYING: Moved back.
20371
20372 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
20373 Add parentheses around && within ||.
20374
20375 * indent.c (compute_motion): Likewise.
20376
20377 * intervals.c (merge_properties_sticky): Likewise.
20378
20379 * coding.c (setup_coding_system, shrink_encoding_region)
20380 (Fdecode_sjis_char): Likewise.
20381
20382 2001-12-07 Andreas Schwab <schwab@suse.de>
20383
20384 * xdisp.c (display_mode_element): Don't read past end of string if
20385 it ends with '%'.
20386
20387 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
20388 can hold.
20389
20390 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
20391 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
20392 type changed to Lisp_Object.
20393 (syms_of_data): DEFVAR_LISP them.
20394
20395 2001-12-07 Richard M. Stallman <rms@gnu.org>
20396
20397 * callproc.c (init_callproc): Set Vdata_directory based on the source
20398 location whenever Emacs was run uninstalled.
20399
20400 2001-12-06 Paul Eggert <eggert@twinsun.com>
20401
20402 * config.in (HAVE_WORKING_VFORK): New #undefs.
20403 * process.c (create_process):
20404 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
20405 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
20406 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
20407 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
20408 * m/intel386.h (HAVE_VFORK): Likewise.
20409 * m/mips-siemens.h (HAVE_VFORK): Likewise.
20410 * m/mips.h (HAVE_VFORK): Likewise.
20411 * s/freebsd.h (vfork): Remove #define.
20412 * s/lynxos.h (HAVE_VFORK): Remove #undef.
20413 * s/usg5-4-2.h: Fix comment about vfork.
20414
20415 2001-12-06 Richard M. Stallman <rms@gnu.org>
20416
20417 * s/hpux10.h (random): Add undef.
20418 (HAVE_RANDOM): Define it just once.
20419
20420 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
20421
20422 * eval.c: Undo last change: the standard syntax is not wanted.
20423
20424 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
20425
20426 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
20427 scroll bars of the frame before deleting the frame itself. If the
20428 frame has a widget, delete the frame with XtDestroyWidget, and do
20429 not call XDestroyWindow before that.
20430
20431 2001-12-06 Kim F. Storm <storm@cua.dk>
20432
20433 * xfns.c (x_report_frame_params): Return actual fringe widths.
20434
20435 * w32fns.c (x_report_frame_params): Return actual fringe widths.
20436
20437 2001-12-05 Andrew Innes <andrewi@gnu.org>
20438
20439 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
20440 excessively large.
20441
20442 * insdel.c (make_gap_larger): New function.
20443 (make_gap_smaller): New function.
20444 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
20445 Call make_gap_smaller if arg is negative.
20446
20447 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
20448
20449 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
20450 Pass a dummy argument when calling interrupt_signal.
20451 (parse_menu_item): Mark disabled items before checking for empty def.
20452 (read_char_minibuf_menu_prompt): Make safety more visible.
20453 (read_key_sequence): Add a `first_unbound' variable.
20454 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
20455 unbound prefix as soon as we can detect it.
20456
20457 * doc.c (Fsnarf_documentation): Add prototype.
20458 (get_doc_string): Handle negative arguments.
20459 (Fdocumentation): Use AREF and ASIZE.
20460 Move the calls to get_doc_string to a single place.
20461 Don't confuse an interactive-spec for a docstring reference.
20462 (Fdocumentation_property): Take advantage of the fact that
20463 get_doc_string now ignores the sign of the docstring position.
20464
20465 * eval.c: Use standard syntax for usage in docstrings.
20466
20467 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20468
20469 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
20470
20471 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20472
20473 * xterm.c (x_draw_image_relief): Use predefined macro instead of
20474 constant when the value of `tool_bar_button_relief' is negative.
20475
20476 2001-12-02 Richard M. Stallman <rms@gnu.org>
20477
20478 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
20479 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
20480
20481 * fileio.c (read_non_regular): Delete Fsignal call.
20482
20483 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
20484
20485 * lisp.h (run_hook_list_with_args): Undo last change.
20486
20487 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20488
20489 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20490
20491 2001-12-01 Jason Rumney <jasonr@gnu.org>
20492
20493 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20494
20495 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20496 [!WM_MOUSELEAVE]: Define.
20497
20498 * w32menu.c (current_popup_menu, get_menu_item_info):
20499 (set_menu_item_info): New vars.
20500 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20501 (w32_menu_show): Set current_popup_menu.
20502 (add_menu_item): Allocate new strings for owner-drawn menu items
20503 and help strings.
20504 Use owner-draw for disabled menu items again.
20505 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20506 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20507
20508 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20509 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20510 <WM_EXITMENULOOP>: Free menu strings.
20511 <WM_MOUSELEAVE>: Stop tracking mouse.
20512 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20513
20514 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20515 and mouse face.
20516
20517 2001-12-01 Kim F. Storm <storm@cua.dk>
20518
20519 The following changes add left-fringe and right-fringe
20520 frame parameters to adjust fringe widths, or remove one or
20521 both fringes.
20522
20523 * frame.h (struct frame): Remove trunc_area_pixel_width and
20524 trunc_area_cols fields.
20525 (Qleft_fringe, Qright_fringe): Declare.
20526 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20527
20528 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20529 (syms_of_frame): Initialize them.
20530
20531 * window.c (coordinates_in_window): Handle separate left and right
20532 fringe widths.
20533
20534 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20535 and fringe_cols fields.
20536 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20537 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20538 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20539 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20540 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20541 (x_compute_fringe_widths): Add prototype.
20542
20543 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20544 fill fringe evenly with small dashes.
20545 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20546 clip the new ZV bitmap to avoid jitter between rows.
20547 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
20548 background. Don't draw fringe bitmaps if fringe width is zero.
20549 (x_compute_fringe_widths): New function.
20550 (x_new_font, x_set_window_size_1): Use it.
20551
20552 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
20553 (x_set_frame_parameters): Process `font' parameter before other
20554 parameters as fringe widths depend on it.
20555 (x_set_fringe_width): New function.
20556 (x_figure_window_size): Use x_compute_fringe_widths.
20557 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
20558 parameters.
20559
20560 * widget.c (set_frame_size): Use x_compute_fringe_widths.
20561 (EmacsFrameSetCharSize): Ditto.
20562
20563 * w32term.h: Merged changes from xterm.h.
20564 * w32term.c: Merged changes from xterm.c.
20565 * w32fns.c: Merged changes from xfns.c.
20566
20567 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20568
20569 * COPYING: Removed.
20570
20571 2001-11-29 Dave Love <fx@gnu.org>
20572
20573 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
20574 extra extra slot.
20575 (detect_coding_mask): Fix call of detect_coding_iso2022.
20576
20577 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20578
20579 * fileio.c (file-name-coding-system)
20580 (default-file-name-coding-system): Doc fix (links to referenced
20581 variables added).
20582
20583 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20584
20585 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
20586 Add dummy uses of gcproN variables.
20587
20588 * category.c (describe_category, describe_category_1)
20589 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
20590 (syms_of_category): Don't defsubr Sdescribe_categories.
20591
20592 2001-11-28 Richard M. Stallman <rms@gnu.org>
20593
20594 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
20595
20596 * Makefile.in (lispdir): New variable, referring to build dir.
20597 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
20598
20599 2001-11-28 Andrew Innes <andrewi@gnu.org>
20600
20601 * w32menu.c (w32_menu_display_help): Actually add the new argument
20602 OWNER.
20603
20604 2001-11-28 Jason Rumney <jasonr@gnu.org>
20605
20606 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
20607 menu items. From David Ponce <dponce@wanadoo.fr>.
20608 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
20609 conditionally.
20610 (w32_menu_display_help): New argument OWNER. Rewritten to store a
20611 help event in the owner frame's keyboard buffer.
20612
20613 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
20614 (Fx_show_tip): Don't subtract last width from row width.
20615
20616 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
20617 (w32_read_socket): Use EQ to compare frames.
20618
20619 2001-11-28 Gerd Moellmann <gerd@gnu.org>
20620
20621 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20622 OVERLAPS_P.
20623
20624 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20625
20626 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
20627 `gcpro3' and `gcpro4'.
20628
20629 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
20630
20631 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20632
20633 * ccl.c: Use AREF and ASIZE.
20634
20635 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
20636
20637 * lisp.h (run_hook_list_with_args): Remove.
20638 (LIST_END_P): Fix call to wrong_type_argument.
20639 (make_fixnum_or_float): Use EMACS_INT rather than int.
20640
20641 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
20642
20643 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
20644 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
20645
20646 * eval.c: Use AREF and ASIZE.
20647 (Ffetch_bytecode): Add the file name to the error message.
20648
20649 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
20650 which match the end of the file-name.
20651 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
20652 is not a valid env var, but leave it as is instead.
20653
20654 * keymap.c (access_keymap): Handle t bindings like nil bindings.
20655 Make nil bindings in char-tables transparent.
20656 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
20657
20658 2001-11-26 Richard M. Stallman <rms@gnu.org>
20659
20660 * textprop.c (set_text_properties_1): Allow START, END in either order.
20661 Do nothing if range is empty.
20662
20663 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
20664
20665 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
20666 (clean): Not here.
20667
20668 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20669
20670 * textprop.c (set_text_properties_1): Clearly mark that the
20671 interval should not be empty.
20672
20673 * intervals.c (graft_intervals_into_buffer):
20674 Don't call set_text_properties_1 on an empty interval.
20675
20676 2001-11-25 Richard M. Stallman <rms@gnu.org>
20677
20678 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
20679
20680 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
20681 don't lose the data in it.
20682
20683 2001-11-25 Juanma Barranquero <lektu@terra.es>
20684
20685 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
20686
20687 * buffer.c (Fkill_buffer): Likewise.
20688
20689 * print.c (temp_output_buffer_setup): Likewise.
20690
20691 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20692
20693 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
20694
20695 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
20696
20697 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
20698 Niemitalo <kon@iki.fi>.
20699
20700 2001-11-25 Jason Rumney <jasonr@gnu.org>
20701
20702 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
20703
20704 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
20705 (Fx_show_tip): Block input during frame creation.
20706 (Fx_show_tip, Fx_hide_tip): Enable.
20707
20708 2001-11-24 Richard M. Stallman <rms@gnu.org>
20709
20710 * lread.c (Fload): Detect recursive load error for more than 3
20711 nestings of the same file.
20712 (Vrecursive_load_depth_limit): Variable deleted.
20713 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
20714
20715 2001-11-24 Jason Rumney <jasonr@gnu.org>
20716
20717 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
20718 mouse position if either left or top is not specified.
20719
20720 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
20721 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
20722 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
20723 (my_create_tip_window): Assign tip_window.
20724 (x_create_tip_frame): Use same defaults as X.
20725 (compute_tip_xy): Remove unused variable. Use full screen width.
20726 (Fx_show_tip): Do not double height. Call ShowWindow directly.
20727
20728 * w32term.c (x_after_update_window_line): Doc fix.
20729 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
20730 frames.
20731 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
20732
20733 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
20734 for all Windowed systems.
20735
20736 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
20737
20738 * msdos.c (IT_clear_screen): If the frame's faces are not yet
20739 realized, use the initial screen colors to clear the screen.
20740
20741 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20742
20743 * textprop.c (Fset_text_properties): Remove unused variables
20744 `unchanged', `prev_changed', `s' and `len'.
20745
20746 * search.c (Freplace_match): Remove unused variable `inslen'.
20747
20748 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
20749
20750 2001-11-22 Jason Rumney <jasonr@gnu.org>
20751
20752 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
20753 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
20754 (my_create_tip_window): New function.
20755 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
20756 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
20757
20758 2001-11-20 Jason Rumney <jasonr@gnu.org>
20759
20760 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
20761 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
20762
20763 * w32fns.c (Vw32_system_coding_system): Remove.
20764 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
20765
20766 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
20767
20768 * fileio.c (Fwrite_region): Move choose_write_coding_system to
20769 after build_annotations.
20770
20771 * syntax.c (describe_syntax): Add dummy arg.
20772 (describe_syntax_1): Update call to describe_vector.
20773
20774 * category.c (describe_category): Add dummy arg.
20775 (describe_category_1): Update call to describe_vector.
20776
20777 * keymap.c (Fdescribe_vector): Add `describer' parameter.
20778 (describe_command, describe_translation): Add dummy second param.
20779 (describe_map): Call elt_describer with two arguments.
20780 (describe_vector_princ): Add `fun' parameter.
20781 Call it instead of the hardcoded `princ'.
20782 (describe_vector): Add arg `args'.
20783 Pass it as a new second argument to elt_describer.
20784
20785 * keymap.h (describe_vector): Update prototype.
20786
20787 * frame.c: Don't include keymap.h any more.
20788 (keys_of_frame): Remove.
20789
20790 * lisp.h (keys_of_frame): Remove declaration.
20791
20792 * emacs.c (main): Don't call `keys_of_frame' any more.
20793
20794 2001-11-14 Andreas Schwab <schwab@suse.de>
20795
20796 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
20797 if defined, 0 otherwise.
20798 (MAP_FAILED): Define if not defined and use it to test mmap failure.
20799 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
20800
20801 2001-11-19 Richard M. Stallman <rms@gnu.org>
20802
20803 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
20804
20805 2001-11-18 Jason Rumney <jasonr@gnu.org>
20806
20807 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
20808 (x_draw_bar_cursor): If the background color of the glyph under
20809 the cursor equals the frame's cursor color, use the glyph's
20810 foreground color for drawing the bar cursor.
20811 (x_after_update_window_line): Clear internal border in different
20812 circumstances.
20813 (w32_set_vertical_scroll_bar): Check for width and height > 0.
20814 (w32_draw_relief_rect): Correct relief by 1 pixel.
20815 (x_set_glyph_string_background_width):
20816 Set extends_to_end_of_line_p if the row's fill_line_p is set and
20817 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
20818 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
20819 if cursor_in_non_selected_windows is false.
20820 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
20821 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
20822 Notice if cursor gets overwritten.
20823 (notice_overwritten_cursor): Renamed from
20824 note_overwritten_text_cursor. Rewritten to take glyph widths
20825 into account, and to take X positions as parameters.
20826 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20827 around call to x_draw_glyphs.
20828 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20829 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20830 color to use for image glyph reliefs.
20831 (x_draw_image_relief): Accept zero tool_bar_button_relief.
20832 (glyph_rect): Remove unused variable `area'.
20833
20834 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
20835 some items.
20836 (x_set_internal_border_width): Set frame garbaged when window
20837 doesn't exist yet.
20838 (Fx_create_frame): Accept zero tool_bar_button_relief.
20839 (x_clear_image_1, four_corners_best, image_background)
20840 (image_background_transparent): New functions.
20841 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20842 (gs_format): Add `:background' entry.
20843 (lookup_image): Set IMG's background color if specified.
20844 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20845 when appropriate.
20846 (x_clear_image_1): Reset `background_valid' and
20847 `background_transparent_valid' fields.
20848 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20849 calculating it here. Set IMG's background_transparent field.
20850 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20851 (enum png_keyword_index): Add PNG_BACKGROUND.
20852 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20853 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20854 (enum gif_keyword_index): Add GIF_BACKGROUND.
20855 (enum gs_keyword_index): Add GS_BACKGROUND.
20856 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20857 Pre-calculate image background color where necessary.
20858 (x_create_x_image_and_pixmap, xbm_load, gs_load):
20859 Use display info's n_cbits entry for screen depth.
20860 (Fx_show_tip): Remove unused variables `buffer', `top',
20861 `left', `max_width' and `max_height'.
20862
20863 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
20864
20865 2001-11-18 Gerd Moellmann <gerd@gnu.org>
20866
20867 * puresize.h (BASE_PURESIZE): Increase to 750000.
20868
20869 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20870
20871 * frame.c (Fframe_live_p): Doc fix.
20872
20873 2001-11-18 Richard M. Stallman <rms@gnu.org>
20874
20875 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
20876 (message_dolog_marker3): New static variables hold three markers.
20877 (syms_of_xdisp): Initialize and staticpro them.
20878 (message_dolog): Use message_dolog_marker1..3 instead of
20879 allocating markers each time. Unchain them when done.
20880
20881 2001-11-17 Richard M. Stallman <rms@gnu.org>
20882
20883 * doc.c (Fsnarf_documentation): Doc fix.
20884
20885 2001-11-17 Andreas Schwab <schwab@suse.de>
20886
20887 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
20888
20889 2001-11-17 Richard M. Stallman <rms@gnu.org>
20890
20891 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
20892
20893 2001-11-17 Jason Rumney <jasonr@gnu.org>
20894
20895 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
20896
20897 2001-11-17 Gerd Moellmann <gerd@gnu.org>
20898
20899 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
20900 with invalid position.
20901
20902 2001-11-16 Richard M. Stallman <rms@gnu.org>
20903
20904 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
20905
20906 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
20907 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
20908 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
20909
20910 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
20911
20912 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20913
20914 * fileio.c (build_annotations): Split off the tail.
20915 (build_annotations_2): New fun. Extracted from build_annotations.
20916 (Fwrite_region): Split the call to build_annotations into two
20917 calls to build_annotations and build_annotations_2.
20918
20919 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20920
20921 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
20922 clear_waiting_for_input with argument.
20923
20924 * xterm.h (x_update_cursor): Remove duplicated prototype.
20925
20926 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
20927
20928 * xterm.c (waiting_for_input): Remove unnecessary declaration.
20929
20930 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
20931
20932 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20933
20934 * fileio.c (choose_write_coding_system): New fun, extracted
20935 from Fwrite_region.
20936 (Fwrite_region): Use it.
20937
20938 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
20939 (funcall_lambda, run_hook_with_args): Make static and add prototype.
20940 (ml_apply, find_handler_clause): Add prototype.
20941
20942 2001-11-16 Eli Zaretskii <eliz@gnu.org>
20943
20944 * config.in: Add #undef HAVE_COFF_H.
20945
20946 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
20947 Required for ISC 4.1.
20948
20949 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
20950
20951 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
20952 Andrew Wiseman <a.wiseman@btclick.com>.
20953
20954 2001-11-16 Kim F. Storm <storm@cua.dk>
20955
20956 The following changes are made to clean up the various internal
20957 references to the fringes to actually use the term `fringe' for
20958 them. Previously, they were called `flags areas', `bitmap areas',
20959 `left/right side of windows', or implicitly as `flags' or
20960 `bitmaps':
20961
20962 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
20963 Comments fixed. Use renamed symbols.
20964
20965 * dispnew.c: Comment fix. Use renamed symbols.
20966
20967 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
20968 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
20969 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
20970
20971 * msdos.c: Comment fix.
20972
20973 * w32fns.c: Use renamed symbols.
20974
20975 * w32term.c: Comment fixes. Use renamed symbols.
20976 (fringe_bitmap_type): Renamed from bitmap_type.
20977 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20978 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
20979 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20980
20981 * w32term.h: Comment fixes. Use renamed symbols.
20982 (fringes_extra): Renamed from flags_areas_extra.
20983 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20984 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20985 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20986 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20987 (FRAME_X_LEFT_FRINGE_WIDTH):
20988 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20989 (FRAME_X_RIGHT_FRINGE_WIDTH):
20990 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20991
20992 * widget.c: Use renamed symbols.
20993
20994 * window.c: Comment fixes. Use renamed symbols.
20995 (coordinates-in-window-p): Doc fix.
20996
20997 * xdisp.c: Comment fixes. Use renamed symbols.
20998
20999 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
21000
21001 * xfns.c: Use renamed symbols.
21002
21003 * xterm.c: Comment fixes. Use renamed symbols.
21004 (fringe_bitmap_type): Renamed from bitmap_type.
21005 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
21006 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
21007 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
21008
21009 * xterm.h: Comment fixes. Use renamed symbols.
21010 (fringes_extra): Renamed from flags_areas_extra.
21011 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
21012 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
21013 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
21014 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
21015 (FRAME_X_LEFT_FRINGE_WIDTH):
21016 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
21017 (FRAME_X_RIGHT_FRINGE_WIDTH):
21018 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
21019
21020 2001-11-15 Jason Rumney <jasonr@gnu.org>
21021
21022 * w32menu.c (add-menu-item): Make help_echo and radio buttons
21023 work for most menu items. From David Ponce
21024 <david.ponce@wanadoo.fr>.
21025
21026 2001-11-15 Gerd Moellmann <gerd@gnu.org>
21027
21028 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
21029 Some x_set_* function expect to be called even if old and new
21030 value are equal.
21031
21032 * xdisp.c (build_desired_tool_bar_string): Accept zero
21033 tool_bar_button_relief.
21034
21035 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
21036
21037 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
21038
21039 * xterm.c (x_draw_bar_cursor): If the background color of the
21040 glyph under the cursor equals the frame's cursor color, use
21041 the glyph's foreground color for drawing the bar cursor.
21042
21043 * dispnew.c (direct_output_forward_char): Fix character/byte
21044 position comparison.
21045
21046 2001-11-15 Miles Bader <miles@gnu.org>
21047
21048 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
21049 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
21050 Update arguments to find_field.
21051 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
21052 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
21053 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
21054 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
21055
21056 2001-11-14 Richard M. Stallman <rms@gnu.org>
21057
21058 * editfns.c (Fpropertize): Allow call with 1 arg.
21059
21060 * dispextern.h (image_background, image_background_transparent):
21061 Conditionalize on HAVE_X_WINDOWS.
21062
21063 2001-11-13 Richard M. Stallman <rms@gnu.org>
21064
21065 * print.c (Fprin1_to_string): Doc fix.
21066
21067 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
21068
21069 * floatfns.c (Fceiling, Ffloor): Doc fixes.
21070
21071 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
21072
21073 * fileio.c (Ffile_accessible_directory_p): Doc fix.
21074
21075 * eval.c (syms_of_eval): Doc fix.
21076
21077 * coding.c (syms_of_coding): Doc fix.
21078
21079 * doc.c (Fsnarf_documentation): Doc fix.
21080
21081 * dispnew.c (syms_of_display): Doc fix.
21082
21083 * category.c (Fget_unused_category): Doc fix.
21084
21085 * buffer.c (syms_of_buffer): Doc fixes.
21086
21087 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
21088
21089 * print.c (prin1, print): Doc fix.
21090
21091 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21092
21093 * fontset.h: Remove declarations of variables
21094 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
21095
21096 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
21097 `Vclip_large_size_font'.
21098
21099 2001-11-13 Jason Rumney <jasonr@gnu.org>
21100
21101 * w32fns.c: Doc fix.
21102
21103 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21104
21105 * xfaces.c (Fface_attributes_as_vector): Doc fix.
21106
21107 * fns.c: Doc fix.
21108
21109 * emacs.c: Doc fix.
21110
21111 * coding.c: Doc fix.
21112
21113 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
21114 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
21115 `new style' [w/`doc:' keyword].
21116
21117 2001-11-12 Richard M. Stallman <rms@gnu.org>
21118
21119 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
21120 LeaveNotify events. Only FocusIn and FocusOut do that now.
21121 (x_display_and_set_cursor): Do display hollow cursors in active
21122 minibuffer windows when they are not selected.
21123
21124 2001-11-12 Jason Rumney <jasonr@gnu.org>
21125
21126 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
21127 * w32term.c: Change doc-string comments to `new style'
21128 [w/`doc:' keyword]. Doc fixes.
21129
21130 * w32fns.c: Don't define max.
21131 (Fx_open_connection): Only execute once.
21132
21133 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21134
21135 * ccl.c: Change macros to use do-while block instead of if-else.
21136 Use braces to follow GNU Coding Standards.
21137
21138 2001-11-11 Richard M. Stallman <rms@gnu.org>
21139
21140 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
21141
21142 * lread.c (read_escape): Use end_of_file_error for reporting eof.
21143
21144 * insdel.c (replace_range): Use adjust_markers_for_replace
21145 instead of adjust_markers_for_delete and adjust_markers_for_insert.
21146
21147 * intervals.h (set_text_properties, set_text_properties_1): Declare.
21148
21149 * textprop.c (set_text_properties_1): New subroutine
21150 broken out of set_text_properties.
21151 (set_text_properties): Use set_text_properties_1.
21152
21153 * intervals.c (graft_intervals_into_buffer):
21154 Use set_text_properties_1 to clear out properties.
21155
21156 * search.c (Freplace_match): Use replace_range to insert
21157 and delete. Don't request property inheritance from
21158 surrounding text.
21159
21160 2001-11-10 Jason Rumney <jasonr@gnu.org>
21161
21162 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
21163 vertical fonts. Allow them if face name is explicitly specified.
21164 Do not give up if we find a font that cannot be converted to an xlfd.
21165
21166 2001-11-10 Gerd Moellmann <gerd@gnu.org>
21167
21168 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
21169 instead of malloc/free.
21170
21171 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21172
21173 * xfaces.c (merge_face_vectors): Use braces to follow GNU
21174 Coding Standards.
21175 (Finternal_set_lisp_face_attribute): Likewise.
21176
21177 * buffer.c (Fbury_buffer): Likewise.
21178
21179 * indent.c (current_column_1): Remove unused variable `prev_col'.
21180
21181 * coding.c (encode_coding): Use precomputed value of `src'.
21182 (encode_coding): Remove unused variable `src_end'.
21183 (code_convert_region): Remove unused variables `count'.
21184
21185 2001-11-07 Jason Rumney <jasonr@gnu.org>
21186
21187 * w32term.c (x_display_and_set_cursor): Do not move system caret
21188 if cursor_glyph is NULL.
21189
21190 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21191
21192 * keymap.c (access_keymap): Fix compilation error.
21193
21194 2001-11-07 Miles Bader <miles@gnu.org>
21195
21196 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
21197
21198 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21199
21200 * intervals.c (graft_intervals_into_buffer):
21201 Remove #ifdef'd-out code.
21202 (graft_intervals_into_buffer): Remove unused variable `middle'.
21203
21204 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
21205 code (eval-current-buffer).
21206 Change doc-string comments to `new style' [w/`doc:' keyword].
21207
21208 2001-11-06 Richard M. Stallman <rms@gnu.org>
21209
21210 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
21211
21212 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
21213
21214 * lread.c (read1): Fix behavior with nested backquoting.
21215
21216 * keyboard.c (make_lispy_event): Check integerness and fix
21217 Lisp_Object/int mixup.
21218
21219 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21220
21221 * fns.c (copy_hash_table): Remove unused variable `v'.
21222
21223 * fontset.c (fontset_font_pattern): Remove unused variable
21224 `family_registry'.
21225
21226 * indent.c (current_column_1): Remove unused variable `prev_col'.
21227
21228 2001-11-05 Richard M. Stallman <rms@gnu.org>
21229
21230 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
21231
21232 * buffer.c (Fkill_buffer): Don't delete auto save file
21233 if buffer is modified.
21234
21235 2001-11-05 Andrew Innes <andrewi@gnu.org>
21236
21237 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
21238 CHECK_NUMBER_CDR.
21239
21240 2001-11-05 Richard M. Stallman <rms@gnu.org>
21241
21242 * unexelf.c (unexec): Minor changes; clean up comments.
21243
21244 2001-11-05 Sam Steingold <sds@gnu.org>
21245
21246 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
21247
21248 2001-11-05 Andreas Schwab <schwab@suse.de>
21249
21250 * sound.c (sound_perror): Save errno from being clobbered.
21251
21252 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
21253
21254 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
21255 the program image directly.
21256
21257 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21258
21259 * buffer.h (Fbuffer_local_value): Add prototype.
21260
21261 2001-11-04 Richard M. Stallman <rms@gnu.org>
21262
21263 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
21264 and CHECK_BUFFER.
21265
21266 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
21267 (record_char): Likewise.
21268
21269 * keyboard.c (make_lispy_event): Don't insist a drag event must
21270 move to a different buffer position. Instead, check for moving at
21271 least double_click_fuzz.
21272
21273 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
21274
21275 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
21276
21277 * indent.c (current_column_1, Fmove_to_column): Separate the code
21278 for display-table glyphs from the code for buffer text, to fix
21279 bugs in the former.
21280
21281 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
21282
21283 * buffer.c (Fbuffer_local_value): New function.
21284 (syms_of_buffer): Defsubr it.
21285
21286 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
21287 value of `cursor-in-non-selected-windows'.
21288
21289 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
21290 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
21291 (syms_of_xdisp): Initialize it.
21292
21293 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21294
21295 * xfns.c (Fx_create_frame): Doc fix.
21296
21297 * coding.c: Change doc-string comments to `new style' [w/`doc:'
21298 keyword].
21299
21300 * eval.c (top_level_value, top_level_set): Remove commented and
21301 #ifdef'd-out code.
21302 (Fdefvar): Fix usage in doc-string.
21303
21304 2001-11-03 Richard M. Stallman <rms@gnu.org>
21305
21306 * xfns.c: Include unistd.h, if it exists.
21307
21308 * editfns.c: Move the include of ctype.h after unistd.h.
21309
21310 * gmalloc.c: Test BROKEN_PROTOTYPES.
21311
21312 2001-11-03 Ken Raeburn <raeburn@gnu.org>
21313
21314 * lisp.h (CHECK_STRING_CAR): New macro.
21315 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
21316 treating XCAR and XCDR as lvalues.
21317 (openp): Use CHECK_STRING_CAR.
21318 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
21319
21320 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
21321
21322 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
21323 (SIGMASKTYPE): Define.
21324
21325 * syssignal.h (sigunblock): Don't define if already defined.
21326
21327 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21328
21329 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
21330 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
21331 Fix typos in comments.
21332
21333 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
21334 and #ifdef'd-out code.
21335 Fix and reindent comments.
21336
21337 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
21338
21339 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
21340 argument `i' in macros.
21341
21342 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
21343 `i' in macros.
21344
21345 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
21346 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
21347 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
21348 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
21349 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
21350 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
21351 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
21352 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
21353 in macros.
21354
21355 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
21356 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
21357 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
21358 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
21359 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
21360 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
21361 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
21362 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
21363 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
21364 (remove unused second argument).
21365
21366 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
21367
21368 * syntax.c (describe_syntax): New wrapper.
21369 (Finternal_describe_syntax_value): Rename from describe_syntax.
21370 Don't insert space at front and \n at the end.
21371 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
21372
21373 * regex.c (re_wctype): Try to fix some warnings.
21374 (regcomp, regexec): Don't forget the __restrict.
21375
21376 2001-11-02 Richard M. Stallman <rms@gnu.org>
21377
21378 * textprop.c (Fget_char_property): Doc fix.
21379
21380 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21381
21382 * process.c (Fstart_process): Add usage to doc-string.
21383
21384 * data.c (Fsetq_default): Ditto.
21385
21386 * callint.c (Finteractive): Ditto.
21387
21388 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
21389
21390 * macros.c: Don't include keymap.h any more.
21391
21392 2001-11-01 Richard M. Stallman <rms@gnu.org>
21393
21394 * data.c (Fmake_local_variable): Doc fix.
21395
21396 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
21397 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
21398
21399 * keymap.c (Fdescribe_buffer_bindings): Print character property
21400 bindings along with or instead of the buffer local map.
21401 Make the overriding maps override what they should.
21402
21403 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21404
21405 * window.c (grow_mini_window): Fix typo in comment.
21406
21407 2001-11-01 Gerd Moellmann <gerd@gnu.org>
21408
21409 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
21410 (XTset_vertical_scroll_bar): Likewise.
21411
21412 * xfns.c (x_build_heuristic_mask): Use four_corners_best
21413 instead of IMAGE_BACKGROUND.
21414
21415 * xfns.c (four_corners_best): Reindent.
21416
21417 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
21418 Handle :box so that it is possible to specify sexprs.
21419
21420 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
21421
21422 * s/hpux11.h: New file.
21423
21424 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21425
21426 * emacs.c (USAGE1): Show command line option --no-window-system
21427 instead of --no-windows in usage.
21428 (standard_args): Rename --no-windows to --no-window-system.
21429 (bug_reporting_address): Follow Emacs coding conventions.
21430
21431 * eval.c (Fcommandp): Doc fix.
21432 Change doc-string comments to `new style' [w/`doc:' keyword].
21433
21434 * frame.c (Fframe_live_p): Doc fix.
21435
21436 * buffer.c (selective-display-ellipses): Doc fix.
21437
21438 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21439
21440 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
21441
21442 * xfaces.c (realize_x_face): If C is not a single-byte character,
21443 set the face's colors_copied_bitwise_p instead of the defaulted_p
21444 members which have a different meaning.
21445 (free_face_colors): Do nothing for a face whose colors have been
21446 copied bitwise.
21447
21448 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
21449
21450 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21451
21452 * marker.c, mocklisp.c: Change doc-string comments to `new style'
21453 [w/`doc:' keyword].
21454
21455 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21456
21457 * fns.c (require_unwind): Return Lisp_Object.
21458
21459 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21460
21461 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
21462 (last-input-char): Revert doc-string to be the same as the
21463 doc-string of `last-input-event'.
21464
21465 * xdisp.c: Fix typos in comments.
21466
21467 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21468
21469 * window.c (grow_mini_window): Handle case that the root
21470 window is already smaller than the nominal mininum height.
21471
21472 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
21473
21474 * emacs.c (main): Don't call keys_of_macros any more.
21475
21476 * lisp.h (keys_of_macros): Remove.
21477
21478 * macros.c (keys_of_macros): Remove.
21479
21480 * xfaces.c (Fface_attribute_relative_p): Declare args.
21481
21482 2001-10-30 Jason Rumney <jasonr@gnu.org>
21483
21484 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
21485 (enum_font_cb2): Ignore fonts with vertical orientation.
21486
21487 2001-10-30 Richard M. Stallman <rms@gnu.org>
21488
21489 * keyboard.c (Finput_pending_p): Doc fix.
21490
21491 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21492
21493 * xterm.c (x_after_update_window_line): Don't run the code
21494 clearing in borders for rows whose visible height is 0.
21495
21496 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21497 resized_p flag is set. If not set, use the much less flickering
21498 method previously used.
21499
21500 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21501
21502 * frame.h (struct frame) <resized_p>: New member.
21503
21504 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21505 as large as the number of bytes to convert.
21506
21507 * lread.c (to_multibyte): New function.
21508 (read1): Use it.
21509
21510 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21511
21512 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21513
21514 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21515
21516 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21517 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21518 if the row's fill_line_p is set and drawing the last glyph with
21519 DRAW_IMAGE_{RAISED,SUNKEN}.
21520
21521 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21522
21523 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21524
21525 * xmenu.c: Include coding.h and charset.h.
21526 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21527 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21528 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21529 Explicitly set wv->help. Use `TRUE' rather than `True'.
21530 (menu_help_callback): Use empty_string.
21531
21532 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21533 (Fx_popup_dialog): Explicitly init f.
21534 (w32_menu_display_help): Use empty_string.
21535
21536 2001-10-29 Richard M. Stallman <rms@gnu.org>
21537
21538 * fns.c (Frequire): Detect recursive try to require the same
21539 feature 3 or more levels deep, and get error.
21540 (require_unwind): New subroutine.
21541 (require_nesting_list): New variable.
21542 (syms_of_fns): Init and staticpro it.
21543
21544 * print.c (print_object): Clarify indication of insertion type.
21545
21546 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21547
21548 * coding.c (syms_of_coding): Document that locale-coding-system is
21549 used for decoding input on X.
21550
21551 * window.c (Fscroll_left, Fscroll_right): Doc fix.
21552
21553 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21554
21555 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
21556 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
21557
21558 2001-10-29 Gerd Moellmann <gerd@gnu.org>
21559
21560 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
21561 use NO_CURSOR if cursor_in_non_selected_windows is false.
21562
21563 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
21564 the slant attribute if FRAME is t.
21565
21566 * xfns.c (x_set_internal_border_width): Set frame garbaged
21567 when X window doesn't exist yet.
21568
21569 * xterm.c (x_after_update_window_line): Clear internal border
21570 in different circumstances.
21571
21572 * xterm.c (XTread_socket) <KeyPress>: Don't use
21573 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
21574 <handa@etl.go.jp>.
21575
21576 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
21577
21578 * m/ibms390.h: New file. From Adam Thornton
21579 <athornton@sinenomine.net>.
21580
21581 2001-10-28 Gerd Moellmann <gerd@gnu.org>
21582
21583 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
21584
21585 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
21586 a loop counter.
21587
21588 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21589
21590 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
21591
21592 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
21593 keyword].
21594 Fix typos in comments.
21595
21596 * emacs.c (bug_reporting_address): New function.
21597 Use it when displaying usage message.
21598
21599 * minibuf.c (read_minibuf): Remove unused external declaration of
21600 variable `Qread_only'.
21601
21602 * keymap.c (access_keymap): Remove unused variable `charset'.
21603
21604 2001-10-28 Miles Bader <miles@gnu.org>
21605
21606 * xfaces.c (merge_face_heights): Handle TO being relative as well.
21607 Remove #ifdef'd-out code.
21608 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
21609 (syms_of_xfaces): Initialize them.
21610
21611 2001-10-27 Jason Rumney <jasonr@gnu.org>
21612
21613 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
21614 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
21615 position using the system caret.
21616
21617 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
21618 (w32_system_caret_height, w32_system_caret_x)
21619 (w32_system_caret_y): New variables for tracking system caret.
21620 (w32_initialize): Initialize them.
21621 (x_display_and_set_cursor): Make system caret follow the active cursor.
21622
21623 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
21624 New messages types.
21625
21626 * w32term.c (note_mouse_highlight): Clear old help_echo.
21627
21628 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21629
21630 * xterm.c: Fix typo in a comment.
21631
21632 * emacs.c: Fix typos in comments.
21633 Remove unnecessary spaces.
21634 Change doc-string comments to `new style' [w/`doc:' keyword].
21635 (USAGE2): Fix typos in usage string.
21636
21637 * xterm.c: Fix typo in a comment.
21638
21639 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
21640 emacs.c.
21641
21642 2001-10-27 Gerd Moellmann <gerd@gnu.org>
21643
21644 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
21645 instead of 1/2 line_height in the heuristic for skipping
21646 farther backward when target_y was not reached.
21647
21648 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
21649 Display errno only if non-zero.
21650 (sound_warning): New function.
21651 (vox_configure): Don't treat failing to set sample rate as error.
21652 (various places): Improve error messages.
21653
21654 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
21655
21656 * fileio.c (Faccess_file): Run the argument filename through
21657 Fexpand_file_name, before using it.
21658
21659 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
21660 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
21661
21662 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21663
21664 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
21665
21666 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21667 Fix clearing in the case of scroll bars on the right.
21668
21669 2001-10-26 Juanma Barranquero <lektu@terra.es>
21670
21671 * w32gui.h (XImage): Add a dummy typedef.
21672
21673 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21674
21675 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
21676
21677 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
21678
21679 * frame.c (Fframe_parameter): Fix last change.
21680
21681 * fileio.c: Revert last change (which removed old commented-out
21682 version of expand-file-name). Add a comment that explains why
21683 this old version should not be removed.
21684
21685 2001-10-25 Gerd Moellmann <gerd@gnu.org>
21686
21687 * frame.c (Fframe_parameter): Fix a bug whereby some
21688 ``artificial'' frame parameters, like `minibuffer' were not
21689 obtained by calling Fframe_parameters.
21690
21691 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
21692 cursor differently.
21693
21694 * xdisp.c (move_it_vertically_backward): Compute line height
21695 differently. Add heuristic to try to be more compatible to 20.x.
21696
21697 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
21698
21699 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
21700
21701 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
21702 boolean.
21703
21704 2001-10-25 Miles Bader <miles@gnu.org>
21705
21706 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
21707 BG is a pointer to a structure, not a structure.
21708 (gif_format, png_format): Add missing commas.
21709
21710 2001-10-24 Richard M. Stallman <rms@gnu.org>
21711
21712 * xfaces.c (Fface_attributes_as_vector): New function.
21713 (syms_of_xfaces): Defsubr it.
21714
21715 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21716
21717 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
21718 variable `area'.
21719
21720 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21721
21722 * search.c (scan_newline): Remove unused variable `selective_display'.
21723
21724 2001-10-25 Miles Bader <miles@gnu.org>
21725
21726 * dispextern.h (struct image): Add `background',
21727 `background_valid', and `background_transparent' fields.
21728 (image_background, image_background_transparent): New declarations.
21729 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
21730 * xfns.c (image_background, image_background_transparent)
21731 (four_corners_best): New functions.
21732 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21733 (gs_format): Add `:background' entry.
21734 (lookup_image): Set IMG's background color if specified.
21735 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21736 when appropriate.
21737 (x_clear_image_1): Reset `background_valid' and
21738 `background_transparent_valid' fields.
21739 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21740 calculating it here. Set IMG's background_transparent field.
21741 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21742 (enum png_keyword_index): Add PNG_BACKGROUND.
21743 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21744 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21745 (enum gif_keyword_index): Add GIF_BACKGROUND.
21746 (enum gs_keyword_index): Add GS_BACKGROUND.
21747 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21748 Pre-calculate image background color where necessary.
21749 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21750 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21751 color to use for image glyph reliefs.
21752
21753 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21754
21755 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
21756 in full-width rows.
21757
21758 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21759 Fix clearing of area not covered by scroll bar.
21760
21761 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21762
21763 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
21764 and `real_start'.
21765 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
21766 (glyph_rect): Remove unused variable `area'.
21767
21768 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21769
21770 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
21771
21772 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
21773 (row_containing_pos): Take additional argument DY.
21774 Treat rows ending in middle of char differently.
21775 (display_line): Handle tabs on window systems differently.
21776
21777 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
21778 with additional argument.
21779
21780 * dispextern.h (row_containing_pos): Adjust prototype.
21781
21782 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
21783 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
21784 (try_window_id, try_window_reusing_current_matrix)
21785 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
21786 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
21787
21788 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21789
21790 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
21791 gnuemacs).
21792 (HAVE_BOXES): Fix typo in comment.
21793 (push_menu_pane): Fix typo in comment.
21794
21795 * xdisp.c (display_prop_string_p): Remove unused local declaration
21796 of `Qwhen'.
21797 (single_display_prop_string_p): Remove unused local declarations
21798 of `Qwhen' and `Qmargin'.
21799 (string_buffer_position): Remove unused variable `around'.
21800 (store_frame_title): Remove unused variable `width'.
21801
21802 * window.c: Don't define max.
21803 (coordinates_in_window): Remove unused variable `uy'.
21804
21805 * widget.c: Don't define max.
21806
21807 * process.c: Don't define max.
21808 (create_process): Remove unused variable `buffer'.
21809
21810 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21811
21812 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
21813
21814 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
21815
21816 * xfaces.c (Finternal_set_lisp_face_attribute)
21817 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
21818 frame is on a windowed display.
21819
21820 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21821
21822 * dispnew.c (sync_window_with_frame_matrix_rows):
21823 Fix handling of windows which aren't full-width, fix handling
21824 of marginal areas.
21825
21826 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
21827
21828 2001-10-23 Andreas Schwab <schwab@suse.de>
21829
21830 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
21831 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
21832
21833 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21834
21835 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
21836 REAL_END. Notice if cursor gets overwritten.
21837 (notice_overwritten_cursor): Take X positions as parameters.
21838 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21839 around call to x_draw_glyphs.
21840
21841 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21842
21843 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
21844 instead of C) and usage.
21845
21846 * editfns.c (char-to-string): Fix argument names (use CHAR instead
21847 of C) and usage.
21848
21849 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
21850 `left', `max_width' and `max_height'.
21851
21852 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21853
21854 * xdisp.c (display_line): For a tab continued to the next line,
21855 set row's ends_in_middle_of_char_p.
21856
21857 2001-10-22 Gerd Moellmann <gerd@gnu.org>
21858
21859 * xdisp.c (display_line): Fix computation of continuation lines
21860 width for TABs.
21861
21862 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21863
21864 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
21865 `Qlaplace'.
21866
21867 * fileio.c: Remove unused code.
21868
21869 2001-10-22 Miles Bader <miles@gnu.org>
21870
21871 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
21872 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
21873 Remove `DOC_STRINGS_IN_COMMENTS' cases.
21874
21875 2001-10-21 Jason Rumney <jasonr@gnu.org>
21876
21877 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
21878
21879 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
21880
21881 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
21882 (Finsert_string): Avoid the multi-line string literals warning.
21883
21884 2001-10-22 Miles Bader <miles@gnu.org>
21885
21886 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
21887 (Fdocumentation): Don't use it.
21888 (syms_of_doc): Don't initialize it.
21889
21890 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
21891 * print.c (Fwith_output_to_temp_buffer): Likewise.
21892 * window.c (Fsave_window_excursion): Likewise.
21893 * editfns.c (Fsave_excursion, Fsave_current_buffer)
21894 (Fsave_restriction): Likewise.
21895 * eval.c (Frun_hooks, Frun_hook_with_args)
21896 (Frun_hook_with_args_until_failure)
21897 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
21898 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
21899 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
21900 (Funwind_protect, Fcondition_case): Likewise.
21901 * coding.c (Ffind_operation_coding_system): Likewise.
21902 * keyboard.c (Ftrack_mouse): Likewise.
21903
21904 2001-10-21 Miles Bader <miles@gnu.org>
21905
21906 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
21907 (Fmake_hash_table): Add usage: string to doc string.
21908 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
21909 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
21910 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
21911 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
21912 (Fml_prefix_argument_loop): Likewise.
21913
21914 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21915
21916 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
21917
21918 * sysdep.c (init_sys_modes): Change doc-string comments to `new
21919 style' [w/`doc:' keyword].
21920
21921 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
21922 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
21923 comments to `new style' [w/`doc:' keyword].
21924
21925 2001-10-21 Jason Rumney <jasonr@gnu.org>
21926
21927 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
21928
21929 * w32term.c (remember_mouse_glyph): New function.
21930 (w32_mouse_position): Use it.
21931 (note_mouse_movement): If the mouse moved off the glyph, remember
21932 its new position.
21933
21934 * w32term.h (struct w32_output): Correct spelling of x_compatible.
21935 (w32_display_info): Add mouse_face_overlay.
21936
21937 * w32term.c (notice_overwritten_cursor): Renamed from
21938 note_overwritten_text_cursor. Rewritten to take glyph widths into
21939 account.
21940 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
21941 (fast_find_string_pos): New function.
21942 (fast_find_position): Return the correct vpos. Add parameter
21943 STOP. In the final row, stop before glyphs having STOP as object.
21944 Don't consider glyphs that are not from a buffer.
21945 (fast_find_position) [0]: Add a presumably more correct version
21946 for after 21.1.
21947 (expose_window_tree, expose_frame): Don't compute intersections here.
21948 (expose_window): Do it here instead.
21949 (expose_window_tree, expose_window, expose_line): Return 1 when
21950 overwriting mouse-face.
21951 (expose_window): If W is the window currently being updated, mark
21952 the frame garbaged.
21953 (expose_frame): If mouse-face was overwritten, redo it.
21954 (x_use_underline_position_properties): New variable.
21955 (syms_of_xterm): DEFVAR_BOOL it.
21956 (x_draw_glyph_string): Add comment to use it in future.
21957 (x_draw_glyph_string): Restore clipping after drawing box.
21958 Fix a computation of the underline position.
21959 (w32_get_glyph_string_clip_rect): Minor cleanup.
21960 (x_fill_stretch_glyph_string): Remove an assertion.
21961 (x_produce_glyphs): Don't convert multibyte characters
21962 to unibyte characters in unibyte buffers.
21963 (cursor_in_mouse_face_p): New function.
21964 (x_draw_stretch_glyph_string): Use it to choose a different GC
21965 when drawing a cursor within highlighted text. Don't draw
21966 background again if it has already been drawn.
21967 (x_draw_glyph_string_box): Don't draw a full-width
21968 box just because the glyph row's full_width_p flag is set.
21969 (x_draw_glyphs): Fix computation of rightmost x for
21970 full-width rows.
21971 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
21972 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
21973 change bottom shadow accordingly. Some cleanup.
21974 (x_update_window_end): Handle overwritten mouse face
21975 also for tool bar windows.
21976 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
21977 DRAW is DRAW_IMAGE_RAISED.
21978 (clear_mouse_face): Return 1 if text with mouse face was
21979 actually redrawn. Make the function static.
21980 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
21981 optimize away highlighting if we pass over that same overlay again.
21982 (note_mouse_highlight): Call mouse_face_overlay_overlaps
21983 to detect a case where we have to highlight a different region
21984 despite not having left the currently highlighted region.
21985 Set mouse_face_overlay in the x_display_info. Avoid changing the
21986 mouse pointer shape when show_mouse_face has already done it, or
21987 there is no need. Handle mouse-face and help-echo in strings.
21988 (glyph_rect): New function.
21989 (w32_mouse_position): Use it to raise the threshold for mouse
21990 movement event generation.
21991 (w32_initialize_display_info): Initialize the x_display_info's
21992 mouse_face_overlay.
21993 (w32_set_vertical_scroll_bar): Don't clear a zero height
21994 or width area.
21995 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
21996 a widget to zero height.
21997
21998 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
21999 Protect unibyte strings created by replacing their multibyte
22000 equivalents in menu_items.
22001 (w32_menu_show): Don't overwrite an item's name with its key
22002 description in case the description is a multibyte string.
22003 (single_submenu): Some cleanup.
22004
22005 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
22006 (postprocess_image): New function.
22007 (lookup_image): Call it for all image types except PostScript.
22008 (x_kill_gs_process): Call postprocess_image.
22009 (tiff_error_handler, tiff_warning_handler): New functions.
22010 (tiff_load): Install them as handlers.
22011 (x_kill_gs_process): Recognize if someone has cleared the image
22012 cache under us.
22013 (valid_image_p): Protect better against invalid image
22014 specifications. Previous code could signal an error.
22015 (Fx_hide_tip, Fshow_tip): Doc fix.
22016 (Fv_max_tooltip_size): New variable.
22017 (syns_of_xfns): DEFVAR_LISP it.
22018 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
22019 window buffer to *tip* right after creating the frame. Set frame's
22020 window_width. Use a maximum tooltip size specified by
22021 Vx_max_tooltip_size, if that has valid contents.
22022 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
22023 Make sure the tooltip is completely visible.
22024 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
22025 (Fx_create_frame): Adjust the frame's height for presence
22026 of the tool bar before calling x_figure_window_size.
22027 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
22028 when the window gets smaller.
22029 (x_set_foreground_color): Set frame's cursor_pixel.
22030 (x_set_foreground_color, x_set_background_color): Cleaned up.
22031 (x_set_font): Handle case of x_new_fontset returning the same name
22032 as before, although there was a change in fontsets.
22033
22034 2001-10-21 Miles Bader <miles@gnu.org>
22035
22036 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
22037 (Flogxor): Add usage: string to doc string.
22038 * charset.c (Fstring): Likewise.
22039 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
22040 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
22041
22042 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22043
22044 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
22045
22046 * alloc.c: Reindent DEFUNs with doc: keywords.
22047
22048 * abbrev.c (Finsert_abbrev_table_description): Reindent.
22049
22050 * frame.c: Change doc-string comments to `new style' [w/`doc:'
22051 keyword].
22052
22053 See ChangeLog.9 for earlier changes.
22054
22055 ;; Local Variables:
22056 ;; coding: iso-2022-7bit
22057 ;; End:
22058
22059 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
22060 Copying and distribution of this file, with or without modification,
22061 are permitted provided the copyright notice and this notice are preserved.
22062
22063 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4