]> code.delx.au - gnu-emacs/blob - src/ChangeLog
* xfns.c (Fx_uses_old_gtk_dialog): New function.
[gnu-emacs] / src / ChangeLog
1 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * xfns.c (Fx_uses_old_gtk_dialog): New function.
4
5 * gtkutil.c (xg_uses_old_file_dialog): New function.
6 (xg_get_file_name): Use xg_uses_old_file_dialog.
7
8 * gtkutil.h: Declare xg_uses_old_file_dialog.
9
10 2005-12-22 Richard M. Stallman <rms@gnu.org>
11
12 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
13
14 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
15
16 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
17
18 * macgui.h (XCharStruct): Remove member `valid_p'.
19 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
20 (XCharStructRow): New typedef.
21 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID): New
22 macros.
23 (struct MacFontStruct): Add member `bounds'. Remove member
24 `per_char'. All uses for QuichDraw Text fonts are changed to
25 `bounds.per_char'. ATSUI font bounds are represented as an array
26 `bounds.rows' of XCharStructRow's, each of which consists of a
27 bitmap of valid entries and an array of char bounds.
28
29 * macterm.c (mac_per_char_metric): Add prototype.
30 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
31 (mac_query_char_extents): New function.
32 (x_per_char_metric): Use it.
33 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
34 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Use
35 mac_per_char_metric instead of x_per_char_metric.
36 (mac_text_extents_16): New function.
37 (mac_compute_glyph_string_overhangs): Use it.
38 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
39
40 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
41
42 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
43 (Fminibuffer_completion_help): Remove duplicates before display.
44
45 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
46
47 * print.c (print_preprocess): Don't lose print_depth levels while
48 iterating.
49
50 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
51
52 * macmenu.c (Qmac_apple_event): Add extern.
53 (set_frame_menubar, mac_menu_show keymp_panes)
54 (single_keymap_panes, list_of_panes, list_of_item)
55 (single_menu_item): Add argument types to prototypes.
56 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
57 (struct skp): New struct (from xmenu.c).
58 (single_keymap_panes, single_menu_item, list_of_panes)
59 (list_of_item): Sync with xmenu.c.
60 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
61 POSITION if it is mac-apple-event event.
62 (menubar_selection_callback): Don't use menu_command_in_progress.
63 (set_frame_menubar): First parse all submenus, then make
64 widget_value trees from them. Don't allocate any widget_value
65 objects until we are done with the parsing.
66 (parse_single_submenu, digest_single_submenu): New functions.
67 (single_submenu): Function deleted, replaced by those two.
68 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
69 create or dispose of EventHandlerUPP. Install hander to all submenus.
70 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
71 instead of ENCODE_SYSTEM.
72 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
73 integer values.
74 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
75 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
76 format menu item string. Don't use NULL for integer value.
77
78 * macterm.h (struct mac_output): Remove unused member
79 menu_command_in_progress.
80
81 2005-12-20 Juri Linkov <juri@jurta.org>
82
83 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
84 position is non-nil, else set it to nil.
85
86 * macmenu.c (Fx_popup_menu): Add `else' to set
87 Vmenu_updating_frame to nil only if position is nil.
88
89 * w32menu.c (Fx_popup_menu): Add `else' to set
90 Vmenu_updating_frame to nil only if position is nil.
91
92 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
93
94 * keyboard.c (make_lispy_event): Drag-and-drop items are now
95 stored in member `args' of struct input_event.
96
97 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
98
99 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
100 stored in member `args' of struct input_event.
101
102 * w32term.c (construct_drag_n_drop): Likewise.
103
104 * macterm.c (mac_do_receive_drag): Likewise.
105 (x_use_underline_position_properties): Undo 2005-07-13 change.
106 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
107 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
108 (mac_pass_command_to_system, mac_pass_control_to_system):
109 New boolean variables renamed from Lisp_Object ones
110 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
111 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
112 All uses changed.
113 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
114 Make them user options.
115 (mac_handle_command_event, mac_store_services_event):
116 Call create_apple_event_from_event_ref without 5th argument.
117 (backtranslate_modified_keycode): Mask off modifier keys that are
118 mapped to some Emacs modifiers before passing it to KeyTranslate.
119 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
120 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
121 Fix docstrings of `mac-*-modifier'.
122
123 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
124 (do_applescript): Change argument types to Lisp_Object.
125 All uses changed.
126
127 * macterm.h (create_apple_event_from_event_ref): Remove 5th
128 argument from extern.
129
130 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
131
132 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
133 the answer, return `lambda', not nil.
134
135 2005-12-17 Eli Zaretskii <eliz@gnu.org>
136
137 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
138 enclosed in $(ARGQUOTE)s should not be split between two lines, as
139 that will break with GNU Make >3.80, when sh.exe is used and
140 arg quoting is with '..'.
141
142 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
143
144 * print.c (print_preprocess): Just signal an error if print_depth
145 is exceeded.
146
147 2005-12-17 Eli Zaretskii <eliz@gnu.org>
148
149 * .gdbinit: Set a breakpoint on w32_abort.
150
151 2005-12-16 Juri Linkov <juri@jurta.org>
152
153 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
154 created from minibuffer_completion_contents.
155 (minibuffer_completion_contents): Remove.
156 (do_completion, Fminibuffer_complete_word)
157 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
158 with Fminibuffer_completion_contents.
159 (syms_of_minibuf): Add Sminibuffer_completion_contents.
160 (Fdisplay_completion_list): Doc fix.
161 (display_completion_list_1): Use `nil' for second arg of
162 `Fdisplay_completion_list'.
163
164 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
165
166 * xfns.c (compute_tip_xy): Handle negative dx and dy.
167
168 * w32fns.c (compute_tip_xy): Ditto.
169
170 * macfns.c (compute_tip_xy): Ditto.
171
172 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
173
174 * print.c (print_preprocess): Go to a deeper print_depth to avoid
175 print_object loop.
176
177 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
178
179 * coding.c (code_convert_region_unwind): GCPRO arg.
180
181 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
182
183 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
184 i.e. dy is offset from top of frame instead of bottom.
185
186 * macfns.c (compute_tip_xy): Ditto.
187
188 * w32fns.c (compute_tip_xy): Ditto.
189
190 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
191 (xg_get_image_for_pixmap, xg_create_frame_widgets)
192 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
193
194 * xmenu.c (menubar_selection_callback): Do nothing if the callback
195 is for an unselected radio menu item.
196
197 2005-12-11 Richard M. Stallman <rms@gnu.org>
198
199 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
200
201 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
202
203 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
204 (Flookup_key): Doc fix.
205 (syms_of_keymap) <function-key-map>: Doc fix.
206
207 * fns.c (Frequire): Treat evaluating from a source file
208 like loading the file.
209
210 * floatfns.c (Flog): Doc fix.
211
212 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
213 when we change the buffer.
214
215 2005-12-11 Juri Linkov <juri@jurta.org>
216
217 * minibuf.c (display_completion_list_1):
218 Call `minibuffer_completion_contents' instead of using `nil' as
219 second arg of `Fdisplay_completion_list'.
220 (keys_of_minibuf): Unbind SPC in
221 Vminibuffer_local_filename_completion_map (see also related
222 change on 2005-12-06).
223
224 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
225
226 * emacs.c (main) [MAC_OS8]: Undo previous change.
227
228 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
229 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
230
231 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
232
233 * Makefile.in (macselect.o): Depend on keymap.h.
234
235 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
236 syms_of_macselect.
237
238 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
239 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
240
241 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
242 (syms_of_keyboard) [MAC_OS]: Initialize it.
243 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
244
245 * mac.c (Qundecoded_file_name): New variable.
246 (syms_of_mac): Initialize it.
247 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
248 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
249 (Fmac_coerce_ae_data): New defun.
250 (syms_of_mac): Defsubr it.
251
252 * macselect.c: Include keymap.h.
253 (mac_ready_for_apple_events): New variable.
254 (Vmac_apple_event_map, Qmac_apple_event_class)
255 (Qmac_apple_event_id): New variables.
256 (syms_of_macselect): Initialize them.
257 (Qundefined, mac_store_apple_event): Add externs.
258 (struct apple_event_binding): New struct.
259 (find_event_binding_fun, find_event_binding)
260 (mac_find_apple_event_spec, defer_apple_events)
261 (mac_handle_apple_event, init_apple_event_handler)
262 (copy_scrap_flavor_data): New functions.
263 (Fmac_process_deferred_apple_events): New defun.
264 (syms_of_macselect): Defsubr it.
265 (mac_store_services_event): Fix extern.
266 (mac_handle_service_event): Don't allocate Lisp objects during
267 asynchronous input processing. Use mac_store_services_event
268 instead of mac_store_application_menu_event.
269
270 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
271 (Qpreferences): Remove variables.
272 (syms_of_macterm) : Don't initialize them.
273 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
274 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
275 (init_required_apple_events, do_ae_open_application)
276 (do_ae_print_documents, do_ae_open_documents)
277 (do_ae_quit_application): Remove functions and prototypes.
278 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
279 (mac_find_apple_event_spec): Add externs.
280 (mac_store_application_menu_event): Remove function.
281 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
282 (mac_handle_command_event): Create Apple event from Carbon event.
283 Use mac_store_apple_event instead of mac_store_application_menu_event.
284 [MAC_OSX] (mac_store_services_event): Likewise.
285 (struct SelectionRange, SelectionRange): Remove struct and typedef.
286 [MAC_OS8] (main): Call init_apple_event_handler instead of
287 init_required_apple_events.
288 (mac_initialize) [MAC_OSX]: Likewise.
289 [!USE_CARBON_EVENTS] (mac_wait_next_event): Use
290 mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
291
292 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp): Add
293 externs.
294 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
295 (Fmac_get_preference): Add EXFUN.
296
297 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
298 event.
299
300 2005-12-09 Richard M. Stallman <rms@gnu.org>
301
302 * xfns.c (Fx_create_frame): Reinstate previous change.
303
304 2005-12-09 Eli Zaretskii <eliz@gnu.org>
305
306 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
307 GDB to the abort dialog.
308
309 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
310
311 * indent.c (Fvertical_motion): Force move if starting on
312 stretch glyph.
313
314 2005-12-08 Richard M. Stallman <rms@gnu.org>
315
316 * lread.c (read_escape) <\s>: Don't treat strings specially.
317
318 * xfns.c (Fx_create_frame): Comment out previous change.
319
320 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
321
322 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
323 when needed.
324
325 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
326
327 * minibuf.c (keys_of_minibuf): Just unbind SPC in
328 Vminibuffer_local_filename_completion_map rather than forcing it
329 explicitly to the same binding as the global map.
330
331 2005-12-06 Ken Raeburn <raeburn@gnu.org>
332
333 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP
334 argument.
335 * bytecode.c (Fbyte_code): Likewise.
336 * fileio.c (internal_delete_file, Fread_file_name_internal):
337 Likewise.
338 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
339 * undo.c (truncate_undo_list): Likewise.
340
341 2005-12-05 Richard M. Stallman <rms@gnu.org>
342
343 * window.c (enlarge_window): Eliminate arg preserve_before.
344 Assume it is 0. All callers changed.
345 (Fenlarge_window, Fshrink_window): Likewise.
346
347 2005-12-02 Eli Zaretskii <eliz@gnu.org>
348
349 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
350 fit below.
351
352 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
353
354 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
355
356 * xfns.c (x_real_positions): int ign => unsigned int.
357 (xg_set_icon_from_xpm_data): Remove unused variable err.
358 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
359 to remove compiler warning.
360 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
361
362 2005-12-02 David Reitter <david.reitter@gmail.com>
363
364 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
365 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
366 and Vminibuffer_local_must_match_filename_map keymaps.
367 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
368
369 * keymap.c (Vminibuffer_local_filename_completion_map)
370 (Vminibuffer_local_must_match_filename_map): New variables.
371 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
372 parent to be Vminibuffer_local_completion_map and
373 Vminibuffer_local_must_match_map, respectively.
374
375 * commands.h (Vminibuffer_local_filename_completion_map)
376 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
377
378 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
379
380 * window.c (Fset_window_configuration): Don't accidentally copy the
381 window-point of one window to another.
382
383 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
384
385 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
386
387 2005-11-30 Kim F. Storm <storm@cua.dk>
388
389 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
390 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
391 passing it to `emacs_write'.
392
393 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
394
395 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
396
397 2005-11-27 Richard M. Stallman <rms@gnu.org>
398
399 * window.c (adjust_window_trailing_edge): New function.
400 (Fadjust_window_trailing_edge): New function.
401 (syms_of_window): Defsubr it.
402 (window_deletion_count): New variable.
403 (delete_window): Update window_deletion_count.
404
405 2005-11-26 Eli Zaretskii <eliz@gnu.org>
406
407 * minibuf.c (syms_of_minibuf): Mention the extension of
408 `completion-auto-help's meaning by complete.el.
409
410 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
411
412 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
413 Handle :inherit property as a lisp expression.
414
415 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
416
417 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
418 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
419 Qsuper, and Qmodifier_value.
420 (Vmac_control_modifier, Vmac_option_modifier)
421 (Vmac_command_modifier, Vmac_function_modifier)
422 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
423 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
424 (Vmac_charset_info_alist): Doc fixes.
425
426 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
427
428 * emacs.c (main) [MAC_OSX]: Change working directory to home
429 directory if `-psn_*' option is specified.
430
431 * mac.c (DECODE_UTF_8): Remove macro.
432 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
433 created from cfstring_to_lisp.
434 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
435 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
436
437 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
438 Add prototype.
439
440 2005-11-21 Ken Raeburn <raeburn@gnu.org>
441
442 * keymap.c (shadow_lookup): Use make_number to pass a number to
443 Fsubstring.
444
445 2005-11-21 Juri Linkov <juri@jurta.org>
446
447 * puresize.h (BASE_PURESIZE): Increment to 1180000.
448
449 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
450
451 * xfaces.c (Finternal_set_lisp_face_attribute):
452 Use :ignore-defface for new frame defaults when `unspecified' is
453 supplied.
454 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
455 (merge_face_vectors): Don't do :ignore-defface overwriting here.
456 (Finternal_merge_in_global_face): Do it here.
457
458 2005-11-20 Juri Linkov <juri@jurta.org>
459
460 * charset.c (invalid_character): Use Lisp-readable syntax
461 for octal and hex. Reorder decimal, octal and hex values.
462
463 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
464
465 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
466 this type is recognised when debugging.
467
468 2005-11-19 Andreas Schwab <schwab@suse.de>
469
470 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
471 Lisp_Cons and Lisp_Float.
472
473 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
474
475 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
476 New variable.
477 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
478 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
479 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
480 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
481
482 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
483
484 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
485
486 * xfaces.c (Qignore_defface): New variable.
487 (syms_of_xfaces): Provide `:ignore-defface'.
488 (IGNORE_DEFFACE_P): New macro.
489 (check_lface_attrs, lface_fully_specified_p)
490 (Finternal_set_lisp_face_attribute)
491 (Fface_attribute_relative_p, Fmerge_face_attribute):
492 Handle Qignore_defface as a possible value.
493 (merge_face_vectors): The merged face is `unspecified' if the
494 mergee specifies `:ignore-defface'.
495
496 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
497
498 * lread.c (readevalloop): Add missing GCPROs.
499
500 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
501
502 * xfns.c (xg_set_icon_from_xpm_data): New function.
503
504 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
505 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
506
507 * xterm.c (x_bitmap_icon): Use the xpm if available.
508
509 * image.c (x_create_bitmap_from_xpm_data): New function.
510 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
511
512 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
513
514 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
515
516 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
517
518 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
519
520 2005-11-15 Andreas Schwab <schwab@suse.de>
521
522 * lisp.h (struct Lisp_Cons): Make cdr a union.
523 (XCDR_AS_LVALUE): Adjust.
524 (struct Lisp_Float): Make data a union.
525 (XFLOAT_DATA): Adjust.
526
527 * alloc.c (free_float): Make free list chaining aliasing-safe.
528 (make_float): Likewise.
529 (free_cons): Likewise.
530 (Fcons): Likewise.
531 (check_cons_list): Likewise.
532 (Fmake_symbol): Likewise.
533 (allocate_misc): Likewise.
534 (free_misc): Likewise.
535 (gc_sweep): Likewise.
536
537 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
538
539 * mac.c (HASHKEY_QUERY_CACHE): New define.
540 (xrm_create_database, xrm_q_put_resource): Empty query cache.
541 (xrm_get_resource): Use query cache.
542
543 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
544 inhibit_window_system is set.
545
546 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
547
548 * macgui.h (USE_CG_TEXT_DRAWING): New define.
549 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
550 and cg_glyphs.
551
552 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
553 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
554 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
555 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
556 not used and font substitution never occurs for ASCII and Latin-1
557 characters.
558 (XLoadQueryFont): Maximum and minimum metrics are now those among
559 ASCII characters.
560 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
561 height adjustments for Courier, Helvetica, and Times.
562
563 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
564
565 2005-11-11 David Reitter <david.reitter@gmail.com>
566
567 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
568 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
569 Vmac_control_modifier / mac-control-modifier,
570 Vmac_option_modifier / mac-option-modifier,
571 Vmac_command_modifier / mac-command-modifier.
572 (mac_to_emacs_modifiers): Use the new style modifier
573 variables. Return UInt32 (modifiers are longs now.)
574 (backtranslate_modified_keycode): New function (refactoring).
575 (XTread_socket): Use new modifier variables and refactored function.
576 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
577 no dedicated meta key. Not in use anyway.)
578 (convert_fn_keycode): Map Fn-keys to their original keycode
579 using a table (english keyboard only).
580
581 2005-11-11 Kim F. Storm <storm@cua.dk>
582
583 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
584 Add post hook to "backtrace" to always dump lisp call stack to
585 increase chance of people sending it to us when reporting bugs.
586
587 * doc.c (Fsubstitute_command_keys): Doc fix.
588
589 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
590
591 * xdisp.c (handle_stop): Skip overlay string handling if
592 ignore_overlay_strings_at_pos_p is set.
593 (set_iterator_to_next): At end of display vector, set
594 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
595 string, so we skip those overlay strings at current pos.
596
597 2005-11-10 Lars Hansen <larsh@soem.dk>
598
599 * fileio.c (file-regular-p): Doc fix.
600
601 2005-11-10 Kim F. Storm <storm@cua.dk>
602
603 * alloc.c (valid_lisp_object_p): New function to validate that
604 an object is really a valid Lisp_Object.
605
606 * lisp.h (valid_lisp_object_p): Add prototype.
607
608 * print.c (safe_debug_print): New function to be called from gdb
609 to print Lisp objects; use valid_lisp_object_p to avoid crashing
610 if user tries to print something which is not a Lisp object.
611
612 * .gdbinit (pp, pp1): Use safe_debug_print.
613 (pv, pv1): New commands to print value of a lisp variable.
614
615 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
616
617 * .gdbinit (pp1): New user-defined function.
618
619 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
620
621 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
622
623 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
624 related variables for dumped executable.
625
626 * unexmacosx.c (unexec_write_zero): New function.
627 (copy_data_segment): Clear uninitialized local variables in
628 statically linked libraries.
629
630 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
631
632 2005-11-09 Juri Linkov <juri@jurta.org>
633
634 * keymap.c (shadow_lookup): If Flookup_key returns a number,
635 call it again with a sub-key-sequence, and if its return value
636 is non-nil (sub-key is bound), return nil.
637
638 2005-11-08 Kim F. Storm <storm@cua.dk>
639
640 * process.c (Fsignal_process): Recognize signal names with and
641 without SIG prefix, e.g. SIGHUP and HUP.
642
643 * search.c (search_buffer): No need to initialize base_pat.
644
645 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
646
647 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
648 Don't abuse the `mini' arg. Use the `obj' arg instead.
649
650 2005-11-04 Kim F. Storm <storm@cua.dk>
651
652 * xdisp.c (show_mouse_face): Clear mouse face to eol.
653
654 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
655
656 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
657 font-lock.elc and jit-lock.elc.
658
659 2005-11-03 Richard M. Stallman <rms@gnu.org>
660
661 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
662 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
663 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
664
665 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
666
667 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
668
669 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
670
671 * window.c (Fdisplay_buffer): Fix last change to not use
672 a dedicated window.
673
674 2005-11-01 Kim F. Storm <storm@cua.dk>
675
676 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
677 Instead, rotate the bottom angle bitmap 180 degrees to indicate
678 that the bottom row does not end in a newline.
679
680 2005-11-01 Andreas Schwab <schwab@suse.de>
681
682 * unexelf.c (unexec): Handle .plt section in BSS segment.
683
684 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
685
686 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
687
688 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
689 determine whether to consider dedicated windows as well.
690 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
691 (Fdisplay_buffer): Do consider dedicated windows in those cases where
692 we will split the window rather than reuse it.
693 Don't try to use windows on other displays.
694
695 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
696
697 * puresize.h (BASE_PURESIZE): Increment to 1170000.
698
699 2005-10-31 Romain Francoise <romain@orebokech.com>
700
701 * macfns.c: Update copyright year.
702 * m/gould.h: Likewise.
703
704 2005-10-30 Kim F. Storm <storm@cua.dk>
705
706 * xdisp.c (display_line): Restore it->current_x and call
707 extend_face_to_end_of_line when last glyph doesn't fit on line.
708 (set_glyph_string_background_width): Remove specific tests here
709 to see if face background should extend to end of line. Simplify.
710
711 2005-10-30 Richard M. Stallman <rms@gnu.org>
712
713 * alloc.c (BYTES_USED): Use uordblks, not arena.
714 (bytes_used_when_reconsidered): New variable.
715 (emacs_blocked_free): Set that.
716
717 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
718
719 * alloc.c (emacs_blocked_free): Fix typo.
720
721 2005-10-29 Richard M. Stallman <rms@gnu.org>
722
723 * data.c (Fmake_variable_frame_local): Doc fix.
724
725 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
726 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
727 controls whether to save and restore mode_line_proptrans_alist.
728 Callers changed.
729 (unwind_format_mode_line): Work with that feature.
730 (redisplay_internal): Don't call prepare_menu_bars if memory full.
731 (move_elt_to_front): New function.
732 (display_mode_element): Use move_elt_to_front.
733 Don't bother munging text props on a null string.
734 Delete obsolete elts from mode_line_proptrans_alist.
735 (decode_mode_spec): Test Vmemory_full, not spare_memory.
736 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
737
738 * lisp.h (memory_full_cons_threshold): Declare.
739 (internal_lisp_condition_case): Declare.
740
741 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
742 (Fmemory_full_p): Function deleted.
743 (syms_of_alloc): Don't defsubr it.
744 (memory_full_cons_threshold): New variable.
745 (spare_memory): Now a vector of 7 elts.
746 (buffer_memory_full): Don't set Vmemory_full here.
747 (xfree): Don't try to refill here.
748 (emacs_blocked_free): Record BYTES_USED in local var.
749 (memory_full): Now free all the slots in spare_memory.
750 (refill_memory_reserve): Allocate each slot in spare_memory.
751 (init_alloc_once): Call refill_memory_reserve.
752
753 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
754
755 * eval.c (internal_lisp_condition_case): New function.
756 (Fcondition_case): Use internal_lisp_condition_case.
757 (Feval): Test Vmemory_full and memory_full_cons_threshold.
758 (Ffuncall): Likewise.
759
760 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
761
762 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
763
764 * syntax.c (Fparse_partial_sexp): Fix docstring.
765
766 2005-10-28 Romain Francoise <romain@orebokech.com>
767
768 * puresize.h (BASE_PURESIZE): Increment to 1130000.
769
770 2005-10-28 Richard M. Stallman <rms@gnu.org>
771
772 * xfns.c (syms_of_xfns): Provide `x' as feature.
773
774 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
775
776 * editfns.c (Fformat): Don't include string padding
777 between info[n].start and info[n].end.
778
779 * alloc.c (spare_memory): No longer static.
780 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
781
782 * puresize.h (BASE_PURESIZE): Increment to 1120000.
783
784 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
785
786 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
787
788 * fringe.c (update_window_fringes): Handle case where buffer ends
789 with a newline.
790
791 2005-10-27 Kenichi Handa <handa@m17n.org>
792
793 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
794
795 2005-10-24 Kenichi Handa <handa@m17n.org>
796
797 * charset.h (charset_mule_unicode_0100_24ff)
798 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
799 Extern them.
800
801 * charset.c (charset_mule_unicode_0100_24ff)
802 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
803 New variables.
804 (Fsetup_special_charsets): Initialize them.
805
806 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
807 supported Unicode characters.
808
809 2005-10-25 Jason Rumney <jasonr@gnu.org>
810
811 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
812
813 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
814
815 * image.c [MAC_OS] (image_load_qt_1): Check image size.
816 Use GraphicsImportGetImageDescription instead of
817 GraphicsImportGetNaturalBounds.
818 [MAC_OSX] (image_load_quartz2d): Check image size.
819 [MAC_OS] (xpm_load_image): Likewise.
820
821 * macterm.c (last_mouse_glyph_frame): New var.
822 (note_mouse_movement): Say mouse moved if current frame differs
823 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
824 (XTmouse_position): Set last_mouse_glyph_frame.
825 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
826 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
827 Use EndianU16_BtoN.
828 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
829 (x_per_char_metric, XLoadQueryFont)
830 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
831 glyph bounds.
832 (mac_to_x_fontname, mac_do_list_fonts)
833 (mac_initialize_display_info): Change screen resolutions to 72dpi.
834
835 2005-10-25 Masatake YAMATO <jet@gyve.org>
836
837 * minibuf.c (Fdisplay_completion_list): Small doc fix.
838
839 2005-10-24 Kim F. Storm <storm@cua.dk>
840
841 * xterm.c: Undo 2005-10-23 change.
842 (last_mouse_glyph_frame): New var.
843 (note_mouse_movement): Say mouse moved if current frame differs
844 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
845 (XTmouse_position): Set last_mouse_glyph_frame.
846 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
847 last_mouse_glyph] on mouse up/down event.
848
849 * editfns.c (Fcompare_buffer_substrings): Fix last change.
850
851 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
852
853 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
854
855 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
856
857 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
858 so tool tips don't interfere with press on tool bar button.
859
860 2005-10-23 Richard M. Stallman <rms@gnu.org>
861
862 * casetab.c (Fset_case_table): Doc fix.
863
864 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
865 (readevalloop): Compute ENTIRE properly.
866 (syms_of_lread) <load-history>: Doc fix.
867
868 2005-10-21 Richard M. Stallman <rms@gnu.org>
869
870 * lread.c (Fload): Simplify gcpro structure.
871 Gcpro FOUND as well as FILE, but not EFOUND.
872 Unless preloading, record FOUND instead of FILE in Vload_history.
873 Rename repeat local FILE to MSG_FILE.
874 (syms_of_lread) <load-history>: Doc fix.
875
876 2005-10-21 Kenichi Handa <handa@m17n.org>
877
878 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
879
880 2005-10-20 Kim F. Storm <storm@cua.dk>
881
882 * buffer.c (clone_per_buffer_values): Remove unused var tem.
883 (init_buffer): Remove unused vars dotstat, pwdstat.
884
885 * ccl.c (check_ccl_update): Remove unused var vp.
886
887 * fileio.c (auto_save_error): Call SAFE_FREE.
888
889 * fns.c (Fchar_table_range): Remove unused var i.
890
891 * minibuf.c (display_completion_list_1): New wrapper function
892 for Fdisplay_completion_list.
893 (Fminibuffer_completion_help): Use it.
894
895 * term.c (encode_terminal_code): Remove unused var src_start.
896
897 * window.c (Fwindow_tree): Remove unused var alist.
898
899 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
900
901 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
902
903 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
904
905 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
906
907 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
908
909 2005-10-20 Andreas Schwab <schwab@suse.de>
910
911 * minibuf.c (Fdisplay_completion_list): Doc fix.
912
913 2005-10-19 Kim F. Storm <storm@cua.dk>
914
915 * image.c (check_image_size): Handle integer Vmax_image_size value
916 directly as max pixel value. Use default frame size for null frame.
917 (syms_of_image) <max-image-size>: Describe integer value.
918
919 2005-10-19 Romain Francoise <romain@orebokech.com>
920
921 * emacs.c (main): Update copyright year.
922
923 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
924
925 * image.c (Vmax_image_size): New variable.
926 (check_image_size): New function.
927 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
928 (gif_load, gs_load): Use it.
929 (lookup_image): Try loading again if previous load failed.
930 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
931 to display in, NULL if none.
932 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
933 argument.
934
935 2005-10-18 Richard M. Stallman <rms@gnu.org>
936
937 * search.c (Fstring_match): Doc fix.
938
939 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
940
941 * macterm.c (note_mouse_movement): Use PtInRect.
942 (XTread_socket): Also ignore mouse motion just before a button
943 release event. Don't process button release event when mouse is
944 not grabbed.
945
946 2005-10-16 Masatake YAMATO <jet@gyve.org>
947
948 * minibuf.c (Fdisplay_completion_list): Add new optional
949 argument COMMON_SUBSTRING. Bind `completion-common-substring'
950 to the optional argument during running `completion-setup-hook'.
951
952 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
953
954 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
955 Allow nil as argument.
956 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
957 for encoding arguments as UTF-16 in native byte order, no BOM.
958
959 * macfns.c (Fx_create_frame): Add debugging code.
960 (Fx_show_tip): Set frame pixel width and height.
961
962 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
963 (FRAME_NORMAL_GC): New macro.
964 (mac_draw_line, mac_clear_area, mac_clear_window)
965 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
966 (mac_draw_image_string, mac_draw_image_string_16): Rename from
967 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
968 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
969 All uses changed.
970 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
971 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
972 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
973 (mac_draw_string_16, mac_draw_image_string)
974 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
975 (mac_scroll_area): Drawing functions now take frame as destination.
976 All uses changed.
977 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
978 (x_draw_fringe_bitmap): Set clipping area in face->gc.
979
980 * macterm.h (mac_clear_area): Add extern.
981
982 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
983
984 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
985 changes for xterm.c.
986
987 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
988
989 2005-10-14 Kenichi Handa <handa@m17n.org>
990
991 * search.c (search_buffer): Give up BM search on case-fold-search
992 if one of a target character has a case-equivalence of different
993 charset even if that target charcter is an ASCII.
994
995 * casefiddle.c (casify_object): Fix for the case that case
996 conversion change the byte length.
997
998 2005-10-14 Kim F. Storm <storm@cua.dk>
999
1000 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
1001 (handle_one_xevent): Only clear help_echo_string; restore it if
1002 note_mouse_movement didn't record any mouse movement.
1003
1004 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
1005 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
1006
1007 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
1008 (Fposn_at_x_y): Fix calculation of x coordinate.
1009 (Fposn_at_point): Return nil if point is hscrolled out of view.
1010
1011 2005-10-13 Andreas Schwab <schwab@suse.de>
1012
1013 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
1014 non-interactive mode.
1015
1016 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1017
1018 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
1019
1020 2005-10-12 Kim F. Storm <storm@cua.dk>
1021
1022 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
1023
1024 2005-10-12 Romain Francoise <romain@orebokech.com>
1025
1026 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
1027
1028 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1029
1030 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
1031 get end of text rows. Obtain header-line/mode-line rows directly.
1032
1033 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
1034 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
1035
1036 2005-10-12 Kim F. Storm <storm@cua.dk>
1037
1038 * xdisp.c (remember_mouse_glyph): New generic version based on
1039 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
1040 properly handle all different window areas.
1041
1042 * dispextern.h (remember_mouse_glyph): Add prototype.
1043
1044 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
1045 (note_mouse_movement, XTmouse_position): Use generic
1046 remember_mouse_glyph, add last_mouse_glyph arg.
1047
1048 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
1049 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
1050 (note_mouse_movement, w32_mouse_position): Use generic
1051 remember_mouse_glyph, add last_mouse_glyph arg.
1052
1053 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
1054 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
1055 (XTmouse_position): Adapt to use generic remember_mouse_glyph
1056 instead of pixel_to_glyph_coords.
1057
1058 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
1059 Fix x position for ON_TEXT when left margin width > 0.
1060
1061 2005-10-11 Kim F. Storm <storm@cua.dk>
1062
1063 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
1064
1065 * keyboard.c (make_lispy_position): Fix buffer calculations for
1066 mouse click or movement in right fringe and the margins.
1067
1068 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
1069
1070 * image.c (fn_jpeg_stdio_src): Don't define it.
1071 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
1072 (our_common_init_source): Rename from `our_init_source'.
1073 (our_common_term_source): Rename from `our_term_source'.
1074 (our_memory_fill_input_buffer): Rename from
1075 `our_fill_input_buffer'.
1076 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
1077 (jpeg_memory_src): Use the new names.
1078 (struct jpeg_stdio_mgr): New struct.
1079 (JPEG_STDIO_BUFFER_SIZE): New constant.
1080 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
1081 (jpeg_file_src): New functions.
1082 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
1083
1084 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1085
1086 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
1087 (fm_font_family_alist): New variable.
1088 (syms_of_macterm): Initialize and staticpro it.
1089 (decode_mac_font_name): Replace '-' in family name with '_' if it
1090 occurs just once. Lower family name.
1091 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
1092 All uses changed. Remove argument MF and code conversion for it.
1093 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
1094 to CHARSET. Parse font size. Lower family name. Return integer
1095 value for status of parsing.
1096 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
1097 Don't use Fdowncase because family name is already lowered by
1098 decode_mac_font_name.
1099 (init_font_name_table): Always call decode_mac_font_name.
1100 Add pair of family name and its reference to fm_font_family_alist.
1101 (mac_clear_font_name_table): Clear fm_font_family_alist.
1102 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
1103 Lookup fm_font_family_alist to get font family reference.
1104 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
1105 name is already lowered by parse_x_font_name.
1106
1107 2005-10-11 Kim F. Storm <storm@cua.dk>
1108
1109 * xterm.c (glyph_rect): Return 0 if position is outside text area.
1110
1111 * keyboard.c (make_lispy_position): Fix buffer position calculation for
1112 mouse click or movement in fringe.
1113
1114 2005-10-10 Jason Rumney <jasonr@gnu.org>
1115
1116 * xterm.c (remember_mouse_glyph): New function.
1117 (note_mouse_movement): Use it to remember the current glyph if changed.
1118 (XTmouse_position): Fix calculation of fake glyph under mouse.
1119 Move code to calculate glyph under mouse into remember_mouse_glyph.
1120
1121 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1122
1123 * emacs.c (USAGE3, standard_args): -nb => -nbi.
1124
1125 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
1126
1127 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
1128 (next_frame, prev_frame, set_term_frame_name): Make static.
1129
1130 * window.c (Fwindow_tree): Fix spelling.
1131
1132 2005-10-09 Romain Francoise <romain@orebokech.com>
1133
1134 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
1135
1136 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1137
1138 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
1139 Add options -nb, --no-bitmap-icon.
1140
1141 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
1142
1143 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1144
1145 * macgui.h (MAX_CLIP_RECTS): New define.
1146 (struct _XGC): New member clip_region.
1147 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
1148 clip_rects.
1149
1150 * macterm.c (GC_CLIP_REGION): New macro.
1151 (saved_port_clip_region): New variable.
1152 (mac_begin_clip, mac_end_clip): New functions.
1153 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
1154 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
1155 (mac_copy_area_with_mask, mac_scroll_area): Use them.
1156 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
1157 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1158 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
1159 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
1160 rectangles stored in gc.
1161 (XFreeGC): Dispose of clipping region.
1162 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
1163 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
1164 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
1165 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
1166 (x_draw_bar_cursor): Use them.
1167 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
1168 get multiple clipping rectangles.
1169
1170 * macterm.h (mac_term_init): Add types to extern.
1171 (struct mac_output): Remove members mWP and pending_menu_activation.
1172 Put members scroll_bar_foreground_pixel and
1173 scroll_bar_background_pixel in #if 0.
1174 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
1175
1176 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
1177 Add debugging code.
1178
1179 2005-10-08 Kim F. Storm <storm@cua.dk>
1180
1181 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
1182
1183 2005-10-07 Kim F. Storm <storm@cua.dk>
1184
1185 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
1186 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
1187 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
1188
1189 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1190
1191 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
1192 to for_overlaps. Now occupy 3 bits.
1193 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
1194 (OVERLAPS_ERASED_CURSOR): New defines.
1195 (struct redisplay_interface): Add new OVERLAPS arg to member
1196 fix_overlapping_area.
1197 (x_fix_overlapping_area): Add new OVERLAPS arg.
1198 (get_glyph_string_clip_rects): Add extern.
1199
1200 * dispnew.c (redraw_overlapping_rows):
1201 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
1202
1203 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
1204 for_overlaps.
1205 (get_glyph_string_clip_rects): New function created from
1206 get_glyph_string_clip_rect. Set clipping rectangles according to the
1207 value of for_overlaps. Enable to store multiple clipping rectangles.
1208 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
1209 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
1210 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
1211 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
1212 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
1213 calculating clipping rectangles later. Call x_fix_overlapping_area
1214 with new OVERLAPS arg to draw only erased cursor area.
1215 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
1216 to draw overlaps in both preceding and succeeding rows.
1217
1218 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
1219 struct glyph_string to for_overlaps.
1220
1221 2005-10-04 Richard M. Stallman <rms@gnu.org>
1222
1223 * alloc.c (refill_memory_reserve): Conditionalize the body,
1224 not the function's existence.
1225
1226 2005-10-04 Kim F. Storm <storm@cua.dk>
1227
1228 * window.c (window_split_tree): New function.
1229 (Fwindow_split_tree): New defun.
1230 (syms_of_window): Defsubr it.
1231
1232 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1233
1234 * macterm.c (mac_invert_rectangle): New function.
1235 (XTflash): Use it.
1236
1237 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
1238
1239 * regex.h (re_char): Don't expose it in the interface.
1240 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
1241
1242 * regex.c (re_char): Move it back here.
1243 (re_set_whitespace_regexp): Change the arg's type to not use it.
1244
1245 * keyboard.c (make_lispy_event): If point has moved between down and up
1246 event, make it a drag, not a click, to mirror what
1247 mouse-drag-region expects.
1248
1249 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1250
1251 * lisp.h (fatal): Undo previous change.
1252 * term.c (fatal): Undo previous change.
1253
1254 2005-10-01 Richard M. Stallman <rms@gnu.org>
1255
1256 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
1257
1258 2005-10-01 Kim F. Storm <storm@cua.dk>
1259
1260 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
1261
1262 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1263
1264 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
1265
1266 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
1267 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
1268 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
1269 Try ATSUI-compatible 12pt Monaco font first.
1270
1271 * macgui.h (struct _XCharStruct): New member valid_p.
1272 (STORE_XCHARSTRUCT): Set valid_p.
1273 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
1274
1275 * macterm.c (mac_draw_string_common, x_per_char_metric)
1276 (mac_compute_glyph_string_overhangs, init_font_name_table)
1277 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
1278 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
1279 (x_draw_glyph_string_background)
1280 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
1281 XDrawImageString. Always draw background and foreground separately.
1282 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
1283 functions for one-byte chars when using ATSUI-compatible fonts.
1284 (atsu_font_id_hash) [USE_ATSUI]: New variable.
1285 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
1286 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
1287 max_char_or_byte2 more in detail.
1288 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
1289
1290 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
1291
1292 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
1293 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
1294
1295 * unexelf.c (fatal): Fix prototype.
1296
1297 * term.c (fatal): Implement using varargs.
1298
1299 * regex.c (re_char): Move typedef ...
1300 * regex.h (re_char): ... here.
1301 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
1302
1303 * emacs.c (malloc_set_state): Fix return type.
1304 (endif): Fix type.
1305
1306 * lisp.h (fatal): Add argument types.
1307
1308 * dispextern.h (fatal): Delete prototype.
1309
1310 * systime.h: (make_time): Prototype moved from ...
1311 * editfns.c (make_time): ... here.
1312
1313 * editfns.c: Move systime.h include after lisp.h.
1314 * dired.c:
1315 * xsmfns.c:
1316 * process.c: Likewise.
1317
1318 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
1319 Add parameter types.
1320 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
1321 (emacs_blocked_free): Change definition to match __free_hook.
1322 (emacs_blocked_malloc): Change definition to match __malloc_hook.
1323 (emacs_blocked_realloc): Change definition to match __realloc_hook.
1324
1325 2005-09-30 Romain Francoise <romain@orebokech.com>
1326
1327 * minibuf.c (Fread_buffer): Follow convention for reading from the
1328 minibuffer with a default value. Doc fix.
1329
1330 2005-09-29 Juri Linkov <juri@jurta.org>
1331
1332 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
1333 Rename argument name `string' to `format-string'.
1334 (Fformat): Doc fix.
1335
1336 2005-09-28 Kim F. Storm <storm@cua.dk>
1337
1338 * image.c (gif_load): Fix size of allocated image buffer
1339 for images where a sub-image may be larger than the image's
1340 total height/width specifications.
1341
1342 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1343
1344 * macgui.h (struct _XCharStruct): Each member now takes short value.
1345
1346 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
1347
1348 * xfaces.c (lookup_derived_face): Add parameter type.
1349
1350 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
1351
1352 * marker.c (verify_bytepos): Add parameter type.
1353
1354 * process.c (get_operating_system_release): Move prototype ...
1355
1356 * systime.h (get_operating_system_release): ... here.
1357
1358 * xterm.c (handle_one_xevent): Refer to union field to match the
1359 type required by the function definition.
1360 (set_vertical_scroll_bar): Move prototype ...
1361
1362 * xterm.h: ... here.
1363
1364 * fns.c (internal_equal, seed_random): Fix prototypes.
1365 (internal_equal): Add missing parameter.
1366
1367 2005-09-25 Richard M. Stallman <rms@gnu.org>
1368
1369 * keyboard.c (update_menu_bindings): Variable deleted.
1370 (syms_of_keyboard): Don't defvar it.
1371 (parse_menu_item): Don't test it.
1372
1373 2005-09-23 Richard M. Stallman <rms@gnu.org>
1374
1375 * editfns.c (Fformat): Explicitly test for end of format string
1376 and don't use `index'.
1377
1378 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
1379
1380 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
1381 Define BROKEN_GET_CURRENT_DIR_NAME.
1382
1383 * sysdep.c (get_current_dir_name): Also define if
1384 BROKEN_GET_CURRENT_DIR_NAME.
1385
1386 * m/ibmrs6000.h: Test for USG5, not USG5_4.
1387
1388 2005-09-22 Kim F. Storm <storm@cua.dk>
1389
1390 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
1391 (message2): Fix commentary. Ok to use alloca'ed memory.
1392 Still not ok to use Lisp string data (because of GC).
1393 (set_message): Add comment why GC cannot happen.
1394
1395 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1396
1397 * macterm.c (xlfdpat_block_match_1): Fix assertion.
1398 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
1399 variants for a scalable font multiple times.
1400
1401 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1402
1403 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
1404 Setup slave tty options before forking.
1405
1406 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1407
1408 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1409 positions have been set for the frame (as is done for frames in
1410 special-display-buffer-names).
1411
1412 2005-09-19 Kim F. Storm <storm@cua.dk>
1413
1414 * editfns.c (Fformat): Don't scan past end of format string that
1415 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1416
1417 2005-09-18 Andreas Schwab <schwab@suse.de>
1418
1419 * window.h (struct window): Remove height_fixed_p, no longer set.
1420
1421 * window.c (make_window): Don't initialize height_fixed_p.
1422 (window_fixed_size_p): Don't use it.
1423
1424 2005-09-18 John Paul Wallington <jpw@pobox.com>
1425
1426 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1427
1428 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1429
1430 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1431
1432 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1433 New variables.
1434 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1435 file selection.
1436
1437 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1438
1439 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1440
1441 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1442 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1443
1444 2005-09-16 Romain Francoise <romain@orebokech.com>
1445
1446 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1447
1448 2005-09-15 Richard M. Stallman <rms@gnu.org>
1449
1450 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1451 (display_mode_element): Instead of `lisp_string' and `this',
1452 record `offset' and increment that.
1453 `last_offset' replaces `last'.
1454
1455 * Makefile.in (XMENU_OBJ): Variable deleted.
1456 (obj): Use xmenu.o unconditionally.
1457 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1458
1459 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1460
1461 2005-09-15 Kim F. Storm <storm@cua.dk>
1462
1463 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1464 (reseat_at_next_visible_line_start): Likewise (in xassert).
1465
1466 2005-09-14 Romain Francoise <romain@orebokech.com>
1467
1468 * fileio.c (write_region_inhibit_fsync): New variable.
1469 (Fwrite_region): Use it to skip call to fsync.
1470 (syms_of_fileio): Initialize it.
1471
1472 2005-09-14 Kenichi Handa <handa@m17n.org>
1473
1474 * coding.c (code_convert_region_unwind): Argument format changed.
1475 (run_pre_post_conversion_on_str): If pre-write-conversion function
1476 changed the current buffer, delete the new buffer.
1477 (run_pre_write_conversin_on_c_str): Likewise.
1478
1479 * fileio.c (Fexpand_file_name): Check multibyteness of
1480 default_directory.
1481
1482 2005-09-13 Kenichi Handa <handa@m17n.org>
1483
1484 * composite.c (compose_chars_in_text): Delete it.
1485
1486 * composite.h (compose_chars_in_text): Delete extern.
1487
1488 2005-09-13 Kim F. Storm <storm@cua.dk>
1489
1490 * print.c (print_error_message): Fix last change.
1491
1492 2005-09-12 Kim F. Storm <storm@cua.dk>
1493
1494 * composite.c (compose_chars_in_text): Fix setup of `pend'.
1495 Unconditionally reload `ptr' and `pend' after eval.
1496
1497 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
1498
1499 * print.c (print_error_message): Pass copy of caller name to
1500 message_dolog.
1501
1502 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
1503
1504 2005-09-12 Kenichi Handa <handa@m17n.org>
1505
1506 * xdisp.c (display_mode_element): Be sure to make variables THIS
1507 and LISP_STRING point into a string data of ELT.
1508
1509 2005-09-12 Kim F. Storm <storm@cua.dk>
1510
1511 * editfns.c (Ftranslate_region_internal): Reload `tt' after
1512 signal_after_change that may have GC'ed.
1513 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
1514
1515 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
1516 after insert while runs signal_after_change.
1517
1518 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
1519 declaration to where it is used.
1520
1521 * w32.c (check_windows_init_file): Fix allocation of error buffer.
1522
1523 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
1524 (x_set_name_internal): Call x_encode_text with new FREEP arg to
1525 know if xfree is needed instead of guessing.
1526
1527 * xterm.h (x_encode_text): Remove prototype.
1528
1529 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
1530
1531 * w32term.c (x_bitmap_icon): Load small icons too.
1532
1533 2005-09-10 Romain Francoise <romain@orebokech.com>
1534
1535 * buffer.c (init_buffer): Grow buffer to add directory separator
1536 and terminal zero. Fix typos.
1537
1538 2005-09-10 Eli Zaretskii <eliz@gnu.org>
1539
1540 * buffer.c (init_buffer): Fix error message for failed call to
1541 get_current_dir_name.
1542 (get_current_dir_name): Remove prototype.
1543
1544 * xsmfns.c: (get_current_dir_name): Remove prototype.
1545
1546 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1547 Add prototype.
1548
1549 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
1550 Don't #undef NULL after including blockinput.h.
1551
1552 * config.in: Regenerated.
1553
1554 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
1555
1556 Remove the MAXPATHLEN limitations:
1557
1558 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1559 New function.
1560
1561 * buffer.c (init_buffer): Use it.
1562
1563 * xsmfns.c (smc_save_yourself_CB): Ditto.
1564
1565 2005-09-09 Kim F. Storm <storm@cua.dk>
1566
1567 * doc.c (Fsubstitute_command_keys): Lookup key binding for
1568 commands that are remapped from some other command.
1569
1570 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
1571 flag in disabled rows below the window.
1572
1573 * frame.h (struct frame): New member updated_p.
1574
1575 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
1576 member. Remove local `updated' array and associated variables.
1577
1578 2005-09-07 Kim F. Storm <storm@cua.dk>
1579
1580 * xdisp.c (handle_display_prop): Respect overlay window property.
1581
1582 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
1583 Fixes crash reported by YAMAMOTO Mitsuharu.
1584
1585 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1586
1587 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
1588 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
1589 (xlfdpat_block_match_1, xlfdpat_match): New functions.
1590 (xlfdpat_block_match): New macro.
1591 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
1592 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
1593 (add_font_name_table_entry): Increase font_name_table_size more
1594 rapidly.
1595 (mac_c_string_match): Remove function.
1596 (mac_do_list_fonts): Use XLFD pattern match instead of regular
1597 expression match.
1598
1599 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
1600
1601 2005-09-03 Richard M. Stallman <rms@gnu.org>
1602
1603 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
1604 (move_it_in_display_line_to): Stop after last char on line even
1605 on a windowing terminal, if that's the specified stop position.
1606
1607 * fns.c (Fsort): Doc fix.
1608
1609 * editfns.c (Fpropertize): Don't insist that properties be symbols.
1610
1611 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
1612
1613 * dired.c (directory_files_internal_unwind, directory_files_internal)
1614 (file_name_completion): Use a Save_Value object rather than a cons of
1615 two 16bit ints to store the DIR*.
1616 (directory_files_internal, file_name_completion): Handle both EINTR and
1617 EAGAIN consistently after `readdir'.
1618
1619 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
1620
1621 * intervals.c (update_interval): Add position info in error.
1622
1623 * dispnew.c (window_to_frame_hpos, update_window):
1624 Avoid gcc warning about unused variable `f'.
1625
1626 2005-08-31 Jason Rumney <jasonr@gnu.org>
1627
1628 * w32menu.c (add_menu_item): If unicode_append_menu returns an
1629 error, revert to using AppendMenu.
1630
1631 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1632
1633 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
1634 All uses changed.
1635 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
1636 cases.
1637 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
1638 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
1639 Use posix_pathname_to_fsspec.
1640 [MAC_OS] (xpm_load_image): Fill in background_transparent field
1641 while we have mask.
1642
1643 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
1644
1645 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
1646
1647 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1648
1649 * syntax.c (update_syntax_table): Properly reproduce the special +1
1650 setting of e_property at the end of the buffer when bumping into the
1651 INTERVALS_AT_ONCE limit.
1652
1653 2005-08-27 Eli Zaretskii <eliz@gnu.org>
1654
1655 * emacs.c (USAGE1): Fix the description of the -Q option.
1656
1657 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
1658
1659 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
1660
1661 2005-08-26 Kim F. Storm <storm@cua.dk>
1662
1663 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
1664 Don't move PT to new window start.
1665
1666 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1667
1668 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
1669 ICONIFY/DEICONIFY_EVENT.
1670
1671 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
1672 Restore background color.
1673 (mac_handle_visibility_change): New function.
1674 (x_make_frame_invisible, x_iconify_frame)
1675 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
1676 [USE_CARBON_EVENTS] (mac_handle_window_event)
1677 (install_window_handler): Handle visibility change events.
1678 (x_make_frame_visible): Don't reposition window if it is iconified
1679 or asked for visible before. Select and uncollapse window when it
1680 is made visible.
1681 (x_make_frame_invisible): Don't reset x_highlight_frame.
1682 (x_iconify_frame): Likewise. Make invisible frame visible before
1683 it is iconified.
1684 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
1685 (do_window_update): Don't change visibility of invisible frame.
1686
1687 2005-08-22 Juri Linkov <juri@jurta.org>
1688
1689 * term.c (turn_on_face): Check for TS_set_foreground and
1690 TS_set_background depending on standout_mode. Simplify.
1691
1692 2005-08-21 Kim F. Storm <storm@cua.dk>
1693
1694 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
1695 bitmaps on fully visible rows.
1696
1697 * fringe.c (update_window_fringes): Replace FORCE_P arg with
1698 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
1699 and return 0.
1700
1701 * xdisp.c (redisplay_window): Call update_window_fringes with
1702 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
1703
1704 2005-08-20 Richard M. Stallman <rms@gnu.org>
1705
1706 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
1707 (resize_mini_window): Set w->start, and PT, so as to display the tail
1708 end of the buffer, if it doesn't all fit.
1709
1710 2005-08-18 Kim F. Storm <storm@cua.dk>
1711
1712 * xdisp.c (calc_pixel_width_or_height): Use actual display
1713 resolution when available instead of Vdisplay_pixels_per_inch.
1714
1715 2005-08-17 Kim F. Storm <storm@cua.dk>
1716
1717 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
1718
1719 * dispnew.c (buffer_posn_from_coords): Check that target row is
1720 within matrix.
1721
1722 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1723
1724 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
1725 xg_set_frame_icon and call it.
1726
1727 * gtkutil.c (xg_set_frame_icon): New function.
1728
1729 * gtkutil.h (xg_set_frame_icon): Declare it.
1730
1731 2005-08-16 Kim F. Storm <storm@cua.dk>
1732
1733 * dispnew.c (increment_row_positions): Skip non-enabled rows.
1734
1735 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
1736 (Fcurrent_window_configuration): Use VECSIZE macro instead.
1737
1738 2005-08-15 Richard M. Stallman <rms@gnu.org>
1739
1740 * xdisp.c (message3_nolog): Clear echo_message_buffer.
1741
1742 2005-08-15 Kim F. Storm <storm@cua.dk>
1743
1744 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
1745
1746 * process.c (deactivate_process, status_notify, read_process_output)
1747 (update_status, status_convert, decode_status, allocate_pty)
1748 (make_process, remove_process, list_processes_1)
1749 (create_process_1, unwind_request_sigio, read_process_output)
1750 (send_process, keyboard_bit_set): Declare static.
1751 (Fdelete_process): Simplify. Pass process to status_notify, so we
1752 don't try to read output from it.
1753 (status_notify): New arg deleting_process--don't try to read
1754 output from that process.
1755
1756 * lisp.h (deactivate_process, status_notify, read_process_output):
1757 Remove prototypes.
1758
1759 2005-08-14 Richard M. Stallman <rms@gnu.org>
1760
1761 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
1762 define_image_type.
1763
1764 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1765
1766 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
1767 (xg_get_image_for_pixmap): Move some code to
1768 xg_get_pixbuf_from_pix_and_mask, and call it.
1769
1770 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
1771
1772 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
1773 to get an GTK icon and set it with GTK functions to avoid having GTK
1774 override an icon set with just X functions.
1775
1776 2005-08-11 Richard M. Stallman <rms@gnu.org>
1777
1778 * image.c (syms_of_image): Init image_types here, and call
1779 define_image_type.
1780 (init_image): Not here.
1781
1782 2005-08-09 Richard M. Stallman <rms@gnu.org>
1783
1784 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
1785
1786 * lisp.h (QUIT): Throw t to Vthrow_on_input.
1787
1788 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
1789
1790 * floatfns.c (Fexpt): Use floats for negative exponent.
1791
1792 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1793
1794 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
1795 should not be there, causing menu display errors with GTK 2.6.9.
1796
1797 2005-08-07 Richard M. Stallman <rms@gnu.org>
1798
1799 * floatfns.c (Fexpt): Undo previous change.
1800
1801 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
1802 so it can be used with various state vectors.
1803
1804 * emacs.c (endif): Convert -script into -scriptload.
1805 (standard_args): Add -scriptload. Allow -basic-display with one dash.
1806
1807 * fns.c (syms_of_fns): Add `emacs' to features.
1808
1809 * term.c (set_terminal_modes): If no TS_termcap_modes string,
1810 output newlines to scroll the old screen contents off the screen.
1811
1812 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
1813
1814 * floatfns.c (Fexpt): Use floats for negative exponent.
1815 Reported by D Goel.
1816
1817 2005-08-02 Richard M. Stallman <rms@gnu.org>
1818
1819 * frame.c (Fframe_char_width): Doc fix.
1820
1821 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
1822
1823 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
1824 Defvar it.
1825
1826 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
1827
1828 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
1829 (my_create_window, my_create_tip_window): Make static.
1830
1831 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
1832 (my_set_foreground_window, my_destroy_window): Make static.
1833
1834 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
1835
1836 Merge gnulib getopt implementation into Emacs.
1837
1838 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
1839 now part of lib-src.
1840
1841 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
1842
1843 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
1844
1845 2005-07-25 Jason Rumney <jasonr@gnu.org>
1846
1847 * w32menu.c (w32_menu_display_help): Suppress tooltip when
1848 navigating menus with the keyboard.
1849
1850 2005-07-23 Richard M. Stallman <rms@gnu.org>
1851
1852 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
1853
1854 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
1855 gc_relative_threshold, one by one.
1856
1857 * keyboard.c (read_char): Test gc_cons_threshold.
1858 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
1859
1860 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
1861 gc_relative_threshold, one by one.
1862
1863 * alloc.c (gc_cons_threshold): Not static.
1864 (gc_cons_combined_threshold): Var deleted.
1865 (gc_relative_threshold): New variable.
1866 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
1867 instead of gc_cons_combined_threshold.
1868
1869 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
1870 (gc_cons_combined_threshold): Declaration deleted.
1871
1872 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1873
1874 * mac.c: Don't include stdlib.h or string.h.
1875 (Fdo_applescript, Fmac_file_name_to_posix)
1876 (Fmac_file_name_to_posix): Doc fixes.
1877 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
1878 (Fmac_code_convert_string): Likewise.
1879 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
1880 if the executable is not contained in a bundle.
1881
1882 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
1883 (gray_width, gray_height): Remove defines.
1884 (gray_bits, gray_bitmap_width, gray_bitmap_height)
1885 (gray_bitmap_bits): Remove variables.
1886 (lispy_function_keys): Remove extern.
1887 (free_frame_menubar): Add extern.
1888 (x_window_to_frame): Remove function.
1889 (unwind_create_tip_frame): Add declaration.
1890 (x_set_name_internal): New function.
1891 (x_set_name, x_set_title): Use it.
1892 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
1893 (Fx_display_pixel_height, Fx_display_planes)
1894 (Fx_display_color_cells, Fx_server_max_request_size)
1895 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
1896 (Fx_display_mm_height, Fx_display_mm_width)
1897 (Fx_display_backing_store, Fx_display_visual_class)
1898 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
1899
1900 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
1901
1902 * macselect.c (Fx_own_selection_internal): Follow error conventions.
1903 (Fx_get_selection_internal, Fx_selection_owner_p)
1904 (Fx_selection_exists_p): Doc fixes.
1905 (syms_of_macselect) <selection-converter-alist>: Likewise.
1906
1907 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
1908
1909 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
1910
1911 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
1912 (Fccl_execute_on_string): Likewise; add usage info.
1913
1914 * composite.c (Fcompose_region_internal)
1915 (Fcompose_string_internal):
1916 Improve argument/docstring consistency.
1917
1918 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
1919 Fix typos in docstrings.
1920
1921 * textprop.c (Fnext_char_property_change)
1922 (Fprevious_char_property_change): Doc fixes.
1923
1924 * window.c (Fset_window_margins, Fset_window_fringes):
1925 Improve argument/docstring consistency.
1926
1927 * xfaces.c (Finternal_lisp_face_p): Doc fix.
1928
1929 2005-07-21 Andreas Schwab <schwab@suse.de>
1930
1931 * eval.c (restore_stack_limits): Return a value.
1932
1933 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
1934
1935 * eval.c (Fdefvar): Doc fix.
1936
1937 2005-07-20 Kim F. Storm <storm@cua.dk>
1938
1939 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
1940 Use make_save_value to unwind protect stream.
1941
1942 * lread.c (Fload, load_unwind):
1943 Use make_save_value to unwind protect stream.
1944
1945 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
1946
1947 * eval.c (Fprog2, Fcalled_interactively_p),
1948 (syms_of_eval) <debug-on-quit>: Doc fixes.
1949 (syms_of_eval) <max-specpdl-size>:
1950 (Finteractive_p): Fix typos in docstrings.
1951
1952 2005-07-19 Kim F. Storm <storm@cua.dk>
1953
1954 * w32fns.c (Vx_hand_shape): Variable removed.
1955 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
1956
1957 2005-07-19 Kenichi Handa <handa@m17n.org>
1958
1959 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
1960
1961 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
1962
1963 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
1964
1965 2005-07-18 Kim F. Storm <storm@cua.dk>
1966
1967 * frame.h (struct frame): New member already_hscrolled_p.
1968
1969 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
1970 to avoid redisplay looping hscrolling back and forth ad infinitum.
1971
1972 2005-07-18 Juri Linkov <juri@jurta.org>
1973
1974 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
1975 * keymap.c (Fminor_mode_key_binding):
1976 * macterm.c (mac-emulate-three-button-mouse):
1977 Delete duplicate duplicate words.
1978
1979 2005-07-18 Ken Raeburn <raeburn@gnu.org>
1980
1981 * minibuf.c (Ftest_completion): Fix odd syntax in test.
1982
1983 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1984
1985 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
1986
1987 * macgui.h (struct _XGC): New struct.
1988 (GC): Use it.
1989 (GCForeground, GCBackground, GCFont): Use X11 mask values.
1990 (XCreateGC, XParseGeometry): Move externs to macterm.h.
1991
1992 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
1993 (XSetFont): Add declaration.
1994 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
1995 Remove functions.
1996 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
1997 New defines.
1998 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
1999 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
2000 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
2001 Use them.
2002 (mac_erase_rectangle): New function.
2003 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
2004 (x_draw_stretch_glyph_string): Use it.
2005 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
2006 (XSetBackground, XSetFont): Adjust for new GC implementation.
2007 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
2008 (XTset_vertical_scroll_bar): Clear area under scroll bar.
2009
2010 * macterm.h (struct mac_display_info): Change types of
2011 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
2012 (XCreateGC, XParseGeometry): Move externs from macgui.h.
2013
2014 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
2015
2016 2005-07-16 Richard M. Stallman <rms@gnu.org>
2017
2018 * buffer.c (Fmake_overlay): Doc fix.
2019
2020 2005-07-16 Eli Zaretskii <eliz@gnu.org>
2021
2022 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
2023 Vw32_valid_locale_ids, and Vw32_valid_codepages.
2024
2025 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2026
2027 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
2028 Use Fstring_as_unibyte instead of string_make_unibyte.
2029
2030 2005-07-15 Richard M. Stallman <rms@gnu.org>
2031
2032 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
2033
2034 2005-07-15 Kim F. Storm <storm@cua.dk>
2035
2036 * xdisp.c: Fix redisplay loop in last change.
2037 (IT_POS_VALID_AFTER_MOVE_P): New macro.
2038 (move_it_vertically_backward, move_it_by_lines): Use it.
2039
2040 2005-07-14 Jason Rumney <jasonr@gnu.org>
2041
2042 * w32.c (init_environment): Default HOME directory to user's
2043 appdata directory if possible.
2044
2045 2005-07-14 Kim F. Storm <storm@cua.dk>
2046
2047 * .gdbinit (pitx): Fix output format. Print string charpos.
2048
2049 * lread.c (syms_of_lread): Initialize seen_list.
2050
2051 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
2052
2053 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
2054 Staticpro re_match_object.
2055
2056 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2057
2058 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
2059 dereference.
2060
2061 * macterm.c (mac_window_to_frame): Remove duplicate define.
2062
2063 2005-07-14 Kenichi Handa <handa@m17n.org>
2064
2065 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
2066 (code_convert_region): Adjust for the above change.
2067 (set_conversion_work_buffer): If the work buffer is already in
2068 use, generate a new buffer and return it. Otherwise return Qnil.
2069 (run_pre_post_conversion_on_str): Adjust for the above change.
2070 (run_pre_write_conversin_on_c_str): Likewise.
2071
2072 2005-07-13 Kim F. Storm <storm@cua.dk>
2073
2074 * xdisp.c (start_display): Don't reseat to next visible line start
2075 if current start position is in a string or image.
2076 (move_it_vertically_backward): Be sure to move out of strings and
2077 images when moving it2 forward.
2078 (move_it_by_lines): When moving forward, move to next buffer
2079 position if we end up in a string or image. When moving backward,
2080 count rows moved over when moving to start of current row in case
2081 row starts in middle of a string or image. Also move further
2082 backward if we end up in a string or image.
2083 (try_cursor_movement): If overlay string spans multiple lines,
2084 move backward to set cursor on start of an overlay string.
2085 (cursor_row_p): Row is ok if cursor is at newline from string, but
2086 string starts on this line (so we always position cursor at start
2087 of string).
2088
2089 * indent.c (Fvertical_motion): If start position is on an image,
2090 don't move back if we move too far (that's almost certain to happen).
2091
2092 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
2093 row in minibuffer windows.
2094 (try_window): Don't check margins in minibuffer windows.
2095
2096 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2097
2098 * macterm.c: Don't include stdlib.h or composite.h.
2099 (x_use_underline_position_properties, last_mouse_press_frame)
2100 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
2101 (syms_of_macterm, mac_initialize): Don't initialize them.
2102 (waiting_for_input, initial_argv, initial_argc)
2103 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
2104 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
2105 (extra_keyboard_modifiers): Fix type in extern.
2106 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
2107 (x_scroll_bar_report_motion): Add argument types to declaration.
2108 (mac_compute_glyph_string_overhangs): Add declaration.
2109 (disable_mouse_highlight): Remove unused variable.
2110 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
2111 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
2112 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
2113 All callers changed.
2114 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
2115 timestamp.
2116 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
2117 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
2118 only when its width is less than the height.
2119 (XTredeem_scroll_bar): Sync with xterm.c.
2120 (font_name_table, font_name_table_size, font_name_count):
2121 Make static.
2122 (drag_and_drop_file_list): Remove variable. Previous use is now
2123 local to function.
2124 (do_ae_open_documents): Move DRAG_N_DROP event construction part
2125 from XTread_socket.
2126 (XTread_socket): Consolidate setting of event timestamp.
2127 Move DRAG_N_DROP event construction part to do_ae_open_documents.
2128 Support extra_keyboard_modifiers.
2129
2130 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
2131 beginning with that for ASCII.
2132
2133 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
2134
2135 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
2136 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
2137 (syms_of_alloc): Declare gc-cons-percentage.
2138
2139 * eval.c (Feval, Ffuncall):
2140 * keyboard.c (read_char):
2141 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
2142
2143 * lisp.h (gc_cons_combined_threshold): Declare.
2144
2145 2005-07-12 Kim F. Storm <storm@cua.dk>
2146
2147 * coding.c (Qprocess_argument):
2148 * coding.h (Qprocess_argument): Remove unused var.
2149
2150 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
2151
2152 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2153
2154 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
2155 Endian.h.
2156 [!MAC_OSX] (fchmod, fchown): New functions.
2157 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
2158 Use SBYTES and EndianU32_BtoN.
2159 (mac_get_object_from_code): Return 4 byte string even if argument
2160 is 0. Use make_unibyte_string and EndianU32_NtoB.
2161 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
2162 (Fmac_set_file_type): Fix documents and argument declarations.
2163 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
2164
2165 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
2166
2167 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
2168
2169 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2170
2171 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
2172 Lucid if X_I18N, font otherwise.
2173
2174 2005-07-10 Steven Tamm <steventamm@mac.com>
2175
2176 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
2177 (Fmac_set_file_type, Fmac_set_file_creator): Add.
2178 (mac_get_object_from_code, mac_get_code_from_arg): Add.
2179
2180 2005-07-10 Richard M. Stallman <rms@gnu.org>
2181
2182 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
2183 (syms_of_lread): Set up eval-buffer-list.
2184 (Feval_buffer, Feval_region): Bind eval-buffer-list.
2185
2186 2005-07-08 Richard M. Stallman <rms@gnu.org>
2187
2188 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
2189
2190 2005-07-08 Kim F. Storm <storm@cua.dk>
2191
2192 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
2193 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
2194
2195 2005-07-07 Kim F. Storm <storm@cua.dk>
2196
2197 * window.c (Frecenter): Fix last change (set iarg before use).
2198
2199 2005-07-06 Richard M. Stallman <rms@gnu.org>
2200
2201 * window.c (Frecenter): When arg is inside the scroll margin,
2202 move it out of the margin.
2203
2204 2005-07-06 Jason Rumney <jasonr@gnu.org>
2205
2206 * w32console.c (initialize_w32_display): Detect when the console
2207 dimensions are insane, and default to 80x25 instead.
2208 (w32_use_full_screen_buffer): Default to NIL.
2209
2210 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2211
2212 * macterm.c (mac_draw_vertical_window_border): Use foreground of
2213 VERTICAL_BORDER_FACE_ID for vertical border line.
2214 (mac_encode_char): Call check_ccl_update in advance.
2215 (mac_to_x_fontname, x_font_name_to_mac_font_name)
2216 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
2217 Don't assume that font family length is less than 32.
2218 (x_compute_min_glyph_bounds): Make static.
2219 (x_load_font): Never set fonts_changed_p to zero.
2220
2221 2005-07-04 Lute Kamstra <lute@gnu.org>
2222
2223 * Update FSF's address in GPL notices.
2224
2225 2005-07-03 Richard M. Stallman <rms@gnu.org>
2226
2227 * xdisp.c (try_window): Fix previous change in how it handles
2228 a partially-visible line or one only partly past the margin.
2229
2230 * window.c (window_scroll_pixel_based): Take account
2231 of this_scroll_margin when finding point when scrolling up.
2232
2233 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
2234
2235 * window.c (window_scroll_pixel_based, window_scroll_line_based):
2236 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
2237 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
2238
2239 2005-07-02 Juri Linkov <juri@jurta.org>
2240
2241 * w32term.c (w32_draw_vertical_window_border): Use foreground of
2242 VERTICAL_BORDER_FACE_ID for vertical border line.
2243
2244 2005-07-02 Eli Zaretskii <eliz@gnu.org>
2245
2246 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
2247 fchmod so that chmod doesn't get called on MSDOS before the file
2248 is closed.
2249
2250 2005-07-01 Jason Rumney <jasonr@gnu.org>
2251
2252 * w32term.c (cleartype_active): New flag for enabling sub-pixel
2253 workaround.
2254 (w32_initialize): Initialize it.
2255 (w32_native_per_char_metric): Allow a couple of extra pixels when
2256 Cleartype is active.
2257
2258 * w32term.c (w32_initialize): Move check for screen reader here
2259 from syms_of_w32term.
2260
2261 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2262
2263 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
2264 is not zero.
2265
2266 2005-07-01 Masatake YAMATO <jet@gyve.org>
2267
2268 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
2269
2270 2005-06-30 Juri Linkov <juri@jurta.org>
2271
2272 * xdisp.c (x_draw_vertical_border): If left fringe is not present
2273 decrease x coord of vertical border by 1 pixel to not occupy text
2274 area of the right window.
2275
2276 * xterm.c (x_draw_vertical_window_border): Use foreground of
2277 VERTICAL_BORDER_FACE_ID for vertical border line.
2278
2279 * term.c (turn_on_face): In standout mode apply specified
2280 fg to bg, and specified bg to fg (this makes the logic of
2281 inversion on terminal consistent with X).
2282
2283 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
2284
2285 * eval.c (user_variable_p_eh): New function.
2286 (Fuser_variable_p): Use it. Clarify docstring.
2287 Return t for aliases of user options, nil for alias loops.
2288
2289 2005-06-27 Richard M. Stallman <rms@gnu.org>
2290
2291 * eval.c (Fdefvar): Improve error message.
2292
2293 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2294
2295 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
2296 change.
2297
2298 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
2299
2300 * eval.c (Fdefvar): Don't try to set constant symbols.
2301
2302 2005-06-25 Richard M. Stallman <rms@gnu.org>
2303
2304 * macfns.c (Fx_show_tip): Pass new arg to try_window.
2305
2306 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
2307
2308 * xfns.c (Fx_show_tip): Pass new arg to try_window.
2309
2310 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
2311 (redisplay_window): Handle try_window reporting point in scroll margin.
2312
2313 * dispextern.h (try_window): Declare new arg.
2314
2315 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
2316 Use fchmod to copy the file modes.
2317 (Frename_file): Don't copy UID and GID here;
2318 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
2319
2320 * eval.c (call_debugger): Take full care of extending stack limits
2321 to make space for the debugger, and restore the change afterward.
2322 Bind debug-on-error to nil.
2323 (restore_stack_limits): New subroutine.
2324 (Fsignal): Extend specpdl bound along with eval depth bound,
2325 for calling edebug. Don't do either one, for calling debugger.
2326 (find_handler_clause): Don't bind debug-on-error here.
2327 Don't unbind anything either.
2328 Temporarily advance max_specpdl_size for calling
2329 internal_with_output_to_temp_buffer.
2330 (grow_specpdl): Don't alter max_specpdl_size before signaling
2331 an error.
2332 (syms_of_eval) <max-specpdl-size>: Doc fix.
2333
2334 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
2335
2336 2005-06-24 Eli Zaretskii <eliz@gnu.org>
2337
2338 * fileio.c (Frename_file): Undo last change: no need to ifdef away
2339 chown on DOS_NT platforms.
2340
2341 * w32.c (sys_chown): New function.
2342
2343 * s/ms-w32.h (chown): New; define to sys_chown.
2344
2345 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
2346
2347 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
2348 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
2349
2350 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
2351
2352 2005-06-23 Richard M. Stallman <rms@gnu.org>
2353
2354 * xdisp.c (get_next_display_element): Finish reversing the tests of
2355 Vnobreak_char_display.
2356
2357 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
2358 All uses changed.
2359 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
2360 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
2361
2362 * fileio.c (Frename_file): Preserve owner and group, if possible,
2363 when copying.
2364
2365 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
2366
2367 * abbrev.c (Funexpand_abbrev):
2368 * category.c (Fmake_category_set):
2369 * dispnew.c (Fsleep_for, Fsit_for):
2370 * editfns.c (Fsubst_char_in_region):
2371 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
2372 * frame.c (make_frame_without_minibuffer):
2373 * lread.c (read_vector):
2374 * macfns.c (check_x_frame):
2375 * process.c (Fstop_process, Fcontinue_process):
2376 * search.c (Freplace_match):
2377 * syntax.c (Fstring_to_syntax):
2378 * w32fns.c (check_x_frame, check_x_display_info):
2379 * xfaces.c (x_supports_face_attributes_p):
2380 * xselect.c (Fx_own_selection_internal): Follow error conventions.
2381
2382 * image.c (fn_png_init_io): Don't define it.
2383 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
2384 (png_read_from_file): New function, based on png_read_from_memory.
2385 (png_load): Use it, instead of fn_png_init_io.
2386
2387 2005-06-23 Kim F. Storm <storm@cua.dk>
2388
2389 * search.c (Fmatch_data): Remove evaporate option.
2390 (Fset_match_data): Do not mention evaporate option in doc string.
2391 Add commentary explaining evaporate arg (for internal use only).
2392 (unwind_set_match_data): Add comment on evaporate use.
2393
2394 2005-06-22 Miles Bader <miles@gnu.org>
2395
2396 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
2397 (realize_basic_faces, syms_of_xfaces): Update references to it.
2398 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
2399 to `VERTICAL_BORDER_FACE_ID'.
2400 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2401
2402 2005-06-21 Juri Linkov <juri@jurta.org>
2403
2404 * dispextern.h: Add extern Qframe_set_background_mode.
2405
2406 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2407 Qframe_set_background_mode.
2408
2409 * frame.c (Fmodify_frame_parameters):
2410 Call frame-set-background-mode after changing the background color
2411 on non-window non-dos branch.
2412
2413 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2414
2415 * fns.c (Fchar_table_range):
2416 * process.c (Fmake_network_process): Fix spellings.
2417
2418 2005-06-20 Kim F. Storm <storm@cua.dk>
2419
2420 * fns.c (Fsort): Doc fix.
2421
2422 2005-06-20 Miles Bader <miles@gnu.org>
2423
2424 * xfaces.c (Qvertical_divider): New variable.
2425 (realize_basic_faces): Realize its face.
2426 (syms_of_xfaces): Initialize it.
2427
2428 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2429
2430 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2431 window-separator on ttys using `vertical-divider' face by default.
2432
2433 2005-06-17 Richard M. Stallman <rms@gnu.org>
2434
2435 * xdisp.c (get_next_display_element):
2436 Reverse test of Vshow_nonbreak_escape.
2437
2438 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2439 (Ftty_no_underline): New function.
2440 (syms_of_term): defsubr it.
2441
2442 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2443
2444 * dispnew.c (spec_glyph_lookup_face): New function.
2445 (build_frame_matrix_from_leaf_window): Use it.
2446
2447 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2448
2449 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2450
2451 2005-06-12 Richard M. Stallman <rms@gnu.org>
2452
2453 * keyboard.c (read_char): After catching a longjmp,
2454 call restore_getcjmp.
2455
2456 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2457
2458 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2459
2460 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2461
2462 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2463 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2464 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2465 events.
2466 (XTread_socket): Don't pass keyboard events with the option
2467 modifier to the system when Vmac_command_key_is_meta is nil or
2468 Vmac_option_modifier is non-nil.
2469 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
2470 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
2471 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
2472 handler function.
2473 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
2474 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
2475 handler part to mac_handle_mouse_event.
2476
2477 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
2478
2479 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
2480 NEW-ALIAS and BASE-VARIABLE, respectively.
2481
2482 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2483
2484 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2485 (get_phys_cursor_geometry, format_mode_line_unwind_data)
2486 (get_line_height_property, x_produce_glyphs): Remove unused vars.
2487
2488 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
2489
2490 2005-06-13 Eli Zaretskii <eliz@gnu.org>
2491
2492 * w32term.c (x_use_underline_position_properties): New variable.
2493 (x_draw_glyph_string): Remind in a comment to change doc string of
2494 x-use-underline-position-properties if/when underline positioning
2495 is implemented.
2496 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
2497 and initialize it to nil.
2498
2499 2005-06-12 Jason Rumney <jasonr@gnu.org>
2500
2501 * w32fns.c (NEWOPENFILENAME): New struct.
2502 (Fx_file_dialog): Use it to trick the system into giving us up to
2503 date dialogs on systems that are documented to support it.
2504 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
2505
2506 2005-06-12 Eli Zaretskii <eliz@gnu.org>
2507
2508 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
2509 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
2510
2511 2005-06-11 Eli Zaretskii <eliz@gnu.org>
2512
2513 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
2514 to CreateDIBSection to avoid a compiler warning.
2515 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
2516 warning.
2517 (png_load): Cast return values of fn_png_create_read_struct and
2518 fn_png_create_info_struct, to avoid compiler warnings on W32.
2519 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
2520 to avoid compiler warnings.
2521 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
2522 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
2523 avoid a compiler warning.
2524 (tiff_load): Cast return values of fn_TIFFOpen and
2525 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
2526 to IMAGE_BACKGROUND to avoid a compiler warning.
2527 (gif_load): Cast return values of fn_DGifOpenFileName and
2528 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
2529 IMAGE_BACKGROUND to avoid a compiler warning.
2530 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
2531 before redefining.
2532
2533 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
2534 the call to CreateDIBSection, to avoid a compiler warning.
2535
2536 2005-06-11 Jason Rumney <jasonr@gnu.org>
2537
2538 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
2539 minibuffer.
2540 * macfns.c (Fx_file_dialog): Likewise.
2541
2542 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2543
2544 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
2545
2546 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2547
2548 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
2549 * w32fns.c (syms_of_w32fns): Fix spellings.
2550
2551 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2552
2553 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
2554 `verbose'; print diagnostic messages only if it is non-zero.
2555 All callers changed to pass a zero value unless DEBUG_DUMP is defined
2556 in the environment.
2557 (copy_executable_and_dump_data): Print section names with %.8s.
2558
2559 2005-06-10 Masatake YAMATO <jet@gyve.org>
2560
2561 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
2562 when mouse_face is not given.
2563
2564 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
2565
2566 * window.c (Fselect_window): Adapt call to Fselect_frame.
2567
2568 * lisp.h: Update EXFUN of Fselect_frame.
2569
2570 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
2571
2572 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
2573 no_enter.
2574 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
2575 Adapt to above change.
2576
2577 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2578
2579 * fns.c (Fmemq, Fmaphash): Doc fixes.
2580
2581 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2582
2583 * xfaces.c (Fdisplay_supports_face_attributes_p):
2584 Fix typo in docstring.
2585
2586 2005-06-08 Steven Tamm <steventamm@mac.com>
2587
2588 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
2589 used by gcc4 on intel mac.
2590
2591 2005-06-09 Kim F. Storm <storm@cua.dk>
2592
2593 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
2594 in REUSE list if non-nil; free them if equal to evaporate.
2595 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
2596 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
2597 (restore_search_regs): Rename from restore_match_data. Uses changed.
2598 (unwind_set_match_data): New function.
2599 (record_unwind_save_match_data): New function like save-match-data.
2600
2601 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
2602 (record_unwind_save_match_data): Add prototype.
2603 (restore_search_regs): Rename from restore_match_data.
2604
2605 * composite.c (compose_chars_in_text):
2606 * eval.c (do_autoload):
2607 * macmenu.c (set_frame_menubar):
2608 * process.c (read_process_output, exec_sentinel):
2609 * xmenu.c (set_frame_menubar):
2610 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
2611 * w32menu.c (set_frame_menubar):
2612 Use record_unwind_save_match_data.
2613
2614 2005-06-08 Richard M. Stallman <rms@gnu.org>
2615
2616 * xdisp.c (get_next_display_element): Alter previous change:
2617 Distinguish Vshow_nonbreak_escape = t or not t.
2618 For t, use escape_glyph once again, as before previous change.
2619 Use space or hyphen for display, instead of the non-ASCII char.
2620 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
2621
2622 * process.c (Fstart_process): Don't touch command_channel_p slot.
2623
2624 * process.h (struct process): Delete command_channel_p.
2625
2626 2005-06-07 Masatake YAMATO <jet@gyve.org>
2627
2628 * xdisp.c (note_mode_line_or_margin_highlight):
2629 Check the overlapping of re-rendering area to avoid flickering.
2630 (note_mouse_highlight): Call clear_mouse_face if PART
2631 is not ON_MODE_LINE nor ON_HEADER_LINE.
2632
2633 2005-06-07 Kim F. Storm <storm@cua.dk>
2634
2635 * process.c: Improve commentary for adaptive read buffering.
2636
2637 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
2638
2639 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
2640 if available.
2641
2642 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2643
2644 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
2645 New functions for popping down menus on C-g.
2646 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
2647
2648 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
2649 non-static.
2650
2651 * config.in: Add HAVE_CANCELMENUTRACKING.
2652
2653 2005-06-06 Eli Zaretskii <eliz@gnu.org>
2654
2655 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
2656
2657 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
2658
2659 * w32proc.c (RVA_TO_PTR): New macro.
2660
2661 * w32heap.c (RVA_TO_PTR): No need to #undef now.
2662
2663 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
2664 Depend on w32heap.h.
2665
2666 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
2667
2668 * keyboard.c (command_loop_1): Update Vthis_original_command.
2669
2670 2005-06-06 Richard M. Stallman <rms@gnu.org>
2671
2672 * xmenu.c (popup_get_selection): Undo previous change.
2673
2674 2005-06-06 Juri Linkov <juri@jurta.org>
2675
2676 * xdisp.c (Qno_break_space): New variable.
2677 (syms_of_xdisp): Initialize it.
2678 (get_next_display_element): Add no-break space and soft hypen
2679 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
2680 Use `no-break-space' face for no-break spaces.
2681
2682 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2683
2684 * window.c (delete_window): Handle the case where a h/vchild has
2685 a h/vchild.
2686
2687 2005-06-05 Eli Zaretskii <eliz@gnu.org>
2688
2689 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
2690 call to pfn_setsockopt, cast optval to `const char *'.
2691
2692 2005-06-04 Eli Zaretskii <eliz@gnu.org>
2693
2694 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
2695 (open_unc_volume): Cast return value of map_w32_filename, to avoid
2696 compiler warnings.
2697
2698 * s/ms-w32.h (fileno): Don't define if already defined.
2699
2700 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
2701
2702 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
2703
2704 2005-06-04 Richard M. Stallman <rms@gnu.org>
2705
2706 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
2707
2708 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2709
2710 * macmenu.c (cleanup_popup_menu): New function.
2711 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
2712 mac_menu_show Quit:s.
2713 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
2714 a dialog).
2715
2716 2005-06-04 Kim F. Storm <storm@cua.dk>
2717
2718 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
2719
2720 * callproc.c (Fcall_process): Don't use alloca to gradually
2721 increase size of buf, as it effectively uses twice the necessary
2722 space on the stack. Instead, pre-allocate buf of full size, and
2723 gradually increase the read size.
2724
2725 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
2726
2727 * eval.c (unbind_to): Preserve value of Vquit_flag.
2728
2729 * xterm.c (handle_one_xevent): Also ignore mouse motion just
2730 before a button release event.
2731
2732 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
2733
2734 * xfaces.c (Finternal_lisp_face_equal_p): Really report
2735 on faces in a frame, if the argument FRAME is non-nil.
2736 Improve argument/docstring consistency.
2737
2738 2005-06-02 Kim F. Storm <storm@cua.dk>
2739
2740 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
2741 (x_consider_frame_title, Fformat_mode_line): Save offset into
2742 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
2743
2744 2005-06-01 Kim F. Storm <storm@cua.dk>
2745
2746 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
2747
2748 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2749
2750 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
2751 resolution fields for scalable fonts to 0.
2752
2753 * xfaces.c (build_scalable_font_name): Round pixel size to the
2754 nearest integer.
2755
2756 2005-06-01 Kim F. Storm <storm@cua.dk>
2757
2758 * xdisp.c (display_mode_line): Support nested calls to redisplay
2759 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
2760
2761 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
2762
2763 * fileio.c (Finsert_file_contents):
2764 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2765
2766 2005-05-31 Kim F. Storm <storm@cua.dk>
2767
2768 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
2769 (mode_line_noprop_ptr): Rename from frame_title_*.
2770 (store_mode_line_noprop_char): Rename from store_frame_title_char.
2771 (store_mode_line_noprop): Rename from store_frame_title.
2772 (mode_line_target): New enum to specify current output target
2773 for mode line formatting.
2774 (display_mode_element): Test it rather than frame_title_ptr and
2775 mode_line_string_list to determine where output should go.
2776 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
2777 (Vmode_line_unwind_vector): New variable.
2778 (format_mode_line_unwind_data, unwind_format_mode_line):
2779 New functions for unwind protection in mode line formatting.
2780 (x_consider_frame_title): Use them and new local var 'title_start'
2781 to support nested calls to format-mode-line and redisplay.
2782 Set mode_line_target to MODE_LINE_TITLE.
2783 (Fformat_mode_line): Use them and new local var 'string_start' to
2784 support nested calls to format-mode-line and redisplay.
2785 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
2786 Don't trim trailing dashes.
2787 (decode_mode_spec): Don't make infinite number of trailing dashes
2788 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
2789 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
2790 mode_line_string_face_prop, and Vmode_line_unwind_vector.
2791 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
2792 Initialize mode_line_target to MODE_LINE_DISPLAY.
2793
2794 2005-05-29 Richard M. Stallman <rms@gnu.org>
2795
2796 * buffer.c (Fbuffer_local_value): Call indirect_variable.
2797
2798 2005-05-28 Masatake YAMATO <jet@gyve.org>
2799
2800 * xdisp.c (note_mode_line_or_margin_highlight): Change the
2801 pointer to a hand cursor when hoovering over a mouse-face.
2802
2803 2005-05-27 Kenichi Handa <handa@m17n.org>
2804
2805 * xterm.c (x_encode_char): Call check_ccl_update in advance.
2806
2807 * ccl.c: Now an element of Vccl_program_table is a vector of
2808 length 4, not 3.
2809 (ccl_get_compiled_code): New arg idx. Caller changed.
2810 Adjust for the change of Vccl_program_table.
2811 (setup_ccl_program): Adjust for the change of Vccl_program_table.
2812 (check_ccl_update): New function.
2813 (Fregister_ccl_program): Use ASET to set an element of a vector.
2814 Adjusted for the change of Vccl_program_table.
2815
2816 * ccl.h (struct ccl_program): New member idx.
2817 (check_ccl_update): Extern it.
2818
2819 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
2820
2821 * image.c (Vimage_library_alist): Move from image.el.
2822 (syms_of_image): Defvar it.
2823 (lookup_image_type): Use it.
2824
2825 * buffer.c (Fbuffer_local_value): Make argument name match its use
2826 in docstring.
2827
2828 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
2829
2830 * keyboard.c (Frecursive_edit): Fix typo in docstring.
2831 (Fposn_at_x_y): Make argument name match its use in docstring.
2832
2833 2005-05-26 Lute Kamstra <lute@gnu.org>
2834
2835 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
2836
2837 2005-05-24 Masatake YAMATO <jet@gyve.org>
2838
2839 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
2840 as loop sentinels.
2841
2842 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
2843
2844 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
2845 select frame title ("Question"/"Information").
2846 (xdialog_show): Use it.
2847
2848 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
2849
2850 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
2851
2852 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
2853 a third argument (Qnil).
2854
2855 * lisp.h: x-popup-dialog can have three arguments.
2856
2857 * editfns.c (Fmessage_box): Use "Information" for frame title.
2858
2859 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
2860
2861 * termcap.c [VMS]: Include <starlet.h>.
2862
2863 2005-05-23 Masatake YAMATO <jet@gyve.org>
2864
2865 * xdisp.c (note_mode_line_or_margin_highlight): Add code
2866 for mouse-face. Change the type of the first argument from `window'
2867 to `Lisp_Object'.
2868 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
2869 window instead of w.
2870
2871 2005-05-22 Andreas Schwab <schwab@suse.de>
2872
2873 * process.c (send_process): Move misplaced volatile.
2874
2875 2005-05-21 Richard M. Stallman <rms@gnu.org>
2876
2877 * xdisp.c (display_mode_element): If we're processing a list and
2878 padding is specified, put it after the last element.
2879
2880 2005-05-21 Eli Zaretskii <eliz@gnu.org>
2881
2882 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
2883 "superroot" on DOS_NT systems.
2884
2885 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
2886
2887 * process.c (send_process): Restore the SIGPIPE handler if we
2888 catch a SIGPIPE.
2889
2890 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
2891
2892 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
2893 misleading comments).
2894 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
2895
2896 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
2897
2898 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
2899 Correct the right value.
2900
2901 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
2902
2903 * keyboard.c (syms_of_keyboard): Remove Lisp variables
2904 post-command-idle-hook and post-command-idle-delay.
2905 (command_loop_1): Don't try to execute post-command-idle-hook.
2906
2907 2005-05-16 Kim F. Storm <storm@cua.dk>
2908
2909 * xdisp.c (handle_display_prop): Handle empty replacement.
2910 (handle_single_display_spec): Return -1 for empty replacement.
2911
2912 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
2913
2914 * .gdbinit (pitx): Print more info about iterator.
2915
2916 2005-05-16 Andreas Schwab <schwab@suse.de>
2917
2918 * unexmacosx.c (unexec_realloc): Move declarations before statements.
2919
2920 2005-05-14 Richard M. Stallman <rms@gnu.org>
2921
2922 * xdisp.c (message3): Call cancel_echoing.
2923
2924 * alloc.c (Fmemory_full_p): New function.
2925 (syms_of_alloc): defsubr it.
2926
2927 * process.c (send_process_trap): Unblock SIGPIPE.
2928 (send_process): Reset SIGPIPE handler before reporting error.
2929
2930 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
2931
2932 * emacs.c (syms_of_emacs): Fix doc string for system-type.
2933
2934 2005-05-13 Richard M. Stallman <rms@gnu.org>
2935
2936 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
2937 (Finsert_file_contents): If we read 0 bytes from a special file,
2938 unlock the visited file if we locked it.
2939 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
2940 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
2941
2942 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2943
2944 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
2945
2946 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
2947 Regard toolkit scroll bar thumb drag events as squeezable and prevent
2948 redisplay from being paused by them.
2949
2950 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
2951 [!MAC_OSX] (target_ticks): Remove variable.
2952 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
2953 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
2954 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
2955 event occurs before timeout, behave as if the function were interrupted.
2956 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
2957 handling using Time Manager routines.
2958 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
2959 New variables.
2960 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
2961 (setitimer): New functions.
2962
2963 * macfns.c, macmenu.c: Don't include signal.h.
2964
2965 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
2966 Rename from get_control_part_bound. All callers changed.
2967 (x_scroll_bar_clear): New function.
2968 (x_clear_frame): Use it.
2969 (XTset_vertical_scroll_bar): Don't call Draw1Control.
2970 (x_scroll_bar_handle_click): Change type of second argument from
2971 int to ControlPartCode.
2972 (check_alarm): Remove declaration.
2973 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
2974 (XTread_socket): Use ControlPartCode instead of SInt16.
2975
2976 2005-05-13 Nozomu Ando <nand@mac.com>
2977
2978 * unexmacosx.c: Include assert.h.
2979 (MACOSX_MALLOC_MULT16): New define.
2980 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
2981 ptr is in unexec regions by checking it is multiple of 16.
2982 (unexec_malloc_header_t): New typedef.
2983 (unexec_malloc, unexec_realloc, unexec_free): Store and use
2984 allocated size information in unexec_malloc_header.
2985
2986 2005-05-10 Richard M. Stallman <rms@gnu.org>
2987
2988 * xterm.c (noinclude): Add #undef.
2989
2990 * image.c, xfns.c, xmenu.c: Don't include signal.h.
2991
2992 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
2993
2994 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
2995 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
2996 Doc fixes.
2997
2998 * dired.c (Ffile_name_completion): Make argument name
2999 match its use in docstring.
3000
3001 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
3002
3003 * eval.c (Fdefvaralias): Remove any pre-existing
3004 variable-documentation property of the alias.
3005
3006 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
3007
3008 * xfns.c (start_hourglass): Do nothing when running on a tty.
3009
3010 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
3011
3012 * fns.c (Fchar_table_range): Fix typos in docstring.
3013
3014 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3015
3016 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
3017
3018 2005-05-06 Eli Zaretskii <eliz@gnu.org>
3019
3020 * lread.c (Flocate_file_internal): Doc fix.
3021
3022 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
3023
3024 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3025
3026 * macselect.c (x_own_selection): Accept Lisp string as result of
3027 selection converter function.
3028 (x_clear_frame_selections): Don't call x-lost-selection-functions
3029 if Emacs is not owner of the selection.
3030 (Vmac_services_selection): Put variable and initialization in
3031 #ifdef MAC_OSX.
3032 (syms_of_macselect) [MAC_OSX]: Set default value of
3033 Vmac_services_selection to PRIMARY.
3034
3035 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
3036 (mac_handle_tool_bar_click): Remove unused function and declaration.
3037 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
3038 (install_scroll_bar_timer, set_scroll_bar_timer)
3039 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
3040 (get_control_part_bound, x_scroll_bar_handle_press)
3041 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
3042 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
3043 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
3044 (scroll_bar_timer_event_posted_p): New variables.
3045 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
3046 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
3047 (x_scroll_bar_create): Set control reference with NewControl.
3048 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
3049 Initialize track_top and track_height to nil.
3050 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
3051 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
3052 (XTset_vertical_scroll_bar): Don't make space between scroll bar
3053 and associated window.
3054 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
3055 from window config.
3056 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3057 Set track_top and track_height to nil when scroll bar size is changed.
3058 Recalculate them if they are nil.
3059 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
3060 clicked control is a scroll bar.
3061 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
3062 event handler functions. Don't add modifiers to scroll bar click
3063 events. Call scroll bar release handler when window is deactivated.
3064 (mac_initialize): Remove unused code for X toolkit.
3065 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
3066 Initialize Vx_toolkit_scroll_bars to nil.
3067
3068 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3069 New members track_top and track_height.
3070
3071 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
3072 init_process when including sys/select.h.
3073
3074 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
3075
3076 * eval.c (Fdefvaralias): Doc fix.
3077
3078 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3079
3080 2005-05-05 Kim F. Storm <storm@cua.dk>
3081
3082 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
3083 default value.
3084 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
3085 Fix type of cursor-in-non-selected-windows.
3086
3087 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3088
3089 * mac.c: #undef init_process so not to conflict with system headers.
3090
3091 2005-05-02 Richard M. Stallman <rms@gnu.org>
3092
3093 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
3094
3095 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
3096
3097 * xdisp.c (Vcursor_in_non_selected_windows)
3098 (Qcursor_in_non_selected_windows): Vars deleted.
3099 (syms_of_xdisp): Don't initialize them.
3100 (get_window_cursor_type): Use cursor_in_non_selected_windows
3101 buffer slot.
3102
3103 2005-05-02 Kim F. Storm <storm@cua.dk>
3104
3105 * macros.c (executing_kbd_macro_index): Rename from
3106 executing_macro_index. All uses changed.
3107 (executing_kbd_macro_iterations): Rename from
3108 executing_macro_iterations. All uses changed.
3109 (executing_kbd_macro): Rename from executing_macro.
3110 All uses changed.
3111 (syms_of_macros): Rename Lisp var executing-macro-index to
3112 executing-kbd-macro-index.
3113
3114 * xdisp.c (move_it_in_display_line_to): Fix last change.
3115
3116 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3117
3118 * xmenu.c (Fx_popup_menu): Doc fix.
3119
3120 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
3121
3122 2005-05-02 Jason Rumney <jasonr@gnu.org>
3123
3124 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
3125
3126 2005-05-02 Nozomu Ando <nand@mac.com>
3127
3128 * sysselect.h: Fix typo.
3129
3130 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
3131
3132 * charset.c (Fchars_in_region): Remove as obsolete.
3133
3134 2005-05-01 Kim F. Storm <storm@cua.dk>
3135
3136 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
3137 TO_CHARPOS. This may happen if last glyphs was an image or stretch
3138 glyph.
3139
3140 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3141
3142 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
3143
3144 2005-05-01 Richard M. Stallman <rms@gnu.org>
3145
3146 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
3147 If user cancels the menu, quit unless FOR_CLICK.
3148
3149 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
3150 All uses changed.
3151 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
3152 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
3153 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
3154 * commands.h (Vexecuting_kbd_macro): Likewise.
3155
3156 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
3157
3158 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
3159
3160 2005-04-30 Richard M. Stallman <rms@gnu.org>
3161
3162 * fileio.c (Ffind_file_name_handler): Handle the `operations'
3163 property of the file name handler.
3164 (Qoperations): New variable.
3165 (syms_of_fileio): Initialize and staticpro it.
3166
3167 * xdisp.c (set_message_1): Delete xassert.
3168
3169 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3170
3171 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
3172
3173 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
3174
3175 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
3176 before/after including Carbon.h if there is a working mktime.
3177
3178 2005-04-28 Kim F. Storm <storm@cua.dk>
3179
3180 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
3181 Fix cyclic alias check. If alias loop is detected, signal
3182 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
3183
3184 2005-04-28 Lute Kamstra <lute@gnu.org>
3185
3186 * eval.c (do_autoload): Record only autoloads in the autoload
3187 property of symbols.
3188
3189 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
3190
3191 * emacs.c (USAGE1): Add --basic-display and --quick options.
3192
3193 2005-04-27 Kim F. Storm <storm@cua.dk>
3194
3195 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
3196
3197 2005-04-26 Richard M. Stallman <rms@gnu.org>
3198
3199 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
3200 (syms_of_window): Doc fixes.
3201
3202 * indent.c (Fvertical_motion): Undo previous change.
3203
3204 2005-04-26 Kenichi Handa <handa@m17n.org>
3205
3206 * fns.c (char_table_range): New function.
3207 (Fchar_table_range): Signal an error if characters in the range
3208 have inconsistent values. Don't check the parent.
3209
3210 2005-04-25 Kenichi Handa <handa@m17n.org>
3211
3212 * fontset.c (fontset_set): Fix previous change.
3213
3214 2005-04-24 Richard M. Stallman <rms@gnu.org>
3215
3216 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
3217
3218 2005-04-24 Eli Zaretskii <eliz@gnu.org>
3219
3220 * regex.c (re_search_2, re_match_2_internal): Convert second arg
3221 of RE_TRANSLATE to int, to shut up GCC warnings.
3222
3223 * fileio.c (Fcopy_file): Doc fix.
3224 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
3225 not needed.
3226
3227 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3228
3229 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
3230 (SOME_MACHINE_OBJECTS): Likewise.
3231 (mac.o): Depend on ccl.h.
3232 (macselect.o): New target.
3233
3234 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
3235 Call syms_of_macselect.
3236
3237 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
3238
3239 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
3240 (QCLIPBOARD): Remove variable.
3241 (syms_of_mac): Don't initialize it.
3242 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
3243 Remove functions.
3244 (syms_of_mac): Don't defsubr them.
3245 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
3246 (QHFS_plus_D, QHFS_plus_C): New variables.
3247 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3248 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
3249 (cfstring_create_normalized): New functions.
3250 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
3251 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3252
3253 * macterm.c (handling_window_update, terminate_flag):
3254 Remove variables.
3255 (do_window_update, do_ae_quit_application, XTread_socket):
3256 Don't use them.
3257 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
3258 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
3259 (init_service_handler): Move to macselect.c. Remove declarations.
3260 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
3261 (Qapplication, Qabout): New variables.
3262 (syms_of_mac): Initialize them.
3263 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
3264 (Qperform): New variables.
3265 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
3266 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
3267 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
3268 (mac_store_application_menu_event, init_menu_bar): New functions.
3269 [USE_CARBON_EVENTS] (mac_handle_command_event)
3270 (init_command_handler): New functions.
3271 (mac_handle_window_event): Return noErr on window update event.
3272 (do_ae_quit_application): Call mac_store_application_menu_event.
3273 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
3274 and init_menu_bar.
3275
3276 * macterm.h (x_clear_frame_selections): Add extern.
3277
3278 * macselect.c: New file for selection processing on Mac OS.
3279
3280 2005-04-23 Richard M. Stallman <rms@gnu.org>
3281
3282 * fileio.c (Fcopy_file): New arg MUSTBENEW.
3283 (Frename_file): Pass new arg to Fcopy_file.
3284
3285 * window.c (window_size_fixed): Variable deleted.
3286 (syms_of_window): Initialize window-size-fixed to nil.
3287 But don't DEFVAR window_size_fixed.
3288
3289 2005-04-23 Andreas Schwab <schwab@suse.de>
3290
3291 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
3292 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
3293 use lib64 instead of lib.
3294 (_LP64) [_ARCH_PPC64]: Define if not defined.
3295
3296 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
3297
3298 * s/ms-w32.h (HAVE_PWD_H): Define.
3299
3300 2005-04-22 Kenichi Handa <handa@m17n.org>
3301
3302 * fns.c (copy_sub_char_table): Explicitly copy the default value
3303 of the sub-chartable.
3304
3305 * fontset.c (fontset_set): When a sub-chartable is created,
3306 explicitly sets the defalt value.
3307
3308 2005-04-22 Kim F. Storm <storm@cua.dk>
3309
3310 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
3311 (Fsafe_plist_get): Rename to Fplist_get.
3312 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
3313 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
3314
3315 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
3316
3317 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
3318 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3319 Use Fplist_get instead of Fsafe_plist_get.
3320
3321 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
3322
3323 2005-04-21 Miles Bader <miles@gnu.org>
3324
3325 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
3326
3327 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
3328
3329 * sysdep.c: Remove reference to defunct vms-pwd.h.
3330 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
3331 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
3332
3333 * config.in: Regenerate.
3334
3335 2005-04-20 Kenichi Handa <handa@m17n.org>
3336
3337 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
3338 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
3339 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
3340
3341 * alloc.c (make_sub_char_table): Argument changed to initial
3342 value of the slots.
3343
3344 * data.c (Faref): Handle special slots used as default values of
3345 ascii, eight-bit-control, eight-bit-control. Don't ignore a
3346 default value set for a group of characters.
3347 (Faset): Signal an error if IDXVAL is not a valid character code.
3348 Make a sub-chartable with correct initial value.
3349
3350 * fns.c (Fset_char_table_range): Don't set slots used as default
3351 values for ascii, eight-bit-control, eight-bit-graphic.
3352 Don't call Faref with charset-id.
3353 (Fset_char_table_default): Document how to treat normal character
3354 argument. Handle special slots used as default values of ascii,
3355 eight-bit-control, eight-bit-control. Make a sub chartable if
3356 necessary.
3357
3358 2005-04-20 Kenichi Handa <handa@m17n.org>
3359
3360 * search.c (boyer_moore): Fix previous change.
3361
3362 2005-04-19 Kim F. Storm <storm@cua.dk>
3363
3364 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
3365 face unless last visible char and first invisible char have the
3366 same face. Also use default face if saved_face_id is undefined.
3367
3368 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3369
3370 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
3371 `full_name'.
3372 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
3373 mac_scriptcode member.
3374
3375 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
3376 (syms_of_mac): Don't initialize them.
3377 (Vmac_charset_info_alist): New variable.
3378 (syms_of_mac): Defvar it.
3379 (create_text_encoding_info_alist): New function.
3380 (decode_mac_font_name, mac_to_x_fontname)
3381 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
3382 code the correspondence among XLFD charsets, Mac script codes, and
3383 Emacs coding systems. Use Vmac_charset_info_alist and result of
3384 create_text_encoding_info_alist instead.
3385 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
3386 routines also on Mac OS Classic.
3387 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
3388 Use add_font_name_table_entry.
3389 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
3390 specified. Derive unspecified scalable fields from specified one.
3391 (x_list_fonts): Consider Valternate_fontname_alist.
3392 (kDefaultFontSize): Change value from 9 to 12.
3393 (XLoadQueryFont): Get decoded font family, font face, and charset
3394 from x_font_name_to_mac_font_name. Set full name of loaded font.
3395 (mac_unload_font): Free `full_name' member.
3396 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
3397 NULL. Copy full_name member of struct MacFontStruct to that of
3398 struct font_info.
3399
3400 2005-04-19 Kim F. Storm <storm@cua.dk>
3401
3402 * xdisp.c (handle_stop): Set saved_face_id to current face if
3403 selective_display_ellipsis_p so ellipsis will be shown in same
3404 face as preceding text.
3405 (setup_for_ellipsis): Don't set saved_face_id here.
3406 (next_element_from_display_vector): Default to saved_face_id.
3407
3408 * fns.c (Fsafe_get): New function.
3409 (syms_of_fns): Defsubr it.
3410
3411 * lisp.h (Fsafe_get): EXFUN it.
3412
3413 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3414 loops in case of bad face property lists. Limit number of face
3415 alias lookups to 10 (in case of face alias loops).
3416
3417 2005-04-18 Kim F. Storm <storm@cua.dk>
3418
3419 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3420 It replaces the corresponding member from struct window, as a
3421 window may now show multiple overlay arrows.
3422 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3423
3424 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3425 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3426
3427 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3428 rather than from window.
3429 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3430 overlay_arrow_p members.
3431 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3432 if not default.
3433
3434 * window.h (struct window): Remove member overlay_arrow_bitmap.
3435
3436 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3437
3438 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3439 Calls changed. Don't check for overlay-arrow-bitmap property here.
3440 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3441 fringe is present, return Lisp integer for bitmap (or -1 for default).
3442 Fix value of overlay-arrow-bitmap property to be a symbol, use
3443 lookup_fringe_bitmap to parse it.
3444 (display_line): Change call to overlay_arrow_at_row. Store integer
3445 return value as overlay bitmap in row rather than window.
3446 Only show overlay arrow if row displays text, or if no other overlay
3447 arrow is seen in window (if overlay marker is at point-max).
3448
3449 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3450
3451 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3452
3453 2005-04-18 Lute Kamstra <lute@gnu.org>
3454
3455 * lread.c (Vloads_in_progress): Static.
3456 * fns.c (Vloads_in_progress): Remove extern.
3457 (load_in_progress): Add extern.
3458 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3459
3460 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3461
3462 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3463
3464 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3465
3466 * macterm.c (XTread_socket): Don't beep on keyboard input even if
3467 no frame is visible.
3468
3469 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
3470
3471 * term.c (struct keys): Add support for shifted keys.
3472
3473 2005-04-16 Richard M. Stallman <rms@gnu.org>
3474
3475 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
3476 (set_message): Call with_echo_area_buffer with WHICH = 0.
3477 (set_message_1): Erase the echo area buffer first thing.
3478 (echo_area_display): Don't clear echo_message_buffer.
3479
3480 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3481
3482 * Makefile.in (mac.o): Depend on charset.h and coding.h.
3483
3484 * mac.c: Include charset.h and coding.h.
3485 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
3486 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
3487 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
3488
3489 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3490
3491 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
3492
3493 * macterm.c (x_autoselect_window_p): Remove variable.
3494 (last_window): New variable.
3495 (XTreassert_line_highlight, x_change_line_highlight):
3496 Remove declarations.
3497 (mac_focus_changed, x_detect_focus_change): New functions and
3498 declarations.
3499 (XTextExtents16, front_emacs_window): Remove function.
3500 (mac_focus_frame): New function.
3501 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
3502 (mac_check_for_quit_char): Use it instead of front_emacs_window.
3503 (x_scroll_bar_report_motion): Obtain window from control owner.
3504 (x_make_frame_invisible): Set window manager size hint.
3505 (do_mouse_moved): Remove function.
3506 (XTread_socket): Move its contents here. Generate select-window
3507 event on mouse movement if needed. Use x_detect_focus_change on
3508 activate/deactivate events. Don't deiconify frame or invalidate
3509 window rectangle when dnd items are dropped.
3510 Don't activate/deactivate root control.
3511 (frame_highlight, frame_unhighlight): Activate/deactivate root
3512 control here.
3513 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
3514
3515 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
3516 New extern.
3517
3518 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
3519
3520 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
3521 (lisp): Use it.
3522 (SOME_MACHINE_LISP): Add tooltip.
3523
3524 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3525
3526 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
3527 Don't include TextEncodingConverter.h.
3528 (mac_system_script_code, Vmac_system_locale): New variables.
3529 (syms_of_mac): Defvar them.
3530 (mac_get_system_locale): New function.
3531
3532 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
3533 Use ENCODE_SYSTEM to encode title bar string.
3534 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
3535 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
3536 Use CFStringGetSystemEncoding to get system default string encoding.
3537
3538 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
3539 TextEncodingConverter.h.
3540
3541 2005-04-13 Steven Tamm <steventamm@mac.com>
3542
3543 * macterm.c (syms_of_macterm): Remove redundant definition of
3544 mac-pass-control-to-system.
3545
3546 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3547
3548 * window.c (Fset_window_configuration): Be careful when you choose
3549 among several possible points for the new_current_buffer.
3550
3551 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3552
3553 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
3554 poll_for_input_1. Set interrupt_input_pending to 1 instead.
3555 (Qlanguage_change) [MAC_OS]: New variable.
3556 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
3557 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
3558
3559 * macterm.c (mac_keyboard_text_encoding)
3560 (current_mac_keyboard_text_encoding): Remove variables.
3561 (XTread_socket): Store language-change event if keyboard script change
3562 is detected. Don't convert input to `mac_keyboard_text_encoding'.
3563 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
3564
3565 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
3566
3567 2005-04-10 Richard M. Stallman <rms@gnu.org>
3568
3569 * emacs.c (standard_args): Rename --bare-bones to --quick.
3570 Add -D aka --basic-display.
3571
3572 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
3573
3574 2005-04-09 Richard M. Stallman <rms@gnu.org>
3575
3576 * keymap.c (where_is_internal): Convert a string used as event type
3577 into "(any string)".
3578
3579 * lread.c (Vloads_in_progress): Not static.
3580 * fns.c (Vloads_in_progress): Add extern.
3581 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
3582
3583 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
3584
3585 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
3586
3587 2005-04-09 Lute Kamstra <lute@gnu.org>
3588
3589 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
3590 within the accessible part of the buffer.
3591
3592 2005-04-09 Kim F. Storm <storm@cua.dk>
3593
3594 * lread.c (readevalloop): Add args START and END as region in
3595 current buffer to read. Callers changed.
3596 When specified, narrow to this region only when reading,
3597 not during eval. Track next point to read from during eval.
3598 Also restore point to "real" buffer position before eval.
3599 (Feval_region): Don't save excursion and restriction here, and
3600 don't narrow to region. Just pass region to readevalloop.
3601 Note: Point is now preserved even when PRINTFLAG is nil.
3602
3603 2005-04-08 Kim F. Storm <storm@cua.dk>
3604
3605 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
3606
3607 2005-04-06 Kim F. Storm <storm@cua.dk>
3608
3609 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
3610
3611 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3612
3613 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
3614 (Fmac_get_preference): Doc fix.
3615
3616 * macfns.c (Fx_create_frame, x_create_tip_frame):
3617 Add "fontset-mac" to fallback font/fontsets.
3618
3619 2005-04-04 Kim F. Storm <storm@cua.dk>
3620
3621 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
3622
3623 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
3624 Call it again after autoload.
3625
3626 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3627
3628 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
3629 mallopt.
3630
3631 * ralloc.c (r_alloc_init): Ditto.
3632
3633 2005-04-01 Kenichi Handa <handa@m17n.org>
3634
3635 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
3636 (Vascii_eqv_table): Extern them.
3637
3638 * casetab.c (set_case_table): If standard is nonzero, setup
3639 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
3640
3641 * search.c (looking_at_1): Use current_buffer->case_canon_table,
3642 not DOWNCASE_TABLE.
3643 (string_match_1): Likewise.
3644 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
3645 Vascii_downcase_table.
3646 (fast_string_match_ignore_case): Likewise.
3647 (search_buffer): Fix checking of boyer-moore usability.
3648 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
3649 No need of tranlating characters in PAT. Fix calculation of
3650 simple_translate.
3651
3652 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3653
3654 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
3655 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
3656 Use XtNtopShadowPixel and XtNbottomShadowPixel.
3657 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
3658 really work and that breaks with some versions of Xaw3d.
3659
3660 2005-03-31 Kenichi Handa <handa@m17n.org>
3661
3662 * coding.c (syms_of_coding): Fix previous change.
3663
3664 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
3665
3666 * fileio.c (search_embedded_absfilename): Fix last change.
3667
3668 2005-03-25 Kenichi Handa <handa@m17n.org>
3669
3670 * coding.c (syms_of_coding): Suggest to use set-coding-category in
3671 the docstring of coding-category-list.
3672
3673 2005-03-31 Kim F. Storm <storm@cua.dk>
3674
3675 * keyboard.c (Qmouse_fixup_help_message): New var.
3676 (syms_of_keyboard): Intern and staticpro it.
3677 (show_help_echo): Apply mouse-fixup-help-message to help string.
3678
3679 2005-03-30 Kim F. Storm <storm@cua.dk>
3680
3681 * xdisp.c (display_line): Allow multiple overlay arrows in window.
3682
3683 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3684
3685 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
3686 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
3687 (Ffile_name_absolute_p): Use it.
3688 (search_embedded_absfilename): New fun, extracted from
3689 Fsubstitute_in_file_name. Use file_name_absolute_p.
3690 Free the pw data after use.
3691 (Fsubstitute_in_file_name): Use it.
3692 After cutting a prefix, re-check file-name-handler.
3693
3694 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
3695
3696 * w32term.h (x_output): Add focus_state.
3697
3698 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
3699 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
3700
3701 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
3702
3703 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
3704 Use Fexit_minibuffer.
3705 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
3706
3707 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3708
3709 * dired.c (Ffile_attributes): Add a missing gcpro.
3710
3711 * alloc.c (make_number): The arg can be bigger than `int'.
3712 * lisp.h (make_number): Make prototype more precise.
3713
3714 * process.c, dired.c (Vfile_name_coding_system)
3715 (Vdefault_file_name_coding_system):
3716 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
3717 (Vdefault_file_name_coding_system): Remove unused declarations.
3718
3719 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3720
3721 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
3722 if it failed to pop up (Gnome "show pointer on ctrl" option makes
3723 menus fail to pop up).
3724
3725 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3726
3727 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
3728 Just prepend a backslash without replacing the NBSP by an SPC.
3729
3730 2005-03-22 Kim F. Storm <storm@cua.dk>
3731
3732 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
3733 * dispextern.h (lookup_derived_face): Fix prototype.
3734 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
3735
3736 * xdisp.c (handle_single_display_spec): Derive left-fringe and
3737 right-fringe face from fringe face.
3738
3739 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
3740 Derive face from fringe face.
3741
3742 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3743
3744 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
3745
3746 2005-03-22 David Kastrup <dak@gnu.org>
3747
3748 * textprop.c (Fnext_char_property_change)
3749 (Fprevious_char_property_change): Allow marker as limit.
3750 (Fnext_single_char_property_change)
3751 (Fprevious_single_char_property_change): Check that limit is a
3752 number in strings.
3753 (Fnext_single_char_property_change): Coerce position to integer.
3754 (Fprevious_single_char_property_change): Same here.
3755
3756 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
3757
3758 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
3759
3760 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
3761
3762 * frame.c (Fignore_event): Remove.
3763 (syms_of_frame): Don't defsubr it.
3764
3765 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
3766 redundant `ignore-event'.
3767
3768 2005-03-19 Eli Zaretskii <eliz@gnu.org>
3769
3770 * unexec.c (write_segment, unexec): Move these functions to avoid
3771 forward references (which cause errors with "gcc -gcoff").
3772
3773 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3774
3775 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
3776 that it doesn't become "tooltip". The specbind is enough.
3777
3778 * xrdb.c (x_load_resources): Use different char *helv when I18N
3779 is present.
3780
3781 2005-03-17 Kenichi Handa <handa@m17n.org>
3782
3783 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
3784
3785 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3786
3787 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
3788 Use xic_create_fontsetname even for non-Motif menus.
3789 Don't forget to free the fontsetname.
3790
3791 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
3792
3793 2005-03-17 Richard M. Stallman <rms@gnu.org>
3794
3795 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
3796
3797 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
3798 (Fmake_symbolic_link): Use G to read the new file name.
3799
3800 * callint.c (Finteractive): Document G option.
3801 (Fcall_interactively): Implement G option.
3802
3803 * buffer.c (buffer_lisp_local_variables): New function,
3804 broken out from Fbuffer_local_variables.
3805 (clone_per_buffer_values): Use buffer_lisp_local_variables.
3806
3807 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3808
3809 * xfns.c (xic_create_fontsetname): Add `motif' argument.
3810 Always return a freshly allocated string.
3811 (xic_create_xfontset): Adjust call.
3812
3813 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
3814 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
3815 (dump_realized_face): Fix warning.
3816
3817 * emacs.c (Fkill_emacs): YAILOM.
3818
3819 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
3820
3821 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3822
3823 * mac.c (HASHKEY_TERMINAL): Remove.
3824 (HASHKEY_MAX_NID): New macro.
3825 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
3826 argument.
3827 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
3828 (xrm_create_database, xrm_q_put_resource)
3829 (xrm_merge_string_database, xrm_q_get_resource_1)
3830 (xrm_q_get_resource): Change resource database representation so
3831 that it may not use multiple hash tables for a single database.
3832 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
3833
3834 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
3835
3836 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
3837
3838 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
3839 locale-coding-system, as was already done for WINDOWSNT.
3840
3841 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
3842 translation for chars in the 0-255 range.
3843
3844 2005-03-16 Lute Kamstra <lute@gnu.org>
3845
3846 * floatfns.c (Ffloor): Doc fix.
3847
3848 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3849
3850 * mac.c: Include macterm.h instead of directly including Carbon.h.
3851 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
3852 (Qarray, Qdictionary): New variables.
3853 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3854 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
3855 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
3856 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
3857 in callback for CFDictionaryApplyFunction.
3858 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3859 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3860 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
3861 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
3862 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
3863 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3864 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
3865 (skip_white_space, parse_comment, parse_include_file)
3866 (parse_binding, parse_component, parse_resource_name, parse_value)
3867 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
3868 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
3869 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
3870 New functions.
3871
3872 * macfns.c (mac_get_rdb_resource): Remove function.
3873 (x_get_string_resource): Use xrm_get_resource.
3874
3875 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
3876
3877 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
3878 name_list_element.
3879 (mac_make_rdb): Create resource database from preferences and
3880 argument string.
3881 (mac_term_init): Save resource database to cddr part of
3882 name_list_element.
3883
3884 * macterm.h (xrm_merge_string_database, xrm_get_resource)
3885 (xrm_get_preference_database): Add externs.
3886 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3887 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3888 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
3889
3890 * process.c (init_process): Change `#ifdef DARWIN' to `#if
3891 defined (DARWIN) || defined (MAC_OSX)'
3892
3893 * s/darwin.h (DARWIN): Don't define.
3894
3895 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3896
3897 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
3898 Remove unused variables.
3899 (syms_of_macfns): Don't initialize them. Likewise for
3900 Qface_set_after_frame_default. Defvar and initialize
3901 Vx_window_horizontal_drag_shape.
3902 (x_set_mouse_color): Change mouse pointer shape.
3903 (mac_window) [!MAC_OSX]: Create root control.
3904 (Fx_create_frame): Remove initializations of mouse pointer shapes.
3905 (hourglass_started): New function (from xfns.c).
3906 (start_hourglass, cancel_hourglass): Put function body in #ifdef
3907 MAC_OSX.
3908 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
3909 indicator for each non-tooltip frame if needed, and show it.
3910 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
3911
3912 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
3913 Controls.h. Use ThemeCursor instead of CursHandle.
3914
3915 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
3916 Remove functions and declarations.
3917 (mac_set_colors): Take argument for saving background color.
3918 All callers changed.
3919 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
3920 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
3921 background color.
3922 (x_update_end, mac_do_track_drag): Don't reset background color.
3923 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
3924 Use SetThemeCursor.
3925 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
3926 indicator control to the upper-right corner of the window.
3927 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
3928 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
3929 (do_window_update): Update controls after updating content area.
3930 (mac_handle_window_event): Remove unused extern.
3931 (XTread_socket): Check both control handle and control part code
3932 to determine whether a scroll bar is clicked. Activate/deactivate
3933 root control instead of contained scroll bar controls.
3934 (make_mac_terminal_frame): Use ThemeCursor constants.
3935
3936 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
3937 New member hourglass_control.
3938 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
3939 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
3940
3941 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3942
3943 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
3944 coincides with that in Apple X11 except `clear', `enter' on
3945 laptops, and fn + `enter' on laptops.
3946
3947 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
3948
3949 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
3950 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
3951 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
3952
3953 * xfns.c (xic_defaut_fontset): New constant.
3954 (xic_create_fontsetname): New function.
3955 Extracted from create_frame_xic. Try to generate a slightly
3956 better fontset.
3957 (xic_create_xfontset): Use it.
3958 (create_frame_xic): Simplify.
3959
3960 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
3961
3962 * fileio.c (Fmake_symbolic_link): Fix last change.
3963
3964 2005-03-11 Richard M. Stallman <rms@gnu.org>
3965
3966 * fileio.c (Frename_file, Fadd_name_to_file)
3967 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
3968 expand the basename of FILE relative to it.
3969
3970 2005-03-11 Kenichi Handa <handa@m17n.org>
3971
3972 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
3973 before calling setup_coding_system so that autoloading of a coding
3974 system work.
3975
3976 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3977
3978 * xfns.c (hourglass_started): New function.
3979
3980 * dispextern.h: Declare hourglass_started.
3981
3982 * keyboard.c (Fexecute_extended_command): Restart hourglass
3983 after call to Fcompleting_read if already started.
3984
3985 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
3986 GTK main loop is entered in xterm.c, thus doing the redraw.
3987
3988 2005-03-10 Kim F. Storm <storm@cua.dk>
3989
3990 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
3991
3992 2005-03-08 Kenichi Handa <handa@m17n.org>
3993
3994 * frame.c (x_set_font): Call set_default_ascii_font if an
3995 available font is found.
3996
3997 * fontset.c (set_default_ascii_font): New function.
3998 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
3999
4000 * fontset.h (set_default_ascii_font): Extern it.
4001
4002 2005-03-07 Kim F. Storm <storm@cua.dk>
4003
4004 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
4005 (clear_image_cache_count): New var.
4006 (redisplay_internal): Don't clear face and image caches in the
4007 middle of redisplay; do it afterwards.
4008
4009 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
4010
4011 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
4012 is valid. If not, clear phys_cursor_on_p and return.
4013
4014 2005-03-07 Andreas Schwab <schwab@suse.de>
4015
4016 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
4017
4018 2005-03-06 Richard M. Stallman <rms@gnu.org>
4019
4020 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
4021
4022 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
4023 (Feval, Ffuncall): Use CHECK_CONS_LIST.
4024
4025 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
4026
4027 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
4028 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
4029
4030 2005-03-05 Juri Linkov <juri@jurta.org>
4031
4032 * emacs.c (USAGE1): Replace Info node name "command arguments"
4033 with "emacs invocation".
4034 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
4035 allow arguments `--color' and `MODE' to be separated by space.
4036 Add --no-blinking-cursor, -nbc.
4037 (standard_args): Add -nbc, --no-blinking-cursor.
4038
4039 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4040
4041 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
4042 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
4043 * fileio.c (Fexpand_file_name) [VMS]:
4044 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
4045 * doc.c (munge_doc_file_name) [VMS]: Likewise.
4046 (Fsnarf_documentation): Call munge_doc_file_name.
4047
4048 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4049
4050 * s/vms.h (FILE_SYSTEM_CASE): New macro.
4051 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
4052 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
4053
4054 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4055
4056 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
4057 defined (MAC_OSX) && defined (HAVE_CARBON)'.
4058
4059 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
4060
4061 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4062 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
4063 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
4064 (mac_clear_font_name_table): Move extern to macterm.h.
4065
4066 * macfns.c (install_window_handler): Move extern to macterm.h.
4067 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
4068 valid. Don't check !NILP (dir) because it is already checked with
4069 CHECK_STRING.
4070 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
4071 specifying the default location and obtaining the selected filename.
4072
4073 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4074
4075 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
4076 are included via Carbon.h.
4077
4078 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
4079 Define USE_CARBON_EVENTS to 1.
4080 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
4081 (x_free_frame_resources): Call remove_window_handler for
4082 non-tooltip windows.
4083 [TARGET_API_MAC_CARBON]: Don't include headers that are included
4084 via Carbon.h.
4085 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
4086 (mac_do_receive_dragUPP): New variables.
4087 (mac_handle_service_event, init_service_handler): Put declarations
4088 and definitions in #ifdef MAC_OSX.
4089 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
4090 drag-and-drop handler functions and register them.
4091 (remove_window_handler): New function.
4092 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
4093 Use fsspec_to_posix_pathname.
4094 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
4095 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
4096 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
4097 Set default cursors.
4098 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
4099 init_service_handler or init_quit_char_handler.
4100 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
4101
4102 * macterm.h (install_window_handler, remove_window_handler)
4103 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
4104 (mac_clear_font_name_table): New externs.
4105
4106 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4107
4108 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
4109 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
4110 (Fexpand_file_name): Likewise.
4111
4112 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4113
4114 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
4115 no longer special-case VMS. Add bogus return value.
4116
4117 2005-03-02 Kim F. Storm <storm@cua.dk>
4118
4119 * dispextern.h (XASSERTS): Define to 0 if not already defined.
4120 (xassert) [!XASSERTS]: Define dummy version.
4121
4122 2005-03-02 Kim F. Storm <storm@cua.dk>
4123
4124 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
4125 Reported by David Kastrup.
4126
4127 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
4128
4129 * xdisp.c (get_next_display_element): Fix control and escape
4130 glyph from display vector.
4131
4132 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
4133
4134 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
4135
4136 2005-02-27 Richard M. Stallman <rms@gnu.org>
4137
4138 * xdisp.c (fast_find_position): Rename END to BEG.
4139 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
4140
4141 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4142
4143 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
4144 gtk_window_resize and x_wm_set_size_hint.
4145
4146 2005-02-25 Kim F. Storm <storm@cua.dk>
4147
4148 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
4149
4150 * xdisp.c (init_from_display_pos): Don't read past end of
4151 it->overlay_strings array.
4152
4153 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
4154
4155 * buffer.c (syms_of_buffer): Fix typo.
4156
4157 2005-02-23 Lute Kamstra <lute@gnu.org>
4158
4159 * buffer.c (Foverlay_buffer): Doc fix.
4160
4161 2005-02-22 Kim F. Storm <storm@cua.dk>
4162
4163 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
4164 and symbol keys in alists and hash tables.
4165
4166 * xdisp.c (fast_find_position): Fix search for start of overlay.
4167
4168 2005-02-21 Kim F. Storm <storm@cua.dk>
4169
4170 * window.c (window_scroll_pixel_based): When scrolling backwards,
4171 handle partial visible line at end of window even when we hit PT.
4172
4173 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
4174
4175 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
4176
4177 2005-02-21 Kim F. Storm <storm@cua.dk>
4178
4179 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
4180 I think those asserts are bogus if buffer contains invisible text
4181 or images.
4182
4183 2005-02-21 David Kastrup <dak@gnu.org>
4184
4185 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
4186
4187 2005-02-20 Kim F. Storm <storm@cua.dk>
4188
4189 * xdisp.c (pos_visible_p): Be sure to move to the specified
4190 position. Always get the full ascent / descent of the
4191 corresponding row, to return reliable rtop and rbot values.
4192 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
4193 Must look one character back, as back_to_previous_line_start
4194 returns position after the newline.
4195 (move_it_vertically_backward): Fix heuristic for when to move further
4196 back in case line_height * 2/3 is larger than window height.
4197 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
4198 as it does not do anything anymore. Add arg current_matrix_p to
4199 use current matrix rather than desired matrix when set.
4200 (try_cursor_movement): Don't scroll to make cursor row fully
4201 visible if cursor didn't move. This avoids unexpected recentering
4202 in case of blinking cursor or accepting process output.
4203 Use current matrix to check cursor row visibility.
4204 (redisplay_window): Fix whether to recenter or move to top in case
4205 cursor line is taller than window height.
4206 (find_first_unchanged_at_end_row): Stop search if we reach a row
4207 which not enabled (instead of abort).
4208
4209 2005-02-18 Kim F. Storm <storm@cua.dk>
4210
4211 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
4212 to be nil in a :box attribute value list; customize prints that
4213 as lisp value when no box color is specified.
4214
4215 * .gdbinit (pitx, pit): Pretty print display iterator.
4216 (prowx, prow): Pretty print glyph row.
4217 (pcursorx, pcursor): Pretty print a window cursor.
4218 (pwinx, pwin): Pretty print struct window.
4219
4220 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
4221
4222 * alloc.c (BLOCK_BYTES): Harmless typo.
4223
4224 2005-02-17 Andreas Schwab <schwab@suse.de>
4225
4226 * xfns.c (hack_wm_protocols): Use correct type for last parameter
4227 of XGetWindowProperty to avoid aliasing issues.
4228 (Fx_window_property): Likewise.
4229
4230 * xselect.c (Fx_disown_selection_internal): Use union of struct
4231 input_event and struct selection_input_event to avoid aliasing issues.
4232
4233 * xterm.c (handle_one_xevent): Use union of struct input_event and
4234 struct selection_input_event to avoid aliasing issues.
4235 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
4236
4237 2005-02-17 Kim F. Storm <storm@cua.dk>
4238
4239 * dispextern.h (enum it_method): New enum.
4240 (GET_FROM_*): Its members.
4241 (struct it): Change member method from function pointer to enum.
4242
4243 * xdisp.c (check_it, init_from_display_pos, handle_stop)
4244 (setup_for_ellipsis, handle_single_display_spec)
4245 (handle_composition_prop, next_overlay_string)
4246 (get_overlay_strings, reseat_1, reseat_to_string)
4247 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
4248 (in_display_vector_p, display_line, get_next_display_element):
4249 Change it->method from function pointer to enum.
4250 (get_next_element): New array to map it->method to function.
4251 (get_next_display_element): Use it.
4252 (set_iterator_to_next): Use switch instead of if/else chain.
4253
4254 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4255
4256 * w32select.c: Summary: Thorough rework to implement Unicode
4257 clipboard operations and delayed rendering.
4258
4259 Drop last_clipboard_text and related code, keep track of
4260 ownership via clipboard_owner instead. Drop old #if0 sections.
4261
4262 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
4263 (clipboard_owner, modifying_clipboard, cfg_coding_system)
4264 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
4265 (current_coding_system, current_requires_encoding)
4266 (current_num_nls, current_clipboard_type, current_lcid):
4267 New static variables.
4268
4269 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
4270 (render, render_all, run_protected, lisp_error_handler)
4271 (owner_callback, create_owner, setup_config)
4272 (enum_locale_callback, cp_from_locale, coding_from_cp):
4273 New local functions.
4274
4275 (term_w32select, globals_of_w32select): New global functions.
4276
4277 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
4278 clipboard_owner instead. Use delayed rendering and provide
4279 all text formats. Provide CF_LOCALE if necessary.
4280
4281 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
4282 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
4283 available. Force DOS line-ends for decoding.
4284
4285 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
4286
4287 (syms_of_w32select): Init and register new variables.
4288
4289 * w32.h: Add prototypes for globals_of_w32select and
4290 term_w32select. Make the neighboring K&R declarations into
4291 prototypes, too.
4292
4293 * emacs.c: Include w32.h to get function prototypes.
4294 (main): Call globals_of_w32select.
4295
4296 * w32.c (term_ntproc): Call term_w32select.
4297
4298 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
4299
4300 2005-02-16 Kim F. Storm <storm@cua.dk>
4301
4302 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
4303 at end of display vector.
4304
4305 2005-02-15 Richard M. Stallman <rms@gnu.org>
4306
4307 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
4308 for mode and header lines.
4309
4310 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
4311
4312 * keymap.h (describe_map_tree): Change decl.
4313
4314 * keyboard.c (command_loop_1): Always use safe_run_hooks
4315 to run Qdeferred_action_function.
4316
4317 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
4318 (describe_map, describe_vector): Likewise. When it's 1,
4319 don't omit shadowed bindings, instead mark them as shadowed.
4320
4321 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
4322 for describe_map_tree. Pass 1 for MENTION_SHADOW.
4323
4324 * data.c (Fsetq_default): Allow no arg case.
4325
4326 2005-02-14 Kenichi Handa <handa@m17n.org>
4327
4328 * coding.c (encode_coding_string): Always return a unibyte string.
4329 If NOCOPY is nonzero and there's no need of encoding, make STR
4330 unibyte directly.
4331
4332 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
4333 multibyte string, signal an error instead of aborting.
4334
4335 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
4336
4337 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
4338
4339 2005-02-12 Kim F. Storm <storm@cua.dk>
4340
4341 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
4342
4343 2005-02-10 Kim F. Storm <storm@cua.dk>
4344
4345 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
4346 if it moves outside window or it doesn't display text.
4347
4348 2005-02-09 Kim F. Storm <storm@cua.dk>
4349
4350 * undo.c (Fprimitive_undo): Check that undo function does not
4351 switch buffer.
4352
4353 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4354
4355 * xselect.c (selection_data_to_lisp_data): For the special case
4356 type == XA_ATOM, data contains array of int, not array of Atom.
4357 (x_property_data_to_lisp, selection_data_to_lisp_data):
4358 Comment update: data must be array of int for format == 32.
4359
4360 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
4361
4362 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
4363
4364 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4365
4366 * xfns.c (Fx_change_window_property): Use long array when format is 32.
4367 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
4368 convert long array returned from XGetWindowProperty to an int array.
4369 (x_set_tool_bar_lines): Check that width and height is greater than
4370 zero before clearing area.
4371
4372 * xselect.c (x_reply_selection_request): Pass long array to
4373 XChangeProperty so that 64 bit longs are handeled correctly.
4374 (x_get_window_property): If format is 32 and long is bigger than 32
4375 bits convert data from XGetWindowProperty from long array to int array.
4376 (lisp_data_to_selection_data): When the input is a vector and the
4377 format is 32, allocate a long array even if long is bigger than 32 bits.
4378 (x_fill_property_data): Use char, short and long as the man page
4379 for XChangeProperty specifies. This way the data returned is OK for
4380 both 32 and 64 bit machines.
4381 (x_handle_dnd_message): Calculate size correctly even for 64 bit
4382 machines.
4383 (Fx_send_client_event): Undo change from 2005-02-05,
4384 x_fill_property_data now handles that case.
4385
4386 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
4387 reason for the approach in the code.
4388
4389 2005-02-07 Kim F. Storm <storm@cua.dk>
4390
4391 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
4392
4393 2005-02-06 Richard M. Stallman <rms@gnu.org>
4394
4395 * eval.c (Frun_hook_with_args)
4396 (Frun_hook_with_args_until_success)
4397 (Frun_hook_with_args_until_failure): Doc fixes.
4398
4399 2005-02-05 Andreas Schwab <schwab@suse.de>
4400
4401 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
4402
4403 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4404
4405 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
4406 the longs in a XClientMessageEvent correctly when long is 64 bits.
4407
4408 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4409
4410 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4411 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4412
4413 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4414
4415 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4416 events so the menu event comes after them. This is to prevent sit-for
4417 from exiting on buffered events directly after a menu selection,
4418 lisp code for Help => About Emacs uses sit-for.
4419
4420 * gtkutil.c (create_menus): Connect selection-done event instead of
4421 the deactivate event to deactivate_cb. This will make the last
4422 leave event come before the call to deactivate_cb, so the leave
4423 event does not make sit-for exit after a menu selection.
4424
4425 2005-02-03 Kim F. Storm <storm@cua.dk>
4426
4427 * dispnew.c (build_frame_matrix_from_leaf_window)
4428 [!GLYPH_DEBUG]: Fix xassert.
4429
4430 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4431
4432 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4433
4434 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4435
4436 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4437 the compiling OS version.
4438
4439 * macfns.c (x_create_tip_frame): Likewise.
4440
4441 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4442
4443 2005-02-03 Richard M. Stallman <rms@gnu.org>
4444
4445 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4446
4447 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4448
4449 * buffer.c (Fbury_buffer): Doc fix.
4450
4451 2005-02-02 Steven Tamm <steventamm@mac.com>
4452
4453 * macfns.c (unwind_create_frame): Fix compile error due to
4454 xassert being uncondition, but predicate is.
4455 * dispnew.c (update_window): Fix compile error due to
4456 xassert being uncondition, but predicate is.
4457
4458 2005-02-02 Miles Bader <miles@gnu.org>
4459
4460 * dispextern.h (xassert): Enable unconditionally.
4461
4462 2005-02-02 Kim F. Storm <storm@cua.dk>
4463
4464 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4465
4466 2005-02-02 Kenichi Handa <handa@m17n.org>
4467
4468 * casefiddle.c (casify_object): Enable changing characters of
4469 different byte length.
4470 (casify_region): Fix loop condition, args to replace_range_2, and
4471 update opoint_byte.
4472
4473 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
4474
4475 2005-02-01 Kim F. Storm <storm@cua.dk>
4476
4477 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
4478 stack before calling handle_display_prop.
4479
4480 2005-01-31 Kim F. Storm <storm@cua.dk>
4481
4482 * undo.c (Qapply): New lisp var.
4483 (syms_of_undo): Intern and staticpro it.
4484 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
4485 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
4486
4487 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4488
4489 2005-01-30 Jesper Harder <harder@phys.au.dk>
4490
4491 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
4492 <mac-emulate-three-button-mouse>: Fix docstring indentation.
4493
4494 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
4495
4496 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
4497 Increase value to 3 Meg.
4498
4499 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4500
4501 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
4502 button events are not received otherwise.
4503
4504 2005-01-29 Richard M. Stallman <rms@gnu.org>
4505
4506 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4507
4508 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
4509
4510 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
4511
4512 * keymap.c (access_keymap): YAILOM.
4513
4514 2005-01-27 Kim F. Storm <storm@cua.dk>
4515
4516 * xdisp.c (get_phys_cursor_geometry): New function to calculate
4517 phys cursor position and size for hollow cursor. Position is
4518 aligned with get_glyph_string_clip_rect and ensures that a hollow
4519 cursor is shown, even when the actual glyph is not visible.
4520
4521 * dispextern.h (get_phys_cursor_geometry): Add prototype.
4522
4523 * xterm.c (x_clip_to_row): Ensure y >= 0.
4524 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4525
4526 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4527
4528 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4529
4530 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
4531
4532 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
4533
4534 2005-01-27 Kim F. Storm <storm@cua.dk>
4535
4536 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
4537 glyph, even when row is only partially visible and actual cursor
4538 position is not visible.
4539
4540 2005-01-24 Richard M. Stallman <rms@gnu.org>
4541
4542 * xterm.c (x_error_quitter): No longer static, and moved after
4543 x_error_handler.
4544
4545 2005-01-24 Kim F. Storm <storm@cua.dk>
4546
4547 * xdisp.c (move_it_by_lines): If we move forward after going too
4548 far back, cancel move if end position is same as start position.
4549
4550 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4551
4552 * dispextern.h (struct glyph_string): New members clip_head and
4553 clip_tail.
4554
4555 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
4556 region to the area between clip_head and clip_tail.
4557 (draw_glyphs): Record the area that need to be actually redrawn to
4558 the new variables clip_head and clip_tail when there are
4559 overhangs. Set values of these variables to the corresponding
4560 members in struct glyph_string. Refine x coordinates for
4561 notice_overwritten_cursor using clip_head and clip_tail.
4562
4563 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
4564
4565 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
4566 QDTextBounds.
4567 (x_draw_glyph_string): Don't fill the background of the successor
4568 of a glyph with a right overhang if the successor will draw a cursor.
4569 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
4570 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4571
4572 2005-01-24 Kim F. Storm <storm@cua.dk>
4573
4574 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
4575 direction if window height was smaller than next-screen-context-lines.
4576 Now always scroll at least one line in the requested direction.
4577 Ensure that we actually do scroll backwards when requested to do so.
4578
4579 * xdisp.c (redisplay_window): Only try to make cursor line fully
4580 visible once (to avoid redisplay loop).
4581
4582 2005-01-23 Kim F. Storm <storm@cua.dk>
4583
4584 * window.c (Fpos_visible_in_window_p): Simplify return value for
4585 partially visible rows.
4586 (window_scroll_pixel_based): Adapt to that change.
4587
4588 * window.c (window_scroll_pixel_based): Force moving to next line
4589 if scrolling doesn't move start point, e.g. if looking at tall image.
4590
4591 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
4592 Clear last_height before calling line_bottom_y to get real height.
4593 Fix calculation of y.
4594
4595 2005-01-22 Steven Tamm <steventamm@mac.com>
4596
4597 * s/darwin.h: Removed PTY_ITERATION from here.
4598 (DARWIN): Define.
4599
4600 * process.c (init_process): Default process-connection-type to
4601 nil on darwin 6 or less, t if it is 7 or higher. This way the
4602 broken pty behavior is still allowed on darwin 6 for interactive
4603 processes for people that know what they are doing.
4604
4605 2005-01-22 Kim F. Storm <storm@cua.dk>
4606
4607 * window.c (auto_window_vscroll_p): New boolean.
4608 (syms_of_window): DEFVAR_BOOL it.
4609 (Fpos_visible_in_window_p): Extend return value to include RTOP
4610 and RBOT values if FULLY is nil.
4611 (window_scroll_pixel_based): Adjust vscroll for partially visible
4612 rows if auto_window_vscroll_p is set.
4613 (Fset_window_vscroll): Do nothing if vscroll is not modified.
4614
4615 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
4616 to return number of partially invisible pixels at top and bottom
4617 of the dislay row at POS.
4618
4619 * lisp.h (pos_visible_p): Fix prototype.
4620
4621 2005-01-21 Richard M. Stallman <rms@gnu.org>
4622
4623 * fileio.c (Fcopy_file): Doc fix.
4624
4625 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4626
4627 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
4628 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
4629 start of function for older compilers.
4630
4631 2005-01-20 Richard M. Stallman <rms@gnu.org>
4632
4633 * editfns.c (Fmessage): If arg is "", return "" (as before).
4634
4635 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
4636
4637 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
4638 variable.
4639
4640 2005-01-20 Steven Tamm <steventamm@mac.com>
4641
4642 * editfns.c (Voperating_system_release): Add.
4643 (init_editfns): Assign new variable operating-system-release
4644 based on call to uname if available.
4645 (get_operating_system_release): Add function to
4646 allow c-level access to operating system release.
4647
4648 * config.h: Regenerated.
4649
4650 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
4651 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
4652 using ptys as '7'.
4653
4654 2005-01-20 Kim F. Storm <storm@cua.dk>
4655
4656 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
4657
4658 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
4659 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
4660
4661 * macterm.c (x_draw_glyph_string_box): Likewise.
4662
4663 * w32term.c (x_draw_glyph_string_box): Likewise.
4664
4665 * indent.c (Fvertical_motion): Temporarily disable selective display.
4666
4667 2005-01-19 Kim F. Storm <storm@cua.dk>
4668
4669 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
4670 image property.
4671
4672 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
4673
4674 2005-01-18 Kim F. Storm <storm@cua.dk>
4675
4676 * xdisp.c (fast_find_position): Backtrack to find first row if
4677 charpos is inside a display overlay that spans multiple lines.
4678
4679 2005-01-18 Kenichi Handa <handa@m17n.org>
4680
4681 * coding.c (decode_coding_iso2022): Translate invalid codes if
4682 translation-table is specified.
4683
4684 2005-01-18 Kim F. Storm <storm@cua.dk>
4685
4686 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
4687 change. If handle_display_prop indicates newline is replaced by
4688 image or text, move back to start of relevant overlay or interval
4689 and continue scan from there. Simplify.
4690
4691 2005-01-17 Kim F. Storm <storm@cua.dk>
4692
4693 * dispnew.c (mode_line_string, marginal_area_string):
4694 Fix off-by-one error in search for glyph.
4695
4696 2005-01-16 Kim F. Storm <storm@cua.dk>
4697
4698 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
4699
4700 2005-01-16 Steven Tamm <steventamm@mac.com>
4701
4702 * macterm.c (mac_to_x_fontname): Remove spurious argument.
4703
4704 2005-01-16 Andreas Schwab <schwab@suse.de>
4705
4706 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
4707
4708 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4709
4710 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
4711 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
4712
4713 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4714
4715 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
4716 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
4717 New flags for readable_events.
4718 (get_filtered_input_pending, readable_filtered_events): Remove.
4719 (tracking_off): Call readable_events and get_input_pending with
4720 flag READABLE_EVENTS_DO_TIMERS_NOW.
4721 (readable_events): Move code from old readable_filtered_events here,
4722 but check new READABLE_EVENTS_* in argument flags instead of previous
4723 two boolean arguments do_timers_now and filter_events.
4724 If we are doing mouse tracking and the mouse moved, return only if
4725 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
4726 (swallow_events): Call get_input_pending with flag
4727 READABLE_EVENTS_DO_TIMERS_NOW.
4728 (get_input_pending): Move code from old get_filtered_input_pending
4729 here. Replace boolean arguments do_timers_now, filter_events with
4730 flags, and pass flags to readable_events. Document new
4731 READABLE_EVENTS_* flags.
4732 (detect_input_pending_ignore_squeezables): New function.
4733 (detect_input_pending_run_timers): Call get_input_pending with flag
4734 READABLE_EVENTS_DO_TIMERS_NOW.
4735 (Finput_pending_p): Call get_input_pending with flags
4736 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
4737
4738 * dispnew.c (update_window, update_frame_1): Replace calls to
4739 detect_input_pending with detect_input_pending_ignore_squeezables
4740 so that redisplay is not paused if the event queue contains only
4741 mouse movements.
4742
4743 * lisp.h: Declare detect_input_pending_ignore_squeezables.
4744
4745 2005-01-15 Steven Tamm <steventamm@mac.com>
4746
4747 * macterm.c (Vmac_use_core_graphics): Declare variable for
4748 mac-allow-anti-aliasing.
4749 (syms_of_macterm): DEFVAR_LISP and initialize it.
4750 (mac_draw_string_common): Use core graphics text rendering if
4751 mac-allow-anti-aliasing is enabled.
4752
4753 * macfns.c (Fx_file_dialog): Save As dialog includes only the
4754 file name in the text box.
4755
4756 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4757
4758 * macfns.c (x_set_foreground_color, x_set_background_color):
4759 Sync with xfns.c.
4760 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
4761 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
4762 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
4763
4764 2005-01-14 Kim F. Storm <storm@cua.dk>
4765
4766 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
4767
4768 2005-01-13 Richard M. Stallman <rms@gnu.org>
4769
4770 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
4771 if Voverriding_terminal_local_map is non-nil.
4772
4773 * keyboard.c (syms_of_keyboard): Doc fix.
4774
4775 2005-01-13 Kim F. Storm <storm@cua.dk>
4776
4777 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
4778 (specify 0 for FACE instead). Reorder arg list. Doc fix.
4779
4780 2005-01-12 Richard M. Stallman <rms@gnu.org>
4781
4782 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
4783 face property for characters that don't specify one.
4784
4785 * fns.c (Frequire): Record in load-history unconditionally.
4786
4787 2005-01-10 Kim F. Storm <storm@cua.dk>
4788
4789 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
4790
4791 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
4792 Callers changed.
4793 Add support to merge with lisp face id too (if face_name is t).
4794
4795 * xdisp.c (get_next_display_element, next_element_from_display_vector):
4796 Don't lookup lface_id from display table glyphs here; instead use
4797 merge_faces to merge the lisp face id into current face.
4798
4799 2005-01-09 Kim F. Storm <storm@cua.dk>
4800
4801 * dispextern.h (struct it): New member dpvec_face_id.
4802 (merge_into_realized_face): Add prototype.
4803
4804 * xfaces.c (merge_into_realized_face): New function. Used to
4805 merge escape-glyph face or face from display table into current face.
4806
4807 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
4808 (syms_of_xdisp): DEFVAR_LISP it.
4809 (escape_glyph_face): Remove var.
4810 (redisplay_window): Don't initialize it.
4811 (setup_for_ellipsis, get_next_display_element):
4812 Set it->dpvec_face_id to -1.
4813 (get_next_display_element): Test Vshow_nonbreak_escape.
4814 Do not setup escape_glyph_face.
4815 Properly merge escape-glyph face or face from display table with
4816 current face for escape and control characters.
4817 Set it->dpvec_face_id to relevant face id instead of adding it to each
4818 element of display vector.
4819 (next_element_from_display_vector): If it->dpvec_face_id is set,
4820 use that instead of lface_id from glyph itself.
4821
4822 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4823
4824 * xterm.h (struct x_output): New member, toolbar_detached.
4825
4826 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
4827 38.
4828 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
4829 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
4830 (xg_create_tool_bar): Initialize toolbar_detached.
4831 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
4832 toolbar_detached is zero.
4833
4834 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4835
4836 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
4837 gtk_menu_popup if not for_click, so callbacks for the menu are called.
4838
4839 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
4840 (xg_tool_bar_callback, xg_tool_bar_help_callback)
4841 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
4842
4843 * xselect.c (x_get_foreign_selection, x_fill_property_data)
4844 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
4845 XFLOAT_DATA to get extract number from Lisp object.
4846
4847 2005-01-07 Kim F. Storm <storm@cua.dk>
4848
4849 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
4850 Set stop_charpos to current charpos instead of 0.
4851
4852 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
4853
4854 * xdisp.c (Fformat_mode_line): First arg now required.
4855
4856 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4857
4858 * macterm.c (XLoadQueryFont): Correctly handle 0 size
4859 font widths that are returned from some Japanese fonts.
4860
4861 2005-01-06 Kim F. Storm <storm@cua.dk>
4862
4863 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
4864 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
4865 (destroy_fringe_bitmap): Set fringe_faces element to nil.
4866 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
4867 fringe_faces array and init elements to nil.
4868 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
4869 non-persistent face id.
4870 (mark_fringe_data): New function for GC.
4871
4872 * alloc.c (mark_fringe_data): Declare extern.
4873 (Fgarbage_collect): Call mark_fringe_data.
4874
4875 * alloc.c (overrun_check_free): Invalidate freed memory if
4876 XMALLOC_CLEAR_FREE_MEMORY is defined.
4877
4878 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4879
4880 * macfns.c: Include sys/param.h.
4881 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
4882 and function.
4883 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
4884 of filename string. Set event callback function when creating
4885 dialog boxes. Add code conversions for filenames. Don't dispose
4886 of apple event descriptor record if failed to create it.
4887
4888 * macterm.c: Include sys/param.h.
4889 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
4890 kEventWindowUpdate.
4891 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
4892 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
4893 of FSSpec from apple event descriptor record.
4894 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
4895 size of filename string.
4896 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
4897 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
4898 file dialog is in action.
4899 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
4900 Reject only when there are no filename items. Set background color
4901 before (un)highlighting the window below the dragged items.
4902 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
4903
4904 2005-01-05 Romain Francoise <romain@orebokech.com>
4905
4906 * term.c (encode_terminal_code): Fix buffer size computation.
4907
4908 2005-01-04 Richard M. Stallman <rms@gnu.org>
4909
4910 * xdisp.c (Fformat_mode_line): Doc fix.
4911
4912 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
4913
4914 * alloc.c (refill_memory_reserve): Move.
4915 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
4916 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
4917
4918 2005-01-03 Richard M. Stallman <rms@gnu.org>
4919
4920 * window.c (window_scroll_pixel_based): Don't correct preserve_y
4921 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
4922
4923 2005-01-03 Jason Rumney <jasonr@gnu.org>
4924
4925 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
4926 fontp->space_width to FONT_WIDTH so they are valid.
4927
4928 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
4929 average width. Set fontp->average_width and fontp->space_width to
4930 their appropriate values.
4931
4932 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4933 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4934 fontp->space_width.
4935
4936 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4937
4938 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
4939 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
4940 metrics for max and min bounds.
4941 (x_load_font): Correctly calculate average font width metrics.
4942
4943 2005-01-02 Richard M. Stallman <rms@gnu.org>
4944
4945 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
4946
4947 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4948
4949 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
4950
4951 2004-12-31 Richard M. Stallman <rms@gnu.org>
4952
4953 * xdisp.c (setup_for_ellipsis, get_next_display_element):
4954 Set it->ellipsis_p to 1 or 0.
4955 (display_line): Record whether row ends in mid-ellipsis.
4956 (set_cursor_from_row): If ends in ellipsis, find start of it.
4957 (cursor_row_p): If PT's at the end of the ellipsis the row
4958 ends within, don't display cursor on this row.
4959
4960 * dispextern.h (struct it): New element ellipsis_p.
4961 (struct glyph_row): New element ends_in_ellipsis_p.
4962
4963 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
4964 position if we're reading from something other than the buffer.
4965
4966 * window.c (window_scroll_pixel_based): Only look at
4967 Vscroll_preserve_screen_position if the old PT can't be kept.
4968 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4969
4970 2004-12-30 Kim F. Storm <storm@cua.dk>
4971
4972 * xdisp.c (get_line_height_property): New function extracted from
4973 original calc_line_height_property.
4974 (calc_line_height_property): Rework. Handle t and (nil . ratio).
4975 (x_produce_glyphs): Use them to handle line-height and
4976 line-spacing according to new height spec.
4977 (Qtotal): Remove.
4978 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
4979
4980 2004-12-30 Kenichi Handa <handa@m17n.org>
4981
4982 * fileio.c (Finsert_file_contents): Don't use
4983 current_buffer->buffer_file_coding_system even if REPLACE is
4984 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
4985
4986 * fontset.h (struct font_info): New members space_width and
4987 average_width.
4988
4989 * frame.h (struct frame): New member space_width.
4990 (FRAME_SPACE_WIDTH): New macro.
4991
4992 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
4993
4994 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
4995 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
4996 fontp->space_width.
4997 (x_load_font): Calculate fontp->space_width and fontp->average_width.
4998 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
4999
5000 * xdisp.c (x_produce_glyphs): Calculate tab width by
5001 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
5002
5003 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
5004
5005 * macterm.c (SelectionRange): Add Xcode position apple event struct.
5006 (do_ae_open_documents): Handle Xcode-style file position open events.
5007
5008 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
5009
5010 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
5011
5012 2004-12-29 Richard M. Stallman <rms@gnu.org>
5013
5014 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
5015
5016 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5017
5018 * macfns.c (install_window_handler): Modify extern to return OSErr
5019 value.
5020 (mac_window): Handle return value of install_window_handler.
5021
5022 * macterm.c (reflect_byte): Remove function.
5023 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
5024 Lookup table instead.
5025 (mac_do_font_lists): Simplify calculation of the longest
5026 nonspecial string.
5027 (init_mac_drag_n_drop): Remove function and declaration.
5028 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
5029 init_mac_drag_n_drop.
5030 (mac_do_track_drag): New function and declaration.
5031 (install_window_handler): Return OSErr value.
5032 (install_window_handler) [TARGET_API_MAC_CARBON]:
5033 Register handlers for tracking/receiving drag-and-drop items.
5034 (do_ae_open_documents): Generate unibyte strings for filenames.
5035 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
5036 Reject only non-filename items. Set event modifiers, and return value.
5037
5038 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5039
5040 * coding.c (decode_coding): Fix previous change.
5041
5042 2004-12-28 Richard M. Stallman <rms@gnu.org>
5043
5044 * xdisp.c (back_to_previous_visible_line_start):
5045 Don't call handle_display_prop.
5046
5047 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5048
5049 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
5050 (decode_coding_emacs_mule, encode_coding_emacs_mule)
5051 (decode_coding_iso2022, encode_designation_at_bol)
5052 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
5053 (decode_coding): Constify arguments and local vars.
5054
5055 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5056
5057 * xmenu.c (popup_get_selection): Only pop down dialogs
5058 on C-g and Escape.
5059 (popup_get_selection): Remove parameter down_on_keypress.
5060 (create_and_show_popup_menu, create_and_show_dialog):
5061 Remove parameter down_on_keypress to popup_get_selection.
5062
5063 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5064
5065 * dispextern.h: Change HAVE_CARBON to MAC_OS.
5066 (struct glyph_string): Likewise.
5067
5068 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
5069 mac_initialize.
5070
5071 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
5072 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
5073
5074 * fns.c (vector): Change MAC_OSX to MAC_OS.
5075
5076 * frame.c (x_set_frame_parameters, x_report_frame_params)
5077 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
5078 (x_set_border_width, Vdefault_frame_scroll_bars):
5079 Change HAVE_CARBON to MAC_OS.
5080
5081 * image.c [MAC_OS]: Include sys/stat.h.
5082 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
5083 QuickTimeComponents.h.
5084
5085 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
5086 [!MAC_OSX] (select): Use mac_wait_next_event.
5087 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
5088 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
5089 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5090 (mac_clear_font_name_table): Add extern.
5091 (Fmac_clear_font_name_table): New defun.
5092 (syms_of_mac): Defsubr it.
5093 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
5094 [MAC_OSX] (select_and_poll_event): New function.
5095 [MAC_OSX] (sys_select): Use it.
5096 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
5097 [MAC_OSX && SELECT_USE_CFSOCKET]
5098 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
5099 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
5100 RunLoop for simultaneously monitoring two kinds of inputs, window
5101 events and process outputs, without periodically polling.
5102
5103 * macfns.c (mac_initialized): Remove extern.
5104 (stricmp): Put in #if 0. All callers changed to use xstricmp in
5105 xfaces.c.
5106 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
5107 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
5108 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
5109 (mac_get_rdb_resource): New function (from w32reg.c).
5110 (x_get_string_resource): Use it.
5111 (install_window_handler): Add extern.
5112 (mac_window): New function.
5113 (Fx_create_frame): Use it instead of make_mac_frame.
5114 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
5115 (Fx_open_connection, Fx_close_connection): New defuns.
5116 (syms_of_macfns): Defsubr them.
5117 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
5118 Add kWindowNoUpdatesAttribute to the window attribute.
5119 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
5120 (x_create_tip_frame): Don't call ShowWindow.
5121 (Fx_show_tip): Call ShowWindow.
5122 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
5123 TARGET_API_MAC_CARBON'.
5124 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
5125 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
5126
5127 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
5128 (Window): Typedef to WindowPtr and move outside `#if
5129 TARGET_API_MAC_CARBON'.
5130 (XSizeHints): New struct.
5131
5132 * macterm.c (x_update_begin, x_update_end)
5133 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
5134 frame.
5135 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5136 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
5137 (construct_mouse_click): Put in #if 0.
5138 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
5139 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
5140 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5141 (activate_scroll_bars, deactivate_scroll_bars)
5142 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
5143 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
5144 if the position is neither user-specified nor program-specified.
5145 (x_free_frame_resources): Free size_hints.
5146 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
5147 (mac_clear_font_name_table): New function.
5148 (mac_do_list_fonts): Initialize font_name_table if needed.
5149 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
5150 around mac_do_list_fonts.
5151 (mac_unload_font): New function.
5152 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
5153 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
5154 and definitions with #if TARGET_API_MAC_CARBON.
5155 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
5156 (install_window_handler): Add decl.
5157 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
5158 window. Use UpdateControls. Get the rectangle that should be
5159 updated and restrict the target of expose_frame to it.
5160 (do_grow_window): Set minimum height/width according to size_hints.
5161 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
5162 (do_zoom_window): Don't use x_set_window_size.
5163 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
5164 (install_window_handler): New function.
5165 [!USE_CARBON_EVENTS] (mouse_region): New variable.
5166 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
5167 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
5168 GetEventDispatcherTarget inside BLOCK_INPUT.
5169 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
5170 Update mouse_region when mouse is moved.
5171 (make_mac_frame): Remove.
5172 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
5173 Initialize mouse pointer shapes. Change values of f->left_pos and
5174 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
5175 Don't call ShowWindow.
5176 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
5177 Vinvocation_name and Vsystem_name.
5178 (mac_make_rdb): New function (from w32term.c).
5179 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
5180 already been opened. Don't pass argument to
5181 mac_initialize_display_info. Don't set dpyinfo->height/width.
5182 Add entries to x_display_list and x_display_name_list.
5183 (x_delete_display): New function.
5184 (mac_initialize): Don't call mac_initialize_display_info.
5185 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
5186
5187 * macterm.h (check_mac): Add extern.
5188 (struct mac_output): New member size_hints.
5189 (FRAME_SIZE_HINTS): New macro.
5190 (mac_unload_font): Add extern.
5191
5192 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
5193
5194 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
5195
5196 2004-12-27 Richard M. Stallman <rms@gnu.org>
5197
5198 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
5199 (syms_of_buffer): Don't defsubr it.
5200
5201 * process.c (list_processes_1): Set undo_list instead
5202 of calling Fbuffer_disable_undo.
5203
5204 * xdisp.c (single_display_spec_string_p): Rename from
5205 single_display_prop_string_p.
5206 (single_display_spec_intangible_p): Rename from
5207 single_display_prop_intangible_p.
5208 (handle_single_display_spec): Rename from handle_single_display_prop.
5209 Rewritten to be easier to understand.
5210
5211 Change in load-history format. Functions now get (defun . NAME),
5212 and variables get just NAME.
5213
5214 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5215
5216 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5217 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
5218 (Qdefvar): Var deleted.
5219 (syms_of_eval): Don't initialze it.
5220
5221 * lread.c (syms_of_lread) <load-history>: Doc fix.
5222
5223 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5224
5225 * xmenu.c (popup_get_selection): Pop down on C-g.
5226 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
5227 pops down menu on C-g.
5228 (xdialog_show): If dialog popped down and no button in the dialog was
5229 pushed, call Fsignal to quit.
5230 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
5231 Fsignal to quit.
5232
5233 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
5234
5235 * gtkutil.c (xg_initialize): Install bindings for C-g so that
5236 dialogs and menus pop down.
5237
5238 2004-12-27 Kenichi Handa <handa@m17n.org>
5239
5240 * coding.c (code_convert_region): Fix calculation of `ratio'.
5241
5242 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5243
5244 * gtkutil.c (update_frame_tool_bar): Make the value of
5245 tool-bar-button-margin control margins of images in tool bar.
5246
5247 * alloc.c (check_depth): New variable.
5248 (overrun_check_malloc, overrun_check_realloc): Only add
5249 overhead and write check pattern if check_depth is 1 (to handle
5250 recursive calls). Increase/decrease check_depth in entry/exit.
5251 (overrun_check_free): Only check for overhead if check_depth is 1.
5252 Increase/decrease check_depth in entry/exit.
5253
5254 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5255
5256 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
5257 before touching input_available_clear_time, to avoid accessing it
5258 from multiple threads.
5259
5260 2004-12-23 Jason Rumney <jasonr@gnu.org>
5261
5262 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
5263 of JPEG library.
5264
5265 2004-12-22 Richard M. Stallman <rms@gnu.org>
5266
5267 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
5268
5269 * lisp.h (Vundo_outer_limit): Fix decl.
5270
5271 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
5272 Uses changed.
5273 (syms_of_undo): Initialize appropriately.
5274 (truncate_undo_list): If it's nil, there's no limit.
5275
5276 2004-12-22 Kenichi Handa <handa@m17n.org>
5277
5278 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
5279
5280 2004-12-21 Richard M. Stallman <rms@gnu.org>
5281
5282 * eval.c (unwind_to_catch): Clear immediate_quit.
5283
5284 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
5285 specially as `\ ' and `\-'.
5286
5287 * keyboard.c (kbd_buffer_store_event_hold):
5288 In the code for while-no-input, handle immediate_quit.
5289
5290 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
5291 Call that at the very start.
5292 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
5293 (syms_of_alloc): Don't define undo-limit,
5294 undo-strong-limit and undo-outer-limit here.
5295
5296 * undo.c (truncate_undo_list): Return void.
5297 Take just one argument, the buffer.
5298 Make it current, and inhibit recursive GC.
5299 Access and update the undo list directly; return void.
5300 Refer to the undo...limit variables directly.
5301 Test undo_outer_limit only after counting the whole current command.
5302 When it's exceeded, call the function in undo-outer-limit-function.
5303 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
5304 (Vundo_outer_limit_function): New variable.
5305 (syms_of_undo): Define undo-limit, undo-strong-limit
5306 and undo-outer-limit here, and undo-outer-limit-function.
5307 Doc fixes.
5308
5309 * lisp.h (truncate_undo_list): Update decl.
5310
5311 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
5312
5313 * fileio.c (Fread_file_name): Delete duplicates in
5314 file-name-history when history_delete_duplicates is true.
5315
5316 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5317
5318 * macterm.c (mac_do_list_fonts): Fix memory leak
5319
5320 2004-12-20 Richard M. Stallman <rms@gnu.org>
5321
5322 * regex.c (re_match_2_internal) <symend, wordend>:
5323 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
5324
5325 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5326
5327 * macterm.c (endif, x_font_name_to_mac_font_name):
5328 Use maccentraleurroman instead of maccentraleuropean
5329 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
5330 quickly finding a specific font without needing regexps.
5331
5332 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5333
5334 * syssignal.h: Declare main_thread.
5335 (SIGNAL_THREAD_CHECK): New macro.
5336
5337 * keyboard.c (input_available_signal): Move thread checking code
5338 to macro SIGNAL_THREAD_CHECK and call that macro.
5339 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
5340
5341 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
5342
5343 * emacs.c: Define main_thread.
5344 (main): Initialize main_thread.
5345 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
5346 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
5347
5348 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
5349
5350 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
5351
5352 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
5353
5354 * process.c (send_process_trap, sigchld_handler):
5355 Call SIGNAL_THREAD_CHECK.
5356
5357 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
5358
5359 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
5360
5361 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
5362 returning when xg_ignore_gtk_scrollbar is true.
5363
5364 2004-12-14 Kim F. Storm <storm@cua.dk>
5365
5366 * keyboard.c (read_char): Save and restore echo_string when
5367 handling input method.
5368
5369 2004-12-13 Richard M. Stallman <rms@gnu.org>
5370
5371 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
5372
5373 * keyboard.c (Vthrow_on_input): New variable.
5374 (syms_of_keyboard): Defvar and initialize it.
5375 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
5376
5377 * lisp.h (QUIT): Check for Vthrow_on_input.
5378 (Vthrow_on_input): Declare it.
5379
5380 2004-12-13 Kim F. Storm <storm@cua.dk>
5381
5382 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
5383 vector.
5384
5385 2004-12-12 Richard M. Stallman <rms@gnu.org>
5386
5387 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
5388
5389 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
5390 (Ftry_completion): Really use outer `zero'; eliminate inner one.
5391
5392 2004-12-12 Kenichi Handa <handa@m17n.org>
5393
5394 * term.c (encode_terminal_code): Fix previous change.
5395
5396 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
5397
5398 * keyboard.c (handle_async_input): Remove pthread mutex handling.
5399 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
5400
5401 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
5402 in macro arguments.
5403
5404 * minibuf.c (Ftry_completion, Fall_completions): Don't use
5405 XFASTINT blindly.
5406
5407 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5408
5409 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5410
5411 * w32term.c (x_calc_absolute_position): Remove calculation of
5412 difference between inner and outer window. Don't subtract difference
5413 for left and top calculations.
5414
5415 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5416 for left and top calculations. Remove call to x_real_positions.
5417 [Bug report by Drew Adams in November]
5418 (x_check_expected_move): Do not set change_gravity to 1 when calling
5419 x_set_offset.
5420
5421 2004-12-08 Richard M. Stallman <rms@gnu.org>
5422
5423 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5424 control chars and escaped octal codes.
5425 (Qescape_glyph): New variable.
5426 (syms_of_xdisp): Initialize it.
5427 (escape_glyph_face): New variable.
5428 (redisplay_window): Initialize it.
5429
5430 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5431
5432 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5433 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5434
5435 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5436
5437 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5438 reset_malloc_hooks.
5439
5440 * keyboard.c (handle_async_input, input_available_signal):
5441 Add ! defined (SYSTEM_MALLOC) around thread code.
5442
5443 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5444
5445 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5446
5447 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5448
5449 * config.in: Regenerate.
5450
5451 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5452
5453 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5454 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5455 if not given by a mouse click to correspond with x-popup-menu
5456 documentation.
5457
5458 * config.in: Regenerate.
5459
5460 * gtkutil.c: Include signal.h and syssignal.h.
5461 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5462
5463 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5464 new variables main_thread and alloc_mutex,
5465 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5466 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
5467 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
5468 (UN)BLOCK_INPUT.
5469 (emacs_blocked_free, emacs_blocked_malloc)
5470 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
5471 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
5472 (reset_malloc_hooks): New function.
5473
5474 * lisp.h: Declare reset_malloc_hooks.
5475
5476 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
5477
5478 * keyboard.c: Conditionally include pthread.h
5479 (handle_async_input, input_available_signalt): If not in the main
5480 thread, block signal, send signal to main thread and return.
5481
5482 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
5483 Set current folder in file chooser if default_filename is a directory.
5484
5485 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
5486
5487 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
5488 Remove redundant correctness checks.
5489 (regex_compile): Fix up error codes for \{..\} expressions.
5490
5491 2004-12-05 Richard M. Stallman <rms@gnu.org>
5492
5493 * regex.c (regex_compile): Fix end-of-pattern case for space.
5494
5495 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5496
5497 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
5498 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
5499 crashes with invalid characters.
5500 * macmenu.c (add_menu_item): Use it.
5501 * image.c (image_load_quartz2d): Likewise.
5502 * macfns.c (x_set_name, x_set_title): Likewise.
5503 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
5504 creating them each time for labels.
5505
5506 2004-12-02 Richard M. Stallman <rms@gnu.org>
5507
5508 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
5509 don't use it here.
5510
5511 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
5512 (interactive_p): Skip Scalled_interactively_p frames
5513 like Sinteractive_p frames.
5514 (unwind_to_catch): Clear handling_signal.
5515
5516 * data.c (Fmake_variable_buffer_local): Doc fix.
5517 (Fmake_local_variable): Doc fix.
5518
5519 * insdel.c (insert_from_string_before_markers)
5520 (insert_from_string): Don't modify buffer on empty insertion.
5521
5522 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
5523
5524 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5525
5526 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
5527 menu text as UTF8 fails.
5528
5529 2004-12-01 Kim F. Storm <storm@cua.dk>
5530
5531 * alloc.c: Add commentary for last change.
5532 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
5533 sizeof(size_t) != 4.
5534 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
5535 Use them. Also clear header and trailer of freed memory.
5536 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
5537 (string_overrun_cookie): Rename from string_overrun_pattern.
5538 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
5539
5540 2004-12-01 Andreas Schwab <schwab@suse.de>
5541
5542 * lisp.h: Declare string_to_multibyte.
5543
5544 2004-12-01 Kenichi Handa <handa@m17n.org>
5545
5546 * w32console.c (w32con_write_glyphs): Decide coding here.
5547 Adjusted for the change of encode_terminal_code.
5548
5549 * term.c (encode_terminal_code): Don't make it "static".
5550
5551 2004-11-30 Kenichi Handa <handa@m17n.org>
5552
5553 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
5554 (encode_terminal_code): Argument changed. Encode all
5555 characters at once, and return a pointer to the result of encoding.
5556 (write_glyphs): Decide coding here. Adjusted for the above change.
5557 (insert_glyphs): Likewise.
5558 (term_init): Initialize encode_terminal_bufsize to 0.
5559
5560 * coding.c (Vcode_conversion_workbuf_name): New variable.
5561 (syms_of_coding): Initialize and staticpro it.
5562 (set_conversion_work_buffer): New function.
5563 (run_pre_post_conversion_on_str): Use it.
5564 (run_pre_write_conversin_on_c_str): New function.
5565
5566 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
5567
5568 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5569
5570 * keyboard.c: Don't undef SIGIO
5571 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
5572 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
5573 (macfns.o): Don't depend on ccl.h.
5574 * macfns.c (mac_frame_parm_handlers): Set handlers for
5575 Qleft_fringe and Qright_fringe.
5576 * macterm.c (mac_fill_rectangle_to_pixmap)
5577 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
5578 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
5579 Put in #if 0.
5580 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
5581 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
5582 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
5583 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5584 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
5585 XDrawImageString. Always draw background and foreground separately.
5586 (x_draw_image_foreground): Use clipping instead of computing the
5587 intersection rectangle.
5588 (x_draw_image_glyph_string): Don't draw an image with mask to a
5589 pixmap.
5590 (x_redisplay_interface): Set flush_display_optional member to 0.
5591 (XTread_socket): Correctly reset the TEConverter
5592 object.
5593
5594 2004-11-30 Kim F. Storm <storm@cua.dk>
5595
5596 * lisp.h: New defines to enable buffer overrun checking.
5597 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
5598 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
5599
5600 * alloc.c: Add more checks for buffer overruns.
5601 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
5602 xmalloc_overrun_check_trailer, overrun_check_malloc)
5603 overrun_check_realloc, overrun_check_free): Add.
5604 (GC_STRING_EXTRA, string_overrun_pattern): Add.
5605 (check_sblock, allocate_string_data, compact_small_strings):
5606 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
5607 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
5608 (check_string_free_list): Add.
5609 (allocate_string, sweep_strings): Call check_string_free_list.
5610
5611 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
5612 XMALLOC_OVERRUN_CHECK to avoid crash during load.
5613
5614 2004-11-29 Kim F. Storm <storm@cua.dk>
5615
5616 * fns.c (concat): Use SAFE_ALLOCA.
5617
5618 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
5619
5620 * sysdep.c (emacs_write): Don't use QUIT.
5621
5622 2004-11-29 Kenichi Handa <handa@m17n.org>
5623
5624 * buffer.c (init_buffer): Set current_buffer->directory to a
5625 multibyte string made by string_to_multibyte.
5626
5627 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
5628
5629 2004-11-27 Andreas Schwab <schwab@suse.de>
5630
5631 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
5632
5633 * s/gnu-linux.h: Enable no-op gcpros on ia64.
5634 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
5635
5636 * filelock.c (lock_file_1): Call get_boot_time early.
5637 Increase buffer size.
5638
5639 2004-11-27 Eli Zaretskii <eliz@gnu.org>
5640
5641 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
5642 is not defined.
5643
5644 2004-11-27 Kim F. Storm <storm@cua.dk>
5645
5646 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
5647 marker out of doc string.
5648
5649 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
5650
5651 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
5652 which was not mentioned in the log.
5653
5654 2004-11-26 Kim F. Storm <storm@cua.dk>
5655
5656 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
5657 angle bitmaps at top/bottom line.
5658
5659 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
5660 set it when it->method is set to next_element_from_display_vector.
5661 (setup_for_ellipsis): Add LEN argument. Callers changed.
5662 Set it->saved_face_id.
5663 (get_next_display_element): Use loop instead of recursion.
5664 Set it->saved_face_id. Combine duplicate code for ctr chars.
5665 (next_element_from_display_vector): Do not set it->saved_face_id.
5666 (next_element_from_ellipsis): Use setup_for_ellipsis.
5667
5668 2004-11-26 Eli Zaretskii <eliz@gnu.org>
5669
5670 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
5671 prevent compiler warnings.
5672
5673 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
5674
5675 * keyboard.c (command_loop_1): Print a message describing the key
5676 the user just pressed when this key has no binding.
5677
5678 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
5679 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
5680
5681 * lread.c (readchar): Check QUIT when `getc' is interrupted.
5682
5683 2004-11-24 Richard M. Stallman <rms@gnu.org>
5684
5685 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
5686
5687 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
5688
5689 2004-11-24 Kim F. Storm <storm@cua.dk>
5690
5691 * xdisp.c (move_it_in_display_line_to, display_line):
5692 Restore saved_face_id also when truncate-lines or hscrolled.
5693
5694 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5695
5696 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
5697 x-use-old-gtk-file-dialog.
5698
5699 * xfns.c: Define x_use_old_gtk_file_dialog.
5700 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
5701 outside ifdef USE_GTK.
5702
5703 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
5704
5705 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
5706 Don't use XFASTINT blindly.
5707
5708 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
5709
5710 * indent.c (skip_invisible): Avoid non-idempotent side-effects
5711 in macro arguments.
5712
5713 * keymap.c (Flookup_key): Check INTEGERP before XINT.
5714
5715 * lread.c (oblookup): Don't use XFASTINT blindly.
5716
5717 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
5718 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
5719
5720 2004-11-23 Kim F. Storm <storm@cua.dk>
5721
5722 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
5723 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
5724
5725 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
5726 signal_p is zero and face name is unknown.
5727 (Fx_list_fonts): Don't signal error in lookup_named_face.
5728 (Fface_font): Signal error in lookup_named_face.
5729 (ascii_face_of_lisp_face): Likewise.
5730
5731 * dispextern.h (lookup_named_face): Fix prototype.
5732
5733 * xdisp.c (handle_single_display_prop): Don't signal error in
5734 lookup_named_face for unknown fringe face name.
5735 (highlight_trailing_whitespace): Don't signal error in
5736 lookup_named_face if trailing-whitespace face unknown.
5737 (calc_line_height_property): Don't signal error in
5738 lookup_named_face if specified face name is unknown.
5739
5740 * fringe.c (update_window_fringes): Show top row indicator if
5741 window has header-line. Don't show arrow at bob and eob
5742 if the boundary indicators are not used.
5743 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
5744
5745 * window.c (set_window_buffer): Clear display_error_modiff.
5746
5747 2004-11-22 Kim F. Storm <storm@cua.dk>
5748
5749 * fringe.c (update_window_fringes): Provide sensible fall-back
5750 value for non-nil indicate-buffer-boundaries setting.
5751
5752 2004-11-22 Markus Rost <rost@ias.edu>
5753
5754 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
5755
5756 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
5757
5758 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
5759
5760 2004-11-21 Kim F. Storm <storm@cua.dk>
5761
5762 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
5763
5764 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
5765 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5766
5767 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
5768 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5769
5770 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
5771 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5772
5773 * xdisp.c (move_it_in_display_line_to, display_line):
5774 Restore saved_face_id if overflow-newline-into-fringe is enabled and
5775 line is continued before or in middle of element from display vector.
5776
5777 * indent.c (Fvertical_motion): Fix last change. Use another
5778 method to detect if iterator moved too far ahead after reseat.
5779
5780 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
5781 expand matrix width for overflow in zero-width area.
5782 (append_glyph, append_composite_glyph, produce_image_glyph)
5783 (append_stretch_glyph): Use it to avoid loop in redisplay.
5784 (note_mode_line_or_margin_highlight): Don't let help-echo from
5785 string override help-echo from image map.
5786
5787 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
5788
5789 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
5790 * callint.c (Fcall_interactively): Ditto.
5791
5792 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
5793
5794 * minibuf.c (Fminibuffer_complete_and_exit):
5795 Fixup the case of the completed value, for case-indep completion.
5796
5797 2004-11-20 Richard M. Stallman <rms@gnu.org>
5798
5799 * lisp.h (Fread_from_minibuffer): Add arg in decl.
5800
5801 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
5802 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
5803
5804 * search.c (Vsearch_spaces_regexp):
5805 Rename from Vsearch_whitespace_regexp. All uses changed.
5806
5807 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
5808
5809 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
5810
5811 2004-11-19 Richard M. Stallman <rms@gnu.org>
5812
5813 * search.c (Vsearch_whitespace_regexp): New variable.
5814 (syms_of_search): Defvar it.
5815 (compile_pattern_1): Call re_set_whitespace_regexp with it.
5816 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
5817 is non-nil.
5818 (struct regexp_cache): New element whitespace_regexp.
5819 (syms_of_search): Initialize whitespace_regexp elements.
5820 (compile_pattern): Compare whitespace_regexp elements.
5821 (compile_pattern_1): Set whitespace_regexp elements.
5822
5823 * regex.c (regex_compile): Substitute whitespace_regexp
5824 for spaces, if it is nonzero.
5825 (whitespace_regexp): New variable.
5826 (re_set_whitespace_regexp): New function.
5827
5828 2004-11-19 Kim F. Storm <storm@cua.dk>
5829
5830 * indent.c (Fvertical_motion): Fix last change.
5831
5832 2004-11-18 Kim F. Storm <storm@cua.dk>
5833
5834 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
5835 Instead, move back again if reseating moves too far ahead.
5836
5837 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
5838
5839 * xdisp.c (message3): Call clear_message.
5840
5841 2004-11-17 Kim F. Storm <storm@cua.dk>
5842
5843 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
5844
5845 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5846
5847 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
5848
5849 * xmenu.c (x_menu_in_use): Remove.
5850 (x_menu_set_in_use): Also set popup_activated_flag.
5851
5852 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5853 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
5854
5855 * xterm.h (x_menu_in_use): Remove.
5856
5857 2004-11-16 Richard M. Stallman <rms@gnu.org>
5858
5859 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
5860 Use map-keymap-internal to implement that.
5861
5862 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
5863
5864 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
5865
5866 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
5867 a window before using XWINDOW.
5868
5869 * window.c (make_window, Fselect_window, make_dummy_parent)
5870 (save_window_save):
5871 * frame.c (make_frame):
5872 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
5873
5874 * lisp.h (NILP): Use EQ rather than XFASTINT.
5875
5876 2004-11-16 Kim F. Storm <storm@cua.dk>
5877
5878 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
5879
5880 * indent.c (Fvertical_motion): Fix last change. Only reseat when
5881 moving backwards.
5882
5883 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
5884
5885 * dispextern.h: Extern reseat_at_previous_visible_line_start.
5886
5887 2004-11-16 Kenichi Handa <handa@m17n.org>
5888
5889 * xdisp.c (display_mode_element): Fix previous change (calculate
5890 end position of substring to display correctly).
5891
5892 2004-11-16 Kim F. Storm <storm@cua.dk>
5893
5894 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
5895 Reported by Andrew M. Scott.
5896
5897 2004-11-15 Kim F. Storm <storm@cua.dk>
5898
5899 * fns.c (Fsafe_plist_get): New defun.
5900 (syms_of_fns): Defsubr it.
5901
5902 * lisp.h (Fsafe_plist_get): Add EXFUN.
5903
5904 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
5905 Use Fsafe_plist_get.
5906 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5907 Fix image map element parsing. Use Fsafe_plist_get.
5908
5909 2004-11-15 Richard M. Stallman <rms@gnu.org>
5910
5911 * xdisp.c (get_next_display_element): Fix previous change.
5912
5913 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5914
5915 * window.c (shrink_windows): Handle special case of one window left
5916 when trying to shrink the final reminder. Grow windows if
5917 total_removed is less than total_shrink.
5918
5919 * xmenu.c (pop_down_menu): Remove global variable current_menu,
5920 extract pointer from arg with XSAVE_VALUE.
5921 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
5922 Construct arg to record_unwind_protect with make_save_value.
5923
5924 2004-11-13 Richard M. Stallman <rms@gnu.org>
5925
5926 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
5927 (get_next_display_element): Fix previous change to apply only to \n.
5928
5929 * indent.c (Fvertical_motion): Scan to PT from start of line to
5930 make iterator consistent.
5931
5932 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
5933
5934 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5935
5936 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
5937
5938 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
5939 Record unwind with clean_up_file_dialog.
5940
5941 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
5942 Declare.
5943
5944 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
5945
5946 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5947
5948 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
5949 (xg_file_sel_destroy): Remove.
5950 (xg_file_response_cb, pop_down_file_dialog)
5951 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
5952 New functions.
5953 (xg_get_file_with_chooser, xg_get_file_with_selection):
5954 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
5955 Move common code to xg_get_file_name. Return widget created.
5956 (xg_get_file_name): Set name, transient for, modal and destroy
5957 with parent here. Connect response signal to xg_file_response_cb,
5958 connect delete-event to gtk_true. Record pop_down_file_dialog
5959 for unwind. Do event loop and call x_menu_wait_for_event in loop.
5960 (xg_create_widget): Make dialogs modal.
5961
5962 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
5963 Lisp_Object.
5964 (popup_get_selection): Move unwind protect ...
5965 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5966 Move destroy of widget to pop_down_menu.
5967 (popup_widget_loop): Move unwind protect ...
5968 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
5969 Move destroy of widget to pop_down_menu.
5970 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
5971 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
5972 x_mouse_leave and grabbed = 0 to pop_down_menu.
5973
5974 2004-11-13 Kim F. Storm <storm@cua.dk>
5975
5976 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
5977 (syms_of_xdisp): DEFVAR_BOOL it.
5978 (make_cursor_line_fully_visible, try_cursor_movement)
5979 (try_window_id): Use it.
5980
5981 2004-11-12 Kim F. Storm <storm@cua.dk>
5982
5983 * dispextern.h (struct glyph_row): New member extra_line_spacing.
5984 (struct it): New member max_extra_line_spacing.
5985 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
5986 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
5987 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
5988 part of last line is only extra line spacing (so the text on the
5989 line is fully visible). Use helper macros.
5990 Add W arg (to use them). All callers changed.
5991 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
5992 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
5993
5994 * window.c (window_scroll_pixel_based, Frecenter):
5995 Use move_it_vertically_backward directly.
5996 (Frecenter): Fix calculation of new start pos for negative arg.
5997 Before, the new start pos was sometimes chosen too far back, so
5998 the last line became only partially visible, and thus would be
5999 either only semi-visible or automatically scrolled to the middle
6000 of the window by redisplay.
6001
6002 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
6003 (move_it_vertically_backward): Don't recure to move further back.
6004 (move_it_vertically): Remove superfluous condition.
6005 (move_it_by_lines): Clear last_height when moved 0 lines.
6006 (resize_mini_window): Use it.max_extra_line_spacing.
6007 (display_tool_bar_line): Clear row->extra_line_spacing.
6008 (try_scrolling): Use move_it_vertically_backward directly.
6009 (redisplay_window): Likewise.
6010 (compute_line_metrics): Set row->extra_line_spacing.
6011 (display_line, display_string): Likewise.
6012 (x_produce_glyphs): Update it->max_extra_line_spacing.
6013
6014 * xmenu.c (pop_down_menu): Return nil.
6015
6016 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6017
6018 * xmenu.c (x_menu_wait_for_event): New function.
6019 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
6020 to handle timers.
6021 (popup_widget_loop): Add argument do_timers.
6022 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
6023 do_timers to popup_widget_loop.
6024 (xmenu_show): Call XMenuActivateSetWaitFunction so that
6025 x_menu_wait_for_event is called by XMenuActivate.
6026 (create_and_show_popup_menu): Pass 1 for do_timers to
6027 popup_get_selection.
6028 (pop_down_menu): New function.
6029 (popup_get_selection, popup_widget_loop): Unwind protect to
6030 pop_down_menu.
6031 (popup_widget_loop): Add argument widget.
6032 (create_and_show_popup_menu, create_and_show_dialog): Pass new
6033 argument widget to popup_widget_loop.
6034
6035 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
6036
6037 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
6038
6039 2004-11-09 Kim F. Storm <storm@cua.dk>
6040
6041 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
6042 Fix various comments referring to XEvents instead of input events.
6043 (x_queue_event): Fix format strings.
6044 (x_stop_queuing_selection_requests): Likewise.
6045
6046 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
6047 (pint2hrstr): Add extra braces to silence compiler.
6048
6049 * print.c (print_object): Fix format string.
6050
6051 * lread.c (read1): Fix next_char matching.
6052
6053 * lisp.h (Fdelete): Add EXFUN.
6054 (replace_range_2): Add prototype.
6055
6056 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
6057
6058 * intervals.h (NULL_INTERVAL_P): Add separate version when
6059 ENABLE_CHECKING is not defined to silence compiler.
6060 (compare_string_intervals): Add prototype.
6061
6062 * fringe.c (destroy_fringe_bitmap): Fix return type.
6063 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
6064
6065 * emacs.c (Fdump_emacs): Fix format string.
6066
6067 * doc.c: Include <ctype.h>.
6068 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
6069
6070 * data.c (store_symval_forwarding): Remove unused variables.
6071
6072 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
6073
6074 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6075
6076 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
6077 to ${OLDXMENU}.
6078
6079 2004-11-09 Kim F. Storm <storm@cua.dk>
6080
6081 * process.c (Fmake_network_process): Remove kludge for interrupted
6082 connects on BSD. If connect is interrupted, just close socket and
6083 start over rather than sleeping and retry with same socket.
6084
6085 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6086
6087 * .cvsignore: Add buildobj.lst.
6088
6089 * doc.c: New variable Vbuild_files.
6090 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
6091 file names from buildobj.lst. Only attach docstrings from files
6092 that are in Vbuild_files.
6093 (syms_of_doc): Defvar Vbuild_files.
6094
6095 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
6096 and w32*.o.
6097 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6098 (mostlyclean): Rm buildobj.lst
6099
6100 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
6101 is linked.
6102
6103 2004-11-09 Kim F. Storm <storm@cua.dk>
6104
6105 * fringe.c (update_window_fringes): Update fringe bitmaps if
6106 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
6107 also update previous row to get rid of misc. artifacts.
6108
6109 2004-11-08 Kim F. Storm <storm@cua.dk>
6110
6111 * xdisp.c (fast_find_position): Fix start pos if header line present.
6112 (note_mouse_highlight): Clear mouse face if we move out of text area.
6113
6114 2004-11-08 Eli Zaretskii <eliz@gnu.org>
6115
6116 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
6117 Don't include <sys/time.h> explicitly.
6118 Include <stdio.h> unconditionally, not just on MacOS.
6119
6120 2004-11-08 Kenichi Handa <handa@m17n.org>
6121
6122 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
6123 don't pay attention to '\' before '*'.
6124 (fontset_pattern_regexp): Change the meaning of the second arg.
6125 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
6126 (check_fontset_name): Try NAME as literal at first, and if it
6127 failes, try NAME as pattern.
6128
6129 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6130
6131 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
6132
6133 2004-11-07 Andreas Schwab <schwab@suse.de>
6134
6135 * lisp.h (Fmsdos_downcase_filename): Declare.
6136 * dired.c (Fmsdos_downcase_filename): Don't declare here.
6137 * fileio.c: Likewise.
6138
6139 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6140
6141 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
6142 comparisons with integers instead of Lisp_Object address.
6143 (Fmsdos_set_keyboard): Declare argument allkeys.
6144
6145 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
6146
6147 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
6148 int/Lisp_Object mixup.
6149
6150 * fileio.c: Ditto.
6151
6152 2004-11-06 Steven Tamm <steventamm@mac.com>
6153
6154 * editfns.c: Need to include sys/time.h before resource.h on darwin.
6155
6156 2004-11-06 Richard M. Stallman <rms@gnu.org>
6157
6158 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
6159
6160 * xfaces.c (merge_named_face): GCPRO the face_name in the
6161 named_merge_point struct that we make.
6162 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
6163
6164 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
6165 before deciding whether to inactivate mark.
6166
6167 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
6168
6169 * config.in: Regenerate (add HAVE_GETRUSAGE).
6170 * editfns.c (Fget_internal_run_time): New function.
6171 (syms_of_data): Defsubr it.
6172 * fns.c (sxhash): As far as possible, merge calculation of
6173 hash code for symbols and strings.
6174
6175 2004-11-06 Eli Zaretskii <eliz@gnu.org>
6176
6177 * frame.c (syms_of_frame): Fix the example in the doc string.
6178
6179 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6180
6181 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
6182
6183 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
6184 (create_and_show_dialog): Revert change from 2004-10-31.
6185
6186 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
6187
6188 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
6189
6190 2004-11-05 Kim F. Storm <storm@cua.dk>
6191
6192 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
6193
6194 * fileio.c (Ffile_modes): Doc fix.
6195 (auto_save_1): Check for Ffile_modes nil value.
6196
6197 2004-11-05 Kim F. Storm <storm@cua.dk>
6198
6199 * xselect.c (struct selection_event_queue, selection_queue)
6200 (x_queue_selection_requests, x_queue_event)
6201 (x_start_queuing_selection_requests)
6202 (x_stop_queuing_selection_requests): Add new queue for selection
6203 input events to replace previous XEvent queue in xterm.c.
6204 (queue_selection_requests_unwind): Adapt to new queue.
6205 (x_reply_selection_request): Adapt to new queue.
6206 Unexpect wait_object in case of x errors (memory leak).
6207 (x_handle_selection_request, x_handle_selection_clear): Make static.
6208 (x_handle_selection_event): New function. May queue selection events.
6209 (wait_for_property_change_unwind): Use save_value instead of cons.
6210 Clear property_change_reply_object.
6211 (wait_for_property_change): Abort if already waiting.
6212 Use save_value instead of cons for unwind data.
6213 (x_handle_property_notify): Skip events already arrived, but don't
6214 free them, as "arrived" field is checked by wait_for_property_change,
6215 and it will be freed by unwind or explicit unexpect_property_change.
6216 (x_get_foreign_selection): Add to new queue.
6217 (receive_incremental_selection): Don't unexpect wait_object when done
6218 as it has already been freed by previous wait_for_property_change.
6219
6220 * xterm.h (x_start_queuing_selection_requests)
6221 (x_stop_queuing_selection_requests, x_handle_selection_request)
6222 (x_handle_selection_clear): Remove prototypes.
6223 (x_handle_selection_event): Add prototype.
6224
6225 * xterm.c (handle_one_xevent): Don't queue X selection events
6226 here, it may be too late if we start queuing after we have already
6227 stored some selection events into the kbd buffer.
6228 (struct selection_event_queue, queue, x_queue_selection_requests)
6229 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
6230 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
6231 (x_catch_errors_unwind): Block input around final XSync.
6232
6233 * keyboard.h (kbd_buffer_unget_event): Add prototype.
6234
6235 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
6236 (kbd_buffer_unget_event): New function.
6237 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
6238 and use x_handle_selection_event.
6239 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
6240
6241 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6242
6243 * xselect.c (TRACE3): New debug macro.
6244 (x_reply_selection_request): Use it.
6245 (receive_incremental_selection): In call to TRACE0, the name of
6246 a symbol is in xname.
6247
6248 2004-11-05 Kim F. Storm <storm@cua.dk>
6249
6250 * fontset.c (fontset_pattern_regexp): Use unsigned char.
6251
6252 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6253
6254 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
6255
6256 * gtkutil.h (use_old_gtk_file_dialog): Declare.
6257
6258 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
6259 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
6260 * xfns.c (syms_of_xfns): ... to here.
6261
6262 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
6263 it doesn't start with /.
6264
6265 2004-11-04 Kenichi Handa <handa@m17n.org>
6266
6267 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
6268 treat it as a literal character.
6269
6270 2004-11-03 Kim F. Storm <storm@cua.dk>
6271
6272 * .gdbinit (ppt): New function.
6273
6274 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6275
6276 * xterm.c (x_window_to_scroll_bar): Only call
6277 xg_get_scroll_id_for_window if toolkit scroll bars are used.
6278
6279 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
6280 of save.
6281
6282 2004-11-02 Andreas Schwab <schwab@suse.de>
6283
6284 * window.c (Fscroll_right): Fix last change.
6285
6286 2004-11-02 Kim F. Storm <storm@cua.dk>
6287
6288 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
6289
6290 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6291
6292 * callproc.c (Fcall_process): Block input around vfork.
6293
6294 2004-11-02 Kim F. Storm <storm@cua.dk>
6295
6296 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
6297 (syms_of_eval): Defsubr it.
6298
6299 2004-11-02 Richard M. Stallman <rms@gnu.org>
6300
6301 * insdel.c (replace_range_2): New function.
6302
6303 * casefiddle.c (casify_region): Handle changes in byte-length
6304 using replace_range_2.
6305
6306 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
6307
6308 * xdisp.c (back_to_previous_visible_line_start):
6309 Subtract 1 from pos when checking previous newline for invisibility.
6310
6311 * window.c (window_scroll_pixel_based): Update preserve_y
6312 for header line if any.
6313 (Fscroll_left, Fscroll_right): Don't call interactive_p;
6314 use a new second argument instead.
6315
6316 * eval.c (Fcall_interactive_p): New function.
6317 (interactive_p): Don't test INTERACTIVE here.
6318 (Finteractive_p): Doc fix.
6319
6320 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
6321
6322 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6323
6324 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
6325 comparing font names.
6326
6327 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6328
6329 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
6330 Fx_file_dialog if only directories should be read.
6331
6332 * lisp.h: Fx_file_dialog takes 5 parameters.
6333
6334 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
6335 Add parameter only_dir_p.
6336 In Motif version, don't put DEFAULT_FILENAME in filter part of the
6337 dialog, just text field part. Do not add DEFAULT_FILENAME
6338 to list of files if it isn't there.
6339 In GTK version, pass only_dir_p parameter to xg_get_file_name.
6340
6341 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
6342 Check only_dir_p instead of comparing prompt to "Dired". When using
6343 a save dialog, add option kNavDontConfirmReplacement, change title
6344 to "Enter name", change text for save button to "Ok".
6345
6346 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
6347 Check only_dir_p instead of comparing prompt to "Dired".
6348
6349 * gtkutil.c (xg_get_file_with_chooser)
6350 (xg_get_file_with_selection): New functions, only defined ifdef
6351 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
6352 respectively.
6353 (xg_get_file_name): Add parameter only_dir_p.
6354 Call xg_get_file_with_chooser or xg_get_file_with_selection
6355 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
6356 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
6357
6358 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
6359
6360 * config.in: Rebuild (added HAVE_GTK_FILE_*).
6361
6362 2004-11-01 Kim F. Storm <storm@cua.dk>
6363
6364 * process.c (connect_wait_mask, num_pending_connects):
6365 Only declare and use them if NON_BLOCKING_CONNECT is defined.
6366 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
6367 (IF_NON_BLOCKING_CONNECT): New helper macro.
6368 (wait_reading_process_output): Only declare and use local vars
6369 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
6370
6371 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
6372
6373 * w32term.c (x_scroll_run): Delete region objects after use.
6374
6375 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6376
6377 * xmenu.c: Add prototypes for forward function declarations.
6378 (popup_get_selection): Remove parameter do_timers, remove call to
6379 timer_check.
6380 (create_and_show_popup_menu, create_and_show_dialog):
6381 Remove parameter do_timers from call to popup_get_selection.
6382
6383 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
6384 tool_bar_items and assign the result to f->tool_bar_items if
6385 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
6386 tool_bar_items to assignment of result.
6387
6388 * atimer.c (alarm_signal_handler): Do not call set_alarm if
6389 pending_atmers is non-zero.
6390
6391 2004-10-31 Kim F. Storm <storm@cua.dk>
6392
6393 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
6394
6395 2004-10-28 Will <will@glozer.net>
6396
6397 * macterm.c: Allow user to assign key modifiers to the Mac Option
6398 key via a 'mac-option-modifier' variable.
6399
6400 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6401
6402 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
6403 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
6404 (x_handle_selection_request, x_handle_selection_clear)
6405 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
6406
6407 2004-10-28 Richard M. Stallman <rms@gnu.org>
6408
6409 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6410
6411 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6412
6413 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6414
6415 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6416 comment-starter over a 1-char one.
6417
6418 2004-10-27 Richard M. Stallman <rms@gnu.org>
6419
6420 * xdisp.c (get_next_display_element): In mode lines,
6421 treat newline and tab like other control characters.
6422
6423 * editfns.c (Fmessage): Doc fix.
6424
6425 * indent.c (vmotion): When moving up, check the newline before.
6426 Make prevline an int, not a Lisp_Object.
6427
6428 2004-10-27 Kim F. Storm <storm@cua.dk>
6429
6430 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6431 Only allocate info and discarded tables once.
6432
6433 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6434 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6435 (SAFE_FREE): Test it to determine if we need to unwind to free.
6436 Remove size arg. All users changed.
6437 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6438
6439 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6440
6441 * gtkutil.c: Put empty line between comment and function body.
6442 (xg_destroy_widgets): Rename from remove_from_container.
6443 Just destroy all widgets in list. Argument wcont removed.
6444 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6445 instead of remove_from_container.
6446 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6447 (free_frame_tool_bar): Add comment.
6448
6449 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6450 is not NULL before strcmp.
6451
6452 2004-10-26 Kim F. Storm <storm@cua.dk>
6453
6454 * callint.c (Fcall_interactively): Add 'U' code to get the
6455 up-event discarded by a previous 'k' or 'K' argument.
6456
6457 2004-10-26 David Kastrup <dak@gnu.org>
6458
6459 * buffer.c (syms_of_buffer): Fix a few typos.
6460
6461 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6462
6463 * xsmfns.c: Put empty line between comment and function body.
6464 Use two spaces before comment end.
6465
6466 2004-10-25 Kenichi Handa <handa@m17n.org>
6467
6468 * fontset.c (fontset_pattern_regexp): Optimize for the case that
6469 PATTERN is full XLFD.
6470
6471 2004-10-24 Kenichi Handa <handa@m17n.org>
6472
6473 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
6474
6475 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
6476 (regex_compile): Return REG_ERANGEX if appropriate.
6477
6478 2004-10-22 Kenichi Handa <handa@m17n.org>
6479
6480 * editfns.c (Ftranslate_region_internal): New function.
6481 (syms_of_editfns): Defsubr it.
6482
6483 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6484
6485 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
6486
6487 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6488
6489 * xterm.h (x_output): New member `xic_base_fontname'.
6490 (FRAME_XIC_BASE_FONTNAME): New macro.
6491 (xic_free_xfontset): Declare.
6492
6493 * xfns.c (xic_create_xfontset): Share fontsets between frames
6494 based on base_fontname.
6495 (xic_free_xfontset): New function.
6496 (free_frame_xic): Use it.
6497 (xic_set_xfontset): Ditto.
6498
6499 * xterm.c (xim_destroy_callback): Ditto.
6500
6501
6502 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
6503
6504 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
6505
6506 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6507
6508 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
6509 XSync.
6510
6511 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
6512 New variables and constant.
6513 (main): Calculate heap_bss_diff. If we are dumping and the
6514 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
6515 and exec ourself again.
6516 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
6517 print a warning.
6518
6519 * lastfile.c: Make my_endbss and my_endbss_static available on all
6520 platforms.
6521
6522 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
6523 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
6524
6525 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
6526
6527 * data.c (Flocal_variable_if_set_p): Doc fix.
6528
6529 2004-10-19 Jason Rumney <jasonr@gnu.org>
6530
6531 * w32.c (init_environment): Set emacs_dir correctly when running
6532 emacs from the build directory.
6533
6534 2004-10-19 Richard M. Stallman <rms@gnu.org>
6535
6536 * editfns.c (Fdelete_and_extract_region):
6537 If region is empty, return null string.
6538
6539 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6540
6541 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
6542 and canon_width.
6543 (xg_frame_cleared): Remove.
6544
6545 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
6546 (xg_find_top_left_in_fixed): Remove.
6547 (xg_create_scroll_bar): Put an event box widget between
6548 the scroll bar widget and the edit widget.
6549 (xg_show_scroll_bar): Show the parent widget (the event box).
6550 (xg_remove_scroll_bar): Destroy parent (the event box) also.
6551 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
6552 Move the parent (the event box) widget inside the fixed widget.
6553 Move window clear to xterm.c.
6554
6555 * gtkutil.h (xg_frame_cleared): Remove.
6556
6557 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
6558 (x_scroll_bar_create, XTset_vertical_scroll_bar):
6559 Remove arguments left and width to xg_update_scrollbar_pos.
6560 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
6561
6562 2004-10-19 Kenichi Handa <handa@m17n.org>
6563
6564 * xdisp.c (display_mode_element): Fix display of wide chars.
6565
6566 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6567
6568 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
6569 gdk_window_clear and move gdk_window_process_all_updates after
6570 clear so events are sent to the X server in correct order.
6571
6572 2004-10-18 Kenichi Handa <handa@m17n.org>
6573
6574 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
6575 comparing font names.
6576 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6577 (list_fontsets): Likewise.
6578
6579 * search.c (fast_string_match_ignore_case): New function.
6580
6581 * lisp.h (fast_string_match_ignore_case): Extern it.
6582
6583 2004-10-17 Kim F. Storm <storm@cua.dk>
6584
6585 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
6586 than bitmap if there is not left fringe.
6587 (get_overlay_arrow_glyph_row): Also used on windows system.
6588 (display_line): Display overlay string if no left fringe.
6589
6590 2004-10-16 Jason Rumney <jasonr@gnu.org>
6591
6592 * w32fns.c (w32_font_match): Encode font name being matched.
6593
6594 2004-10-16 Richard M. Stallman <rms@gnu.org>
6595
6596 * window.c (Fspecial_display_p): Doc fix.
6597
6598 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
6599
6600 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
6601 Don't ignore menus, because where-is-internal already does it for us.
6602
6603 2004-10-15 Kim F. Storm <storm@cua.dk>
6604
6605 * xdisp.c (redisplay_window): Only update fringes and vertical
6606 border on window frames.
6607
6608 2004-10-14 Andreas Schwab <schwab@suse.de>
6609
6610 * m/ia64.h (DATA_SEG_BITS): Don't define.
6611
6612 2004-10-14 Kim F. Storm <storm@cua.dk>
6613
6614 * xterm.h: Include Xutil.h after keysym.h to work around bug
6615 in some X versions.
6616
6617 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6618
6619 * fns.c (map_char_table): Add missing gcpros.
6620
6621 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6622
6623 * keymap.c (get_keymap): An autoload form is not a keymap.
6624
6625 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
6626
6627 2004-10-13 Kim F. Storm <storm@cua.dk>
6628
6629 * callproc.c (Fcall_process): Simplify handling of display arg.
6630 Resume `display_on_the_fly' once a coding system is determined.
6631
6632 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
6633
6634 2004-10-12 Kim F. Storm <storm@cua.dk>
6635
6636 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
6637 caller, such as call-process, is not going to poll for input.
6638 (calc_line_height_property): Handle case where it->object is nil.
6639
6640 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
6641
6642 2004-10-12 Kenichi Handa <handa@m17n.org>
6643
6644 * xdisp.c (get_next_display_element):
6645 If unibyte_display_via_language_environment is zero, display 8-bit
6646 chars in octal in unibyte buffer.
6647
6648 2004-10-12 Kim F. Storm <storm@cua.dk>
6649
6650 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
6651 are no ordinary bindings.
6652
6653 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6654
6655 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
6656
6657 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6658
6659 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
6660 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
6661 (make_mac_frame): Add BLOCK_INPUT around the making of a
6662 terminal frame.
6663 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
6664 * macgui.h (mktime): Use emacs_mktime.
6665 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
6666 Make a cancel file-open dialog be like C-g.
6667 * mac.c (mktime): Use emacs_mktime.
6668 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
6669 (Fmac_paste_function): Add better error handling for carbon cut/paste.
6670
6671 2004-10-10 Kim F. Storm <storm@cua.dk>
6672
6673 * keyboard.c (timer_resume_idle): New function to resume idle
6674 timer without resetting timers on the idle list.
6675 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
6676 (timer_start_idle, timer_stop_idle): Declare static.
6677 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
6678
6679 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
6680
6681 2004-10-08 Steven Tamm <steventamm@mac.com>
6682
6683 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
6684 * macterm.c (mac_check_for_quit_char): Remove warning for using
6685 NULL where 0 should be used.
6686 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
6687 objc/malloc.h
6688 * mac.c: Include time.h for Tiger compatibility.
6689
6690 2004-10-07 Kim F. Storm <storm@cua.dk>
6691
6692 * xdisp.c (redisplay_window): Fix flicker on vertical line between
6693 windows. Update vertical line after drawing window fringes, but
6694 only if actually drawing any bitmaps--or there is no fringe.
6695
6696 * xterm.c (x_update_window_end): Likewise.
6697 * macterm.c (x_update_window_end): Likewise.
6698 * w32term.c (x_update_window_end): Likewise.
6699
6700 * fringe.c (draw_window_fringes): Return value now indicates if
6701 any fringe bitmaps were redrawn (or there are no fringes).
6702
6703 * dispextern.h (draw_window_fringes): Update prototype.
6704
6705 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6706
6707 * macfns.c (mac_get_window_bounds): Add extern.
6708 (x_real_positions): Use mac_get_window_bounds.
6709
6710 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
6711 xmenu.c (YAILOM).
6712
6713 * macterm.c [!MAC_OSX]: Include Windows.h.
6714 (front_emacs_window): Rename from mac_front_window. All uses
6715 changed. Return the frontmost non-tooltip emacs window.
6716 (mac_get_window_bounds): New function.
6717 (x_calc_absolute_position): Use the difference of width and height
6718 between the inner and outer window.
6719 (x_set_offset): Specify window position by the coordinae of the
6720 outer window. Adjust the position if the title bar is completely
6721 outside the screen.
6722 (app_is_suspended, app_sleep_time): Remove unused variables.
6723 (do_app_resume, do_app_suspend): Remove their contents because
6724 window-activate/deactivate events will do the job.
6725 (do_zoom_window): Remove unused variables. Make compliant to the
6726 standard way of zooming. Set f->left_pos and f->top_pos.
6727 (XTread_socket): Don't use argument `expected'. Don't use
6728 FrontWindow to determine the clicked window. Exclude unprocessed
6729 mouseUp cases in the early stage. Add parentheses to fix operator
6730 precedence.
6731 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
6732
6733 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
6734
6735 * config.in: Regenerate.
6736
6737 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
6738 HAVE_EXECSHIELD.
6739
6740 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6741
6742 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
6743 a row if Alt or Meta has been found for that row. Also stop scanning
6744 for Keysyms for that row.
6745
6746 2004-10-04 Kim F. Storm <storm@cua.dk>
6747
6748 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
6749 to list. Include overlay arrow bitmap in return value.
6750
6751 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
6752 bars with fractional column width. If scroll bar separates two
6753 windows, move it towards the window it belongs to. Only update
6754 the padding area below the scroll bar widget when necessary,
6755 i.e. when scroll bar widget is created, moved, or resized.
6756
6757 * xdisp.c (define_frame_cursor1): Do not change frame cursor
6758 while tracking/dragging mouse.
6759 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
6760
6761 * window.c (coordinates_in_window): Relax check for cursor
6762 on vertial border between mode lines.
6763 (Fset_window_fringes): Do not allow negative widths.
6764 (Fset_window_scroll_bars): Likewise.
6765
6766 * .gdbinit (pp): Shorthand for p ARG + pr.
6767 (ff): New command: flush frame updates (X only).
6768
6769 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
6770
6771 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
6772
6773 2004-09-30 Kenichi Handa <handa@m17n.org>
6774
6775 * process.c (send_process): Free composition data.
6776
6777 * fileio.c (Finsert_file_contents): Free composition data.
6778
6779 * coding.c (code_convert_region): Don't skip ASCIIs if there are
6780 compositions to encode.
6781 (encode_coding_string): Likewise. Free composition data.
6782
6783 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
6784
6785 * coding.c (code_convert_region): Free composition data.
6786
6787 2004-09-29 Kim F. Storm <storm@cua.dk>
6788
6789 * fringe.c: Remove limit on number of bitmaps.
6790 (fringe_bitmaps, fringe_faces): Change to pointers.
6791 (max_fringe_bitmaps): New var.
6792 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
6793 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
6794
6795 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
6796 (struct glyph_row): Reorder fringe_bitmap related fields.
6797 (struct it): Likewise.
6798
6799 * w32term.c (fringe_bmp): Change to pointer.
6800 (max_fringe_bmp): New var.
6801 (w32_define_fringe_bitmap): Expand fringe_bmp.
6802 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
6803 (w32_destroy_fringe_bitmap): Likewise.
6804
6805 2004-09-29 Kim F. Storm <storm@cua.dk>
6806
6807 * fringe.c: Simplify last change.
6808 (lookup_fringe_bitmap): New function.
6809 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
6810 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
6811 Keep standard bitmaps in Vfringe_bitmaps.
6812 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
6813 (Fset_fringe_bitmap_face): Likewise.
6814
6815 * dispextern.h (lookup_fringe_bitmap): Add prototype.
6816 (valid_fringe_bitmap_p): Remove prototype.
6817
6818 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
6819
6820 2004-09-29 Kim F. Storm <storm@cua.dk>
6821
6822 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
6823 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
6824
6825 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
6826
6827 * fringe.c (Vfringe_bitmaps): New variable.
6828 (syms_of_fringe): DEFVAR_LISP it.
6829 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
6830 Change arg to Lisp_Object and fail if not an integer.
6831 (get_fringe_bitmap_name, resolve_fringe_bitmap)
6832 (destroy_fringe_bitmap): New functions.
6833 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
6834 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
6835 clear its fringe property.
6836 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
6837 Fdestroy_fringe_bitmap.
6838 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
6839 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
6840 and set fringe property. Signal error if no free slots.
6841 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
6842 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
6843
6844 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
6845 symbols with a fringe property.
6846
6847 2004-09-27 Kim F. Storm <storm@cua.dk>
6848
6849 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
6850 Doc fix. Format may now be a symbol or alist, not a cons.
6851
6852 * fringe.c (update_window_fringes): Handle new formats of
6853 indicate-buffer-boundaries (symbol or alist). No longer
6854 allow a simple cons.
6855 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
6856
6857 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6858
6859 * config.in: Rebuild.
6860
6861 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6862
6863 * config.in: Rebuild.
6864
6865 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
6866
6867 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
6868
6869 * xterm.c (x_term_init): Work around a bug in some X servers.
6870
6871 2004-09-18 Richard M. Stallman <rms@gnu.org>
6872
6873 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
6874
6875 * xdisp.c (try_window_reusing_current_matrix):
6876 Handle the case where we reach the old displayed text,
6877 out of sync with the old line boundary.
6878
6879 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
6880
6881 * fileio.c (Finsert_file_contents): Fix case of replacement in a
6882 narrowed buffer.
6883
6884 2004-09-14 Kim F. Storm <storm@cua.dk>
6885
6886 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
6887
6888 * xfaces.c (Qface_no_inherit): New var.
6889 (syms_of_xfaces): Intern and staticpro it.
6890 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
6891 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
6892 Don't increment face_change_count when face has non-nil
6893 face-no-inherit property.
6894
6895 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
6896
6897 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
6898 (Fbyte_code): Remove dead code after `wrong_type_argument'.
6899
6900 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
6901 before doing the mark_stack_check_gcpros since they're not on the stack.
6902
6903 2004-09-12 Kim F. Storm <storm@cua.dk>
6904
6905 * editfns.c (Fformat): Handle format strings with multiple text
6906 properties. Reverse text property list from the format string,
6907 so the positions are in increasing order.
6908
6909 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6910
6911 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
6912 x_uncatch_errors so that possible protocol errors are delivered.
6913
6914 2004-09-10 Eli Zaretskii <eliz@gnu.org>
6915
6916 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
6917 blockinput.h.
6918 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
6919 charset.h, and coding.h
6920 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
6921 (term.o): Depend on window.h and keymap.h.
6922 (abbrev.o): Depend on syntax.h.
6923 (callint.o): Depend on keymap.h.
6924 (casefiddle.o): Depend on charset.h and keymap.h.
6925 (category.o): Depend on keymap.h.
6926 (coding.o): Depend on dispextern.h.
6927 (cmds.o): Depend on keyboard.h and keymap.h.
6928 (dispnew.o): Depend on indent.h and intervals.h.
6929 (doc.o): Depend on keymap.h.
6930 (editfns.o): Depend on frame.h.
6931 (emacs.o): Depend on dispextern.h.
6932 (fileio.o): Don't depend on ccl.h.
6933 (filelock.o): Depend on charset.h and coding.h.
6934 (frame.o): Depend on w32term.h and macterm.h.
6935 (insdel.o): Depend on region-cache.h.
6936 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
6937 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
6938 (search.o): Depend on $(INTERVALS_SRC).
6939 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
6940 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
6941 xterm.h, w32term.h, and macterm.h.
6942 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
6943 w32term.h, and macterm.h.
6944 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
6945 region-cache.h, xterm.h, w32term.h, and macterm.h.
6946 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
6947 (data.o): Depend on frame.h.
6948 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
6949 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
6950 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
6951 (intervals.o): Depend on keymap.h.
6952
6953 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
6954 Add debugging print-out to termscript.
6955
6956 2004-09-09 Richard M. Stallman <rms@gnu.org>
6957
6958 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
6959
6960 2004-09-08 Richard M. Stallman <rms@gnu.org>
6961
6962 * window.c (Fset_window_buffer): Doc fix.
6963
6964 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
6965
6966 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
6967
6968 * minibuf.c (history_delete_duplicates): New variable.
6969 (read_minibuf): Use it.
6970 (syms_of_minibuf): Create the corresponding lisp variable.
6971
6972 2004-09-08 Kim F. Storm <storm@cua.dk>
6973
6974 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
6975 overlay just before point.
6976
6977 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
6978
6979 * buffer.h (struct buffer): Add auto_save_file_format field.
6980 * buffer.c (reset_buffer, init_buffer_once):
6981 Handle auto_save_file_format field.
6982 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
6983 `buffer-auto-save-file-format'.
6984 * fileio.c: Delete declaration for removed Vauto_save_file_format.
6985 (build_annotations): Adapt to replacement of
6986 `auto-save-file-format' with the new buffer-local variable
6987 `buffer-auto-save-file-format'.
6988 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
6989
6990 2004-09-07 Jason Rumney <jasonr@gnu.org>
6991
6992 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
6993
6994 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
6995 Handle Unicode menu titles.
6996
6997 2004-09-07 Kim F. Storm <storm@cua.dk>
6998
6999 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
7000 property from text property or overlay strings at point.
7001
7002 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7003
7004 * xmenu.c (update_submenu_strings): YAILOM.
7005 (set_frame_menubar): Make sure last_i is initialized.
7006
7007 2004-09-03 Jason Rumney <jasonr@gnu.org>
7008
7009 * w32menu.c (_widget_value): Add lname and lkey.
7010 (digest_single_submenu): Set lname and lkey in widget_value
7011 instead of name and key.
7012 (update_submenu_strings): New function.
7013 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7014 call update_submenu_strings.
7015
7016 * w32menu.c (globals_of_w32menu): Check for Unicode API.
7017 (digest_single_submenu, w32_menu_show): Encode menu strings as
7018 UTF-8 if Unicode API is available.
7019 (utf8to16): New function.
7020 (add_menu_item): Use it when calling Unicode API.
7021
7022 2004-09-03 Kim F. Storm <storm@cua.dk>
7023
7024 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
7025 in overlay or text-property strings; set cursor on corresponding
7026 glyph rather than at end of the string.
7027
7028 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7029
7030 * macfns.c (x_real_positions): Save the current window port and
7031 set a new one before obtaining the global coordinate.
7032 Use FRAME_MAC_WINDOW.
7033 (x_set_name, x_set_title): Encode title to UTF8.
7034 Use SetWindowTitleWithCFString.
7035 (Fx_server_version): Get correct OS version.
7036
7037 * macmenu.c (add_menu_item): Remove unused variable `i'.
7038 Don't let separator items destroy refence constants of other menu items.
7039
7040 * macterm.c (x_update_end): Move SetPortWindowPort to inside
7041 BLOCK_INPUT.
7042 (x_set_offset): Use FRAME_MAC_WINDOW.
7043
7044 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
7045 nontext_cursor if it is on a scroll bar.
7046
7047 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
7048 Carbon support.
7049 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
7050 Use LIBS_CARBON.
7051
7052 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7053
7054 * xfns.c (x_set_name_internal): New function. Check if we shall call
7055 xfree before ENCODE_UTF_8.
7056 (x_set_name, x_set_title): Call x_set_name_internal.
7057
7058 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
7059
7060 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
7061 reload it.
7062
7063 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7064
7065 * macmenu.c (_widget_value): Add lname and lkey.
7066 (single_submenu): Set lname and lkey in widget_value
7067 instead of name and key.
7068 (update_submenu_strings): New function.
7069 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7070 call update_submenu_strings.
7071
7072 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
7073 instead of name and key.
7074 (update_submenu_strings): New function.
7075 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7076 call update_submenu_strings.
7077
7078 * gtkutil.h (_widget_value): Added lname and lkey.
7079
7080 2004-08-30 Steven Tamm <steventamm@mac.com>
7081
7082 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
7083 by using different names for inner loop variables.
7084
7085 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7086
7087 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
7088 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
7089
7090 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
7091 tool bar items is 0.
7092
7093 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7094
7095 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
7096 strings in menu items.
7097 (single_submenu): Use ENCODE_MENU_STRING
7098 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
7099 button release isn't passed to event loop
7100 (add_menu_item): Use SetMenuItemWithCFString
7101
7102 2004-08-26 Steven Tamm <steventamm@mac.com>
7103
7104 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
7105 tool-bar/menu click.
7106 * macfns.c (Fx_file_dialog): Implement using NavServices.
7107
7108 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7109
7110 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
7111
7112 * xfns.c (x_window_to_frame, x_any_window_to_frame)
7113 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7114 (x_top_window_to_frame): Return 0 if wdesc is None.
7115
7116 2004-08-22 Richard M. Stallman <rms@gnu.org>
7117
7118 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
7119 HAVE_TERMIOS]: If there's no char for this signal, drop through
7120 and use system calls.
7121
7122 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
7123
7124 2004-08-20 Kim F. Storm <storm@cua.dk>
7125
7126 * process.c (wait_reading_process_output): Rename from
7127 wait_reading_process_input. All uses changed.
7128 (wait_reading_process_output_1): Rename from
7129 wait_reading_process_input_1. All uses changed.
7130
7131 * dispnew.c (Fsleep_for): Remove obsolete code.
7132
7133 2004-08-20 Kenichi Handa <handa@m17n.org>
7134
7135 * syntax.c (skip_chars): Fix for unibyte case.
7136
7137 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
7138
7139 * syntax.c (char_quoted): Mixup byte/char pos.
7140 (back_comment): Fixup globals in all cases.
7141
7142 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7143
7144 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
7145 passing it to gtk_window_set_title.
7146
7147 2004-08-19 Kim F. Storm <storm@cua.dk>
7148
7149 * process.c (wait_reading_process_input): Clean up.
7150 Add wait_for_cell, wait_proc, and just_wait_proc args
7151 to avoid overloading `read_kbd' and `do_display' args.
7152 Change read_kbd arg to int. All callers changed.
7153
7154 * process.c (process_send_signal): Use CDISABLE.
7155
7156 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
7157
7158 2004-08-18 Kim F. Storm <storm@cua.dk>
7159
7160 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
7161 forward to wait_reading_process_input via DO_DISPLAY arg.
7162 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
7163 object, only process output from that process; also inhibit
7164 running timers if DO_DISPLAY==-2.
7165
7166 2004-08-17 Kim F. Storm <storm@cua.dk>
7167
7168 * process.c (process_send_signal): Fix last change--use
7169 _POSIX_VDISABLE instead of CVDISABLE when available.
7170
7171 2004-08-16 Richard M. Stallman <rms@gnu.org>
7172
7173 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
7174 Set VQUIT and VINTR chars to the standard ones if they are unset.
7175 [AIX]: Don't do that here. And don't force VINTR to standard
7176 when SIGNALS_VIA_CHARACTERS.
7177
7178 * process.c (process_send_signal)
7179 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
7180 Do nothing if the character is CVDISABLE.
7181
7182 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
7183
7184 * intervals.c (move_if_not_intangible):
7185 Force POSITION to be between BEGV and ZV.
7186
7187 2004-08-14 John Paul Wallington <jpw@gnu.org>
7188
7189 * buffer.c (Frestore_buffer_modified_p): Doc fix.
7190
7191 * fileio.c (Fread_file_name): Doc fix.
7192
7193 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
7194
7195 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
7196
7197 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
7198
7199 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
7200
7201 * keyboard.c: Declare Qdisabled_command_function instead of
7202 Qdisabled_command_hook.
7203 (Fcommand_execute): Use Qdisabled_command_function instead of
7204 Qdisabled_command_hook.
7205 (syms_of_keyboard): Ditto.
7206
7207 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
7208
7209 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
7210 (syms_of_keymap) <key-translation-map>: Doc fixes.
7211
7212 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
7213
7214 * window.c (window_list_1): YAILOM.
7215
7216 * fileio.c (make_temp_name): Handle multibyte prefixes.
7217
7218 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
7219
7220 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
7221 Doc fix.
7222
7223 2004-08-03 Kenichi Handa <handa@m17n.org>
7224
7225 * coding.c (decode_coding_string): Adjust coding->consumed, and
7226 etc. with shrinked_bytes.
7227
7228 2004-08-03 Kim F. Storm <storm@cua.dk>
7229
7230 * indent.c (compute_motion): Fix check for full width window
7231 in non-window case. Do not count left truncation glyph on
7232 window systems.
7233
7234 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
7235
7236 * data.c (Finteractive_form): Doc fix.
7237
7238 2004-08-02 Kim F. Storm <storm@cua.dk>
7239
7240 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
7241 properly accounting for continuation glyph on non-window systems.
7242 (Fcompute_motion): Use actual window width if WIDTH is nil, and
7243 actual window width/height if TOPOS is nil, properly accounting for
7244 continuation glyphs on non-window systems, and optional header lines.
7245 (vmotion): Let compute_motion calculate actual window width.
7246
7247 * window.c (window_scroll_line_based): Let compute_motion
7248 calculate actual window width.
7249
7250 2004-08-02 Kim F. Storm <storm@cua.dk>
7251
7252 * process.c (read_process_output): Use whole read buffer.
7253 Don't trigger adaptive read buffering on errors.
7254
7255 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
7256
7257 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
7258
7259 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
7260
7261 * callint.c (Fcall_interactively): Doc fix.
7262
7263 2004-07-30 Richard M. Stallman <rms@gnu.org>
7264
7265 * abbrev.c (Fexpand_abbrev): Undo previous change.
7266
7267 2004-07-30 Kim F. Storm <storm@cua.dk>
7268
7269 * editfns.c (Fformat): Allocate extra (dummy) element in info.
7270
7271 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
7272
7273 * eval.c (Fdefvar, Fdefconst): Doc fixes.
7274
7275 2004-07-27 Kim F. Storm <storm@cua.dk>
7276
7277 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
7278 we have ensured that the glyph fits on the current line (or returned
7279 MOVE_LINE_CONTINUED otherwise).
7280
7281 2004-07-26 Kim F. Storm <storm@cua.dk>
7282
7283 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
7284 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
7285 if target position is at end of display line but char is not a newline.
7286
7287 2004-07-25 Richard M. Stallman <rms@gnu.org>
7288
7289 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
7290 instead of ON_VERTICAL_BORDER, when on scroll bar.
7291 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
7292
7293 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
7294
7295 * window.c (Fcoordinates_in_window_p):
7296 Take account of FRAME_INTERNAL_BORDER_WIDTH.
7297
7298 * alloc.c (check_cons_list): New function (contents commented out).
7299
7300 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
7301
7302 * xfaces.c (Fcolor_supported_p): Doc fix.
7303
7304 * frame.c (Fselect_frame, Fset_frame_selected_window)
7305 (Fframe_visible_p, Fraise_frame): Doc fixes.
7306
7307 2004-07-24 Richard M. Stallman <rms@gnu.org>
7308
7309 * keyboard.h (not_single_kboard_state): Declare.
7310
7311 * fileio.c (Fwrite_region): Doc fix.
7312
7313 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
7314
7315 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
7316 only when a real abbrev is present.
7317
7318 * xfns.c (x_icon_verify): New function.
7319 (Fx_create_frame): Use it.
7320
7321 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
7322
7323 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
7324
7325 2004-07-21 Kim F. Storm <storm@cua.dk>
7326
7327 * window.h (struct glyph_matrix): New members nrows_scale_factor
7328 and ncols_scale_factor.
7329
7330 * window.c (make_window): Initialize nrows_scale_factor and
7331 ncols_scale_factor members.
7332
7333 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
7334 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
7335 (required_matrix_height): Apply nrows_scale_factor.
7336 (required_matrix_width): Apply ncols_scale_factor.
7337
7338 * xdisp.c (display_line): Increment nrows_scale_factor and set
7339 fonts_changed_p if past last allocated row.
7340 (append_glyph, append_composite_glyph, produce_image_glyph)
7341 (append_stretch_glyph): Increment ncols_scale_factor and set
7342 fonts_changed_p if current area is full.
7343
7344 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7345
7346 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
7347
7348 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
7349
7350 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
7351 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
7352 (Fset_window_start, Fscroll_up, Fscroll_down)
7353 (Fother_window_for_scrolling, Fscroll_other_window)
7354 (Fsave_window_excursion, Fset_window_vscroll)
7355 (syms_of_window) <window-size-fixed>: Doc fixes.
7356
7357 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7358
7359 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
7360 ENCODE_SYSTEM for filenames.
7361
7362 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7363
7364 * mac.c (sys_select): Block input around call to
7365 ReceiveNextEvent to prevent breakage. Correctly handle
7366 blocking on event queue only by calling ReceiveNextEvent
7367 instead of select (since GUI events aren't on an fd).
7368 (sys_read): Remove function
7369 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
7370
7371 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7372
7373 * mac.c (sys_select): Redo sys_select to use alarm-based
7374 polling instead of 1 sec timeouts (like solaris).
7375
7376 * macterm.c (x_make_frame_visible): Comment in polling on
7377 frame creation.
7378
7379 * keyboard.c: Undef SIGIO on Carbon
7380
7381 * atimer.c (alarm_signal_handler): Call alarm handlers after
7382 scheduling.
7383
7384 * eval.c (Feval): Remove quit_char test
7385
7386 * process.c (wait_reading_process_input): Remove clearing
7387 stdin for select call on process input.
7388
7389 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
7390
7391 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
7392 capitalization error in docstring.
7393
7394 2004-07-17 Juanma Barranquero <lektu@terra.es>
7395
7396 * keyboard.c (not_single_kboard_state): Do nothing unless
7397 MULTI_KBOARD is defined.
7398
7399 2004-07-17 Richard M. Stallman <rms@gnu.org>
7400
7401 * window.c (coordinates_in_window): Inside the window but outside
7402 its box to the L or R, return ON_VERTICAL_BORDER.
7403 (window_list_1): Rotate the list to start with WINDOW.
7404
7405 * print.c (print_preprocess): Test for print_depth at limit
7406 before entering in being_printed.
7407
7408 * keyboard.c (not_single_kboard_state): New function.
7409 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7410
7411 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7412 this kboard, and we delete its last frame, go to any_kboard_state.
7413
7414 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7415
7416 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7417
7418 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7419 system before passing them to OS functions for display.
7420
7421 2004-07-15 David Kastrup <dak@gnu.org>
7422
7423 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7424 Apparently fixes an abort condition.
7425
7426 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7427
7428 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7429 instead of a cons.
7430
7431 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7432
7433 * keyboard.c (echo_dash): Do nothing if there already is a dash
7434 at the end of the echo string.
7435
7436 2004-07-12 Kim F. Storm <storm@cua.dk>
7437
7438 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7439 if GC_MARK_STACK.
7440
7441 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7442
7443 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7444
7445 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7446 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7447 (Freplace_buffer_in_windows, Fset_window_buffer)
7448 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7449 (syms_of_window): Expand docstring of `display-buffer-function'.
7450
7451 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7452
7453 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7454 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7455 that time values of the type (HIGH . LOW) are considered obsolete.
7456
7457 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7458
7459 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7460 docstring.
7461
7462 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7463
7464 2004-07-06 John Paul Wallington <jpw@gnu.org>
7465
7466 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
7467
7468 * fns.c (Fclear_string): Signal an error if STRING is not a string.
7469
7470 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7471
7472 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
7473 instead of CGMainDisplayID (only in OSX 10.2 and later).
7474
7475 2004-07-04 John Paul Wallington <jpw@gnu.org>
7476
7477 * fileio.c (read_file_name_completion_ignore_case): New variable.
7478 (syms_of_fileio): Declare and initialise it.
7479 (Fread_file_name): Bind `completion-ignore-case' to respect it.
7480
7481 2004-07-03 Eli Zaretskii <eliz@gnu.org>
7482
7483 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
7484 for event.x and event.y.
7485
7486 2004-07-01 Kenichi Handa <handa@m17n.org>
7487
7488 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
7489 after getting a new string by pre-write-conversion.
7490
7491 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
7492
7493 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
7494 (x_calc_absolute_position): Remove unused var `child'.
7495
7496 * xfaces.c (x_supports_face_attributes_p)
7497 (Fdisplay_supports_face_attributes_p): YAILOM.
7498 (tty_supports_face_attributes_p): Remove unused var `i'.
7499
7500 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
7501 back_unibyte_ok.
7502
7503 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
7504
7505 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
7506
7507 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
7508
7509 2004-06-30 Andreas Schwab <schwab@suse.de>
7510
7511 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
7512 (Finit_image_library): Pass LIBRARIES through to
7513 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
7514 (lookup_image_type): Pass Qnil as second argument to
7515 Finit_image_library.
7516
7517 * lisp.h (Finit_image_library): Declare.
7518
7519 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7520
7521 * macterm.c (do_window_activate, do_window_deactivate): Remove.
7522 (XTread_socket): Send mouse button events to the toolbox
7523 dispatcher even when the mouse is grabbed. Don't process window
7524 activate events for non-Emacs windows. Replace function calls to
7525 do_window_activate and do_window_deactivate with their contents.
7526 Reset mouse grabbing status when a window is deactivated.
7527
7528 2004-06-29 Steven Tamm <steventamm@mac.com>
7529
7530 * macterm.c (mac_get_emulated_btn)
7531 (mac_event_to_emacs_modifiers): Fix emulated mouse button
7532 support to correctly mask out modifiers.
7533
7534 2004-06-29 David Kastrup <dak@gnu.org>
7535
7536 * search.c (Fset_match_data): Allow buffer before end of list
7537 which can happen if set-match-data is using a pre-consed list.
7538
7539 2004-06-28 Steven Tamm <steventamm@mac.com>
7540
7541 * macterm.c (XTread_socket): Correctly set the frame position
7542 after the window is moved.
7543
7544 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7545
7546 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
7547 gpix and gmask just before return to avoid memory leak.
7548 (xg_get_image_for_pixmap): Add workaround for monochrome displays
7549 so insensitive and activated icons look ok.
7550
7551 2004-06-27 Jason Rumney <jasonr@gnu.org>
7552
7553 * w32fns.c (file_dialog_callback): Disable edit control if set
7554 to directories only on CDN_INITDONE message.
7555 (Fx_file_dialog): Default to directories only when prompt starts
7556 with "Dired".
7557
7558 2004-06-25 Kim F. Storm <storm@cua.dk>
7559
7560 * alloc.c (allocate_misc): Update total_free_markers.
7561 (free_misc): New function.
7562 (safe_alloca_unwind, free_marker): Use it.
7563
7564 * lisp.h (free_misc): Add prototype.
7565
7566 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
7567
7568 2004-06-24 Richard M. Stallman <rms@gnu.org>
7569
7570 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
7571 (syms_of_emacs): Lisp variables deleted.
7572
7573 2004-06-23 David Kastrup <dak@gnu.org>
7574
7575 * search.c (Freplace_match): Adjust the match-data more thoroughly
7576 when replacing strings in the buffer.
7577 (Fmatch_data): When INTEGERS is non-nil and the last match was in
7578 a buffer, add the buffer as last element to the match data.
7579 (Fset_match_data): If an additional element of the match-data is a
7580 buffer, restore it to last_thing_searched.
7581 (save_search_regs): Save last_thing_searched as part of the match data.
7582 (restore_match_data): Restore it again.
7583
7584 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
7585
7586 * keymap.c (Ftext_char_description): Doc fix.
7587 * doc.c (Fsnarf_documentation): Doc fix.
7588
7589 2004-06-22 Kim F. Storm <storm@cua.dk>
7590
7591 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
7592
7593 * lisp.h (struct Lisp_Save_Value): New member dogc.
7594 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7595 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
7596 (SAFE_FREE_LISP): New macro.
7597
7598 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
7599 (make_save_value): Init new dogc member.
7600 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
7601
7602 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
7603 SAFE_FREE_LISP macros.
7604
7605 2004-06-22 Kim F. Storm <storm@cua.dk>
7606
7607 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
7608 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
7609 in that memory area are unknown to GC. Add comments.
7610
7611 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
7612
7613 2004-06-21 Kim F. Storm <storm@cua.dk>
7614
7615 * lisp.h (MAX_ALLOCA): Define here.
7616 (safe_alloca_unwind): Add prototype.
7617 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
7618
7619 * alloc.c (safe_alloca_unwind): New function.
7620
7621 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
7622
7623 * charset.c (Fstring): Use SAFE_ALLOCA.
7624
7625 * coding.c (MAX_ALLOCA): Remove define.
7626
7627 * data.c (MAX_ALLOCA): Remove define.
7628 (Faset): Use SAFE_ALLOCA.
7629
7630 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
7631
7632 * fns.c (string_make_multibyte, string_to_multibyte)
7633 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
7634 (MAX_ALLOCA): Remove define.
7635 (Fbase64_encode_region, Fbase64_encode_string)
7636 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
7637 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
7638 memory leak if encoding fails.
7639
7640 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
7641
7642 2004-06-21 Eli Zaretskii <eliz@gnu.org>
7643
7644 * print.c (Fwith_output_to_temp_buffer): Doc fix.
7645
7646 2004-06-20 Richard M. Stallman <rms@gnu.org>
7647
7648 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
7649
7650 * search.c (match_limit): Cleaner err msg when no match data available.
7651
7652 * window.c (syms_of_window): Doc fix.
7653
7654 * keyboard.c (command_loop_1): Handle values `only' and `identity'
7655 for Vtransient_mark_mode.
7656
7657 * buffer.c (syms_of_buffer): Doc fix.
7658
7659 2004-06-21 David Kastrup <dak@gnu.org>
7660
7661 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
7662 and unbinding of `case-fold-search' according to
7663 `completion-ignore-case' around calls of string-match and
7664 predicates, respectively. Should give satisfactory performance
7665 in all relevant cases.
7666
7667 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7668
7669 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
7670 clip_x/y_origin.
7671
7672 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
7673
7674 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
7675
7676 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
7677 on Mac OSX.
7678
7679 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
7680
7681 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
7682
7683 2004-06-16 Kim F. Storm <storm@cua.dk>
7684
7685 * dispextern.h (Vimage_types): Remove extern.
7686
7687 2004-06-16 Miles Bader <miles@gnu.org>
7688
7689 * image.c (lookup_image_type): Initialize image type if necessary.
7690
7691 2004-06-15 Kim F. Storm <storm@cua.dk>
7692
7693 * xdisp.c (try_cursor_movement): Exclude header line from scroll
7694 margin at top of window.
7695 (try_window_reusing_current_matrix): Calculate proper cursor position
7696 after scrolling up with non-zero scroll margin, as the old cursor
7697 position corresponds to value of PT before executing this command.
7698 (try_window_id): Consider scroll margin at bottom of window too;
7699 otherwise we fail to scroll when hl-line-mode is enabled.
7700
7701 * syntax.c (skip_chars): Only recognize [:class:] when it has the
7702 proper format and class is a lower-case word.
7703
7704 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7705
7706 * gtkutil.c (xg_get_image_for_pixmap): New function.
7707 (xg_get_gdk_pixmap_and_mask): Remove.
7708 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
7709 xg_get_gdk_pixmap_and_mask.
7710
7711 * xterm.h (struct x_display_info): Typo in comment fixed.
7712
7713 2004-06-14 Juanma Barranquero <lektu@terra.es>
7714
7715 * dispextern.h (Vimage_types): Make it conditional on
7716 HAVE_WINDOW_SYSTEM.
7717
7718 * image.c (Vimage_types): Move from xdisp.c.
7719 (Vimage_type_cache): New variable.
7720 (define_image_type): New argument indicating whether an image
7721 library was loaded; cache loaded status and return t on success,
7722 nil otherwise.
7723 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
7724 (w32_delayed_load): New function to load an image library from a
7725 list of possible filenames.
7726 (init_xpm_functions, init_png_functions, init_jpeg_functions)
7727 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
7728 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
7729 (Finit_image_library): New function, extracted from `init_image'.
7730 Try to initialize an image library on demand and cache whether we
7731 were successful or not.
7732 (syms_of_image): Initialize `Vimage_types' and
7733 `Vimage_type_cache'. Add recognized image types to Vimage_types.
7734 Export `init-image-library'.
7735 (init_image): Remove initialization of all image types, except xbm
7736 and pbm.
7737
7738 * xdisp.c (Vimage_types): Delete (moved to image.c).
7739
7740 2004-06-14 Andreas Schwab <schwab@suse.de>
7741
7742 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7743 Avoid calling specbind when completion-regexp-list is empty.
7744
7745 2004-06-13 Richard M. Stallman <rms@gnu.org>
7746
7747 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7748 (re_wctype, re_iswctype, re_wctype_to_bit):
7749 Non-function definitions moved here from regex.c.
7750
7751 * regex.c (re_wctype, re_iswctype): Function defs longer static.
7752 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7753 (re_wctype, re_iswctype, re_wctype_to_bit):
7754 Non-function definitions moved to regex.h.
7755
7756 * window.c (Fselect_window): Doc fix.
7757
7758 * syntax.c: Include regex.h.
7759 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
7760 If requested, make a list of classes, then check the scanned
7761 chars for membership in them.
7762 (in_classes): New function.
7763 Doc fix.
7764
7765 * keyboard.c (cmd_error): Don't call any_kboard_state
7766 if inside a recursive edit level.
7767
7768 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7769
7770 * keyboard.c (command_loop): Call any_kboard_state before
7771 command_loop_2 when at top level.
7772
7773 2004-06-13 Andreas Schwab <schwab@suse.de>
7774
7775 * print.c (print_object): Always use %ld for printing EMACS_INT.
7776
7777 * keyboard.c (cancel_hourglass_unwind): Return a value.
7778 (modify_event_symbol): Always use %ld for printing EMACS_INT.
7779 (Fexecute_extended_command): Likewise.
7780
7781 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
7782 avoid clashes.
7783 (SYNTAX): Likewise.
7784 (SYNTAX_WITH_FLAGS): Likewise.
7785 (SYNTAX_MATCH): Likewise.
7786
7787 * syntax.c (char_quoted): Avoid warning about undefined operation.
7788 (find_defun_start): Likewise.
7789 (scan_lists): Likewise.
7790 (INC_FROM): Likewise.
7791 (scan_sexps_forward): Likewise.
7792
7793 * image.c: Include <ctype.h>.
7794
7795 * xfaces.c (face_attr_equal_p): Declare parameters.
7796
7797 2004-06-13 Kenichi Handa <handa@m17n.org>
7798
7799 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
7800
7801 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
7802
7803 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
7804
7805 2004-06-12 Kenichi Handa <handa@m17n.org>
7806
7807 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
7808 ccl_prog_stack_struct and update it.
7809 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
7810 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
7811 ccl->eof_ic on EOF.
7812 (ccl_debug_hook): New function.
7813 (struct ccl_prog_stack): New member eof_ic.
7814 (ccl_driver): Handle EOF in subrountine call correctly.
7815
7816 2004-06-11 Kenichi Handa <handa@m17n.org>
7817
7818 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
7819
7820 2004-06-11 Kim F. Storm <storm@cua.dk>
7821
7822 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
7823
7824 2004-06-11 Juanma Barranquero <lektu@terra.es>
7825
7826 * keyboard.c (Fposn_at_point): Doc fix.
7827
7828 2004-06-11 David Kastrup <dak@gnu.org>
7829
7830 * search.c (match_limit): Don't flag an error if match-data
7831 exceeding the allocated search_regs.num_regs gets requested, just
7832 return Qnil.
7833
7834 2004-06-08 Miles Bader <miles@gnu.org>
7835
7836 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
7837
7838 2004-06-07 Juanma Barranquero <lektu@terra.es>
7839
7840 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
7841 (Fcurrent_time_string, Fcurrent_time_zone)
7842 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
7843
7844 2004-06-07 Miles Bader <miles@gnu.org>
7845
7846 * xfaces.c (struct named_merge_point): New type.
7847 (push_named_merge_point): New function.
7848 (merge_named_face): New function.
7849 (merge_face_ref, face_at_buffer_position, face_at_string_position):
7850 Use `merge_named_face'.
7851 (merge_face_inheritance): Function removed.
7852 (merge_face_ref): Rename from `merge_face_vector_with_property'.
7853 Add new `err_msgs' and `named_merge_points' args. Return error
7854 status. Only print error messages if ERR_MSGS is true. Don't try to
7855 do :inherit attribute validation.
7856 (merge_face_heights): Handle `unspecified' in both directions.
7857 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
7858 Call `merge_face_ref' instead of `merge_face_inheritance'.
7859 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
7860 (compute_char_face, face_at_buffer_position)
7861 (face_at_string_position): Call `merge_face_ref' instead of
7862 `merge_face_vector_with_property'.
7863
7864 2004-06-07 Kenichi Handa <handa@m17n.org>
7865
7866 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
7867 the necessary places.
7868
7869 2004-06-07 Kim F. Storm <storm@cua.dk>
7870
7871 * process.c (Fdelete_process): Undo 2004-05-28 change.
7872 Instead, call status_notify also for network process.
7873 (status_message): Use process instead of status as arg.
7874 Give messages "deleted" or "connection broken by remote peer" for
7875 an exited network process.
7876 (status_notify): Change call to status_message.
7877 (read_process_output): Increase readmax to 4096. Do not increase
7878 buffer size for datagram channels (default is now large enough).
7879
7880 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
7881
7882 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
7883 problem due to newly defined variable.
7884
7885 2004-06-06 Miles Bader <miles@gnu.org>
7886
7887 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
7888 immediately if non-interactive or not initialized.
7889
7890 2004-06-05 Richard M. Stallman <rms@gnu.org>
7891
7892 * minibuf.c (Fcompleting_read): Doc fix.
7893
7894 2004-06-05 Andreas Schwab <schwab@suse.de>
7895
7896 * macfns.c (x_create_tip_frame): Fix declaration after statement.
7897
7898 2004-06-05 Juanma Barranquero <lektu@terra.es>
7899
7900 * keymap.c (Fdescribe_vector): Fix docstring.
7901 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
7902
7903 2004-06-05 Miles Bader <miles@gnu.org>
7904
7905 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
7906 attributes have different values than the default face.
7907
7908 2004-06-04 Eli Zaretskii <eliz@gnu.org>
7909
7910 * xfaces.c (x_supports_face_attributes_p): Make this function
7911 conditional on HAVE_WINDOW_SYSTEM.
7912 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
7913 Don't call x_supports_face_attributes_p if it was not compiled in.
7914
7915 2004-06-04 Miles Bader <miles@gnu.org>
7916
7917 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
7918 from Ftty_supports_face_attributes_p.
7919 (x_supports_face_attributes_p): New function.
7920 (Ftty_supports_face_attributes_p): Function deleted.
7921 (Fdisplay_supports_face_attributes_p): New function.
7922 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
7923 (face_attr_equal_p): New function.
7924 (lface_equal_p): Use it.
7925
7926 2004-06-03 Juanma Barranquero <lektu@terra.es>
7927
7928 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
7929 (Vw32_color_map): Fix typo in docstring.
7930 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
7931 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
7932 Make argument names match their use in docstring.
7933
7934 2004-06-02 Juanma Barranquero <lektu@terra.es>
7935
7936 Work around bugs/problems with MinGW builds of graphics libraries
7937 called from MSVC builds of Emacs.
7938
7939 * image.c (lookup_image): Make pointer to img static.
7940 (png_read_from_memory): Disable "global" optimization.
7941
7942 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
7943
7944 * eval.c (Fcondition_case): Fix usage. Simplify.
7945
7946 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
7947
7948 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7949
7950 * macfns.c: Don't include ccl.h.
7951 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
7952 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
7953 TextUtils.h.
7954 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
7955 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
7956 display height/width.
7957 (compute_tip_xy, Vx_max_tooltip_size): Declare.
7958 (unwind_create_tip_frame, compute_tip_xy): New functions.
7959 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
7960 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
7961 and last_show_tip_args.
7962
7963 * macgui.h [!MAC_OSX]: Include Gestalt.h.
7964 (Cursor, No_Cursor): New defines.
7965 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
7966 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
7967
7968 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
7969
7970 * macterm.c: Don't include Gestalt.h.
7971 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
7972 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
7973 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
7974 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
7975 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
7976 (construct_mouse_click, XTmouse_position)
7977 (x_scroll_bar_report_motion, x_calc_absolute_position)
7978 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
7979 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
7980 (note_mouse_movement): Clear the mouse face and reset the pointer
7981 shape when the pointer goes outside the frame without grabbing.
7982 (mac_front_window): New function.
7983 (mac_window_to_frame): New macro.
7984 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
7985 (do_window_activate, do_window_deactivate, do_app_resume)
7986 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
7987 (do_zoom_window, mac_do_receive_drag, XTread_socket)
7988 (mac_check_for_quit_char): Use mac_front_window and/or
7989 mac_window_to_frame.
7990 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
7991 scroll-bar click event.
7992 (mac_define_frame_cursor): Change the pointer shape.
7993 (x_free_frame_resources): Reset tip_window to NULL when it is
7994 disposed of.
7995 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
7996 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
7997 (do_window_update): Don't do anything if the updated window is the
7998 tooltip window.
7999 (do_mouse_moved): Handle mouse movement events here (previously in
8000 XTread_socket). Clear the mouse face if
8001 dpyinfo->mouse_face_hidden is set.
8002 (do_os_event, do_events): Remove (now in XTread_socket).
8003 (XTread_socket): Immediately return if interrupt_input_blocked.
8004 Loop until all the events in the queue are processed.
8005 Rearrange codes for mouse grabbing. Add tooltip support. Include the
8006 contents of do_os_event and do_events. Remove mouse movement
8007 handling (now in do_mouse_moved). Add the case where
8008 Vmouse_highlight has an integer value.
8009 (NewMacWindow): Remove.
8010 (make_mac_frame): Do what NewMacWindow previously did. Don't do
8011 excess initializations.
8012 (make_mac_terminal_frame): Previous initializations in
8013 make_mac_frame are moved here.
8014 (mac_initialize_display_info):
8015 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
8016
8017 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
8018 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
8019
8020 2004-05-29 Richard M. Stallman <rms@gnu.org>
8021
8022 * lisp.h (truncate_undo_list): Update decl.
8023
8024 * alloc.c (undo_outer_limit): New variable.
8025 (syms_of_alloc): Defvar it.
8026 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
8027
8028 * undo.c (truncate_undo_list): New arg LIMITSIZE.
8029
8030 * alloc.c (lisp_align_malloc): Check for base == 0
8031 regardless of HAVE_POSIX_MEMALIGN.
8032 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
8033
8034 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8035
8036 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
8037 (marker_blocks_pending_free): Remove.
8038 (Fgarbage_collect): Sweep after cleaning up undo-lists.
8039 Mark the undo lists after claning them up.
8040 Don't free block in marker_blocks_pending_free.
8041 (mark_buffer): Don't mark undo_list.
8042 (gc_sweep): Sweep hash-tables and strings first.
8043 Do free marker blocks that are empty.
8044
8045 2004-05-28 Jim Blandy <jimb@redhat.com>
8046
8047 * regex.c (print_partial_compiled_pattern): Add missing 'break'
8048 after 'case wordend'. For symbeg and symend, print to stderr,
8049 like the other cases.
8050
8051 2004-05-28 Noah Friedman <friedman@splode.com>
8052
8053 * process.c (Fdelete_process): Do not call remove_process.
8054
8055 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8056
8057 * alloc.c (struct backtrace): Remove.
8058 (Fgarbage_collect): Use the new mark_backtrace.
8059
8060 * eval.c (mark_backtrace): New function.
8061
8062 * minibuf.c (run_exit_minibuf_hook): New function.
8063 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
8064 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
8065
8066 2004-05-27 Kim F. Storm <storm@cua.dk>
8067
8068 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
8069 over display properties, e.g. images, that replace buffer text.
8070
8071 2004-05-25 Kim F. Storm <storm@cua.dk>
8072
8073 * alloc.c (marker_blocks_pending_free): New var.
8074 (gc_sweep): Store free marker blocks on that list.
8075 (Fgarbage_collect): Free them after undo-list cleanup.
8076
8077 * process.c (wait_reading_process_input): Check connect_wait_mask
8078 before actually accepting connection in case it has already been
8079 accepted due to recursion.
8080
8081 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8082
8083 * coding.c (Fset_safe_terminal_coding_system_internal):
8084 Set suppress_error in safe_terminal_coding, not terminal_coding.
8085
8086 2004-05-22 Richard M. Stallman <rms@gnu.org>
8087
8088 * alloc.c (Fmake_string): Doc fix.
8089
8090 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
8091 and the alist pairs too.
8092
8093 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
8094
8095 * emacs.c (main): Update copyright year.
8096
8097 * fileio.c (Fread_file_name): Expand DIR if not absolute.
8098
8099 * insdel.c (del_range_2, replace_range): Don't write an anchor
8100 if the gap is empty.
8101
8102 * xdisp.c (try_scrolling): If scroll-up-aggressively or
8103 scroll-down-aggressively is small but positive, put point
8104 near the screen edge.
8105
8106 2004-05-22 Juanma Barranquero <lektu@terra.es>
8107
8108 * keymap.c (Fdefine_key): Doc fix.
8109
8110 2004-05-22 Kim F. Storm <storm@cua.dk>
8111
8112 * alloc.c (struct backtrace): Add debug_on_exit member.
8113 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
8114 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
8115 the removed cons cells.
8116 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
8117 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
8118 any cons cells pointing to unallocated stings.
8119 Do not lisp_free any marker blocks, as there may still be pointers
8120 to them from buffer undo lists at this stage of GC.
8121
8122 * keyboard.c (struct backtrace): Add debug_on_exit member.
8123 (Fcommand_execute): Clear it.
8124
8125 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
8126
8127 * intervals.c (lookup_char_property): Do not prematurely return nil.
8128
8129 2004-05-19 Jim Blandy <jimb@redhat.com>
8130
8131 Add support for new '\_<' and '\_>' regexp operators, matching the
8132 beginning and end of symbols.
8133
8134 * regex.c (enum syntaxcode): Add Ssymbol.
8135 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
8136 (re_opcode_t): New opcodes `symbeg' and `symend'.
8137 (print_partial_compiled_pattern): Print the new opcodes properly.
8138 (regex_compile): Parse the new operators.
8139 (analyse_first): Skip sym(beg|end) (they match only the empty string).
8140 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
8141 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
8142 (re_match_2_internal): Match symbeg and symend.
8143
8144 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
8145
8146 2004-05-19 Kim F. Storm <storm@cua.dk>
8147
8148 * .gdbinit (xsymbol): Fix last change.
8149
8150 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
8151
8152 * .gdbinit (xprintstr): New fun.
8153 (xstring, xprintsym): Use it.
8154
8155 * w32proc.c (create_child): Use INTMASK.
8156
8157 * alloc.c (Fgarbage_collect): Do all the marking before flushing
8158 unmarked elements of the undo list.
8159
8160 2004-05-18 David Ponce <david@dponce.com>
8161
8162 * print.c (print): Reset print_depth before to call print_object.
8163
8164 2004-05-18 Jason Rumney <jasonr@gnu.org>
8165
8166 * w32console.c: Prefix RIF functions with w32con_ to avoid
8167 namespace clash with functions in term.c and w32term.c.
8168
8169 * w32menu.c (add_menu_item, w32_menu_display_help)
8170 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
8171
8172 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
8173
8174 2004-05-18 Eli Zaretskii <eliz@gnu.org>
8175
8176 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
8177
8178 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
8179 with make_number.
8180 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
8181 with XINT.
8182
8183 2004-05-18 Kim F. Storm <storm@cua.dk>
8184
8185 * blockinput.h (INPUT_BLOCKED_P): New macros.
8186
8187 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
8188 (Ftop_level): Unblock input if blocked.
8189
8190 * buffer.h (GET_OVERLAYS_AT): New macro.
8191 * msdos.c (IT_note_mouse_highlight): Use it.
8192 * textprop.c (get_char_property_and_overlay): Use it.
8193 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
8194 * xfaces.c (face_at_buffer_position): Use it.
8195
8196 * print.c (print_object): Increase buf size.
8197
8198 2004-05-17 Jason Rumney <jasonr@gnu.org>
8199
8200 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
8201 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
8202 Lisp_Object using i member.
8203 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
8204 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
8205 consistently.
8206
8207 * w32proc.c (create_child): Use make_number instead of masking pid.
8208
8209 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
8210 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
8211 Use EQ to compare Lisp_Objects.
8212 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
8213
8214 * w32term.c (w32_num_mouse_buttons): Rename from
8215 Vw32_num_mouse_buttons and make it an int.
8216
8217 * w32.c (init_environment): Use it.
8218
8219 * w32fns.c (w32_wnd_proc): Likewise.
8220
8221 * w32proc.c (w32_pipe_read_delay): Rename from
8222 Vw32_pipe_read_delay and make it an int.
8223
8224 * w32.c (_sys_read_ahead): Use it.
8225
8226 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
8227
8228 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
8229
8230 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
8231 (key_event): Don't mix Lisp_Object and int.
8232
8233 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
8234
8235 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
8236 modifiers in language change event.
8237
8238 2004-05-17 Kim F. Storm <storm@cua.dk>
8239
8240 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
8241 Such objects may be freed markers which still exist on an undo list.
8242
8243 2004-05-16 Juanma Barranquero <lektu@terra.es>
8244
8245 * data.c (Fset_default): Make argument names match their use in
8246 docstring.
8247
8248 2004-05-15 Andreas Schwab <schwab@suse.de>
8249
8250 * emacs.c (gdb_array_mark_flag): Define.
8251 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
8252
8253 2004-05-15 Eli Zaretskii <eliz@gnu.org>
8254
8255 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
8256 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
8257 defined for the MS-DOS build.
8258
8259 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
8260
8261 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
8262
8263 2004-05-14 Kenichi Handa <handa@m17n.org>
8264
8265 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
8266
8267 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8268
8269 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
8270 section to frame.c section.
8271 (Fxw_display_color_p, Fx_file_dialog): Declare if
8272 HAVE_WINDOW_SYSTEM defined.
8273
8274 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
8275
8276 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
8277
8278 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
8279 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
8280 (XTread_socket): Fix int/Lisp_Object mixup.
8281 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
8282
8283 * macterm.h (struct frame, struct face, struct image)
8284 (display_x_get_resource, Fx_display_color_p)
8285 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
8286 Add prototypes.
8287
8288 2004-05-14 Kim F. Storm <storm@cua.dk>
8289
8290 * process.c (wait_reading_process_input): Make reentrant.
8291 Make Available and Connecting non-static. Save and restore value
8292 of waiting_for_user_input_p.
8293
8294 2004-05-13 Kim F. Storm <storm@cua.dk>
8295
8296 * keyboard.c (mark_kboards): Don't mark x and y members
8297 that are overloaded in selection request events.
8298
8299 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8300
8301 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
8302
8303 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
8304
8305 * window.c (Fdisplay_buffer, Fsplit_window)
8306 (split-height-threshold): Doc fix.
8307
8308 2004-05-13 Juanma Barranquero <lektu@terra.es>
8309
8310 * xfaces.c (Ftty_supports_face_attributes_p)
8311 (Finternal_copy_lisp_face): Fix typo in docstring.
8312 (Finternal_get_lisp_face_attribute): Fix docstring.
8313
8314 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8315
8316 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
8317
8318 2004-05-11 Steven Tamm <steventamm@mac.com>
8319
8320 * macfns.c (Fx_create_frame): Default to using tool-bar by
8321 setting tool-bar-lines to 1 in default-frame-alist.
8322
8323 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8324
8325 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
8326 (xpm_get_color_table_v, xpm_make_color_table_h)
8327 (xpm_put_color_table_h, xpm_get_color_table_h)
8328 (xpm_str_to_color_key, xpm_load_image, xpm_load)
8329 (syms_of_image): Support XPM on Carbon Emacs. Does not
8330 depend on libXpm, but only supports XPM version 3 without extensions.
8331
8332 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8333
8334 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
8335 instead of FRAME_X_P
8336
8337 2004-05-11 Kim F. Storm <storm@cua.dk>
8338
8339 * process.c (read_process_output): Grow decoding_buf when needed;
8340 this could cause a crash in allocate_string and compact_small_strings.
8341
8342 2004-04-29 Jim Blandy <jimb@redhat.com>
8343
8344 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
8345 against proper opcode.
8346
8347 2004-05-10 Juanma Barranquero <lektu@terra.es>
8348
8349 * process.c (Fstart_process): Fix docstring.
8350
8351 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
8352 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
8353 (Fsplit_char, Fchar_charset): Make argument names match their use
8354 in docstring.
8355
8356 2004-05-10 Richard M. Stallman <rms@gnu.org>
8357
8358 * print.c (print_preprocess): Use being_printed, loop_count and
8359 halftail to detect overdeep nesting and cyclic cdr chains.
8360
8361 2004-05-10 Andreas Schwab <schwab@suse.de>
8362
8363 * lisp.h (Fmake_symbolic_link): Declare.
8364
8365 * fileio.c (Frename_file): Remove extra argument in call to
8366 Fmake_symbolic_link.
8367
8368 2004-05-10 Kim F. Storm <storm@cua.dk>
8369
8370 * xdisp.c (calc_line_height_property): Use string position when
8371 object is a string.
8372
8373 2004-05-10 Kenichi Handa <handa@m17n.org>
8374
8375 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
8376 inhibit-modification-hooks to t temporarily before calling
8377 Ferase_buffer.
8378
8379 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
8380 inhibit-modification-hooks to t temporarily before calling
8381 Ferase_buffer.
8382
8383 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
8384 inhibit-modification-hooks to t temporarily before calling
8385 Ferase_buffer.
8386
8387 * fns.c (count_combining): Delete it.
8388 (concat): Don't check combining bytes.
8389
8390 2004-05-09 Jason Rumney <jasonr@gnu.org>
8391
8392 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
8393 (globals_of_w32fns): Set it.
8394
8395 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
8396
8397 * data.c (Fquo): Simplify.
8398
8399 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
8400
8401 * data.c (Fquo): If any argument is float, do the computation in
8402 floating point.
8403
8404 2004-05-08 Juanma Barranquero <lektu@terra.es>
8405
8406 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8407 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8408 Fix spelling of Emacs on docstring.
8409 (Fset_process_coding_system, Fprocess_coding_system)
8410 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8411 Make argument names match their use in docstring.
8412 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8413 Fix docstring.
8414
8415 * editfns.c (Finsert_buffer_substring): Make argument names match their
8416 use in docstring.
8417
8418 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8419
8420 2004-05-07 Steven Tamm <steventamm@mac.com>
8421
8422 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8423 around call to ReceiveEvent to avoid certain crashes.
8424
8425 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8426
8427 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8428 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8429 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8430 Save/restore the current graphics port and device handle when
8431 drawing into an offscreen graphics world.
8432
8433 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8434 (gif_load): Likewise.
8435
8436 2004-05-07 Juanma Barranquero <lektu@terra.es>
8437
8438 * window.c (Fset_window_buffer): Fix docstring.
8439
8440 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8441
8442 * emacs.c (main) [VMS]: Fix var ref.
8443
8444 2004-05-06 Romain Francoise <romain@orebokech.com>
8445
8446 * data.c (Fsetq_default): Fix docstring.
8447
8448 2004-05-06 Jason Rumney <jasonr@gnu.org>
8449
8450 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8451 to avoid name clash.
8452
8453 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8454
8455 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8456 (Frename_file): Handle renaming of symlinks across file systems.
8457 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8458
8459 2004-05-04 Kim F. Storm <storm@cua.dk>
8460
8461 * xdisp.c (Qtotal): New var.
8462 (syms_of_xdisp): Intern and staticpro it.
8463 (calc_line_height_property): New arg total. Set it if
8464 line-spacing property has format (total . VALUE).
8465 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8466 Handle total line-spacing property.
8467
8468 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8469
8470 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
8471 "under" scroll bar when size/position changes.
8472
8473 2004-05-03 Jason Rumney <jasonr@gnu.org>
8474
8475 * makefile.nt: Remove.
8476
8477 2004-05-02 Eli Zaretskii <eliz@gnu.org>
8478
8479 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
8480 Avoid compiler warnings.
8481
8482 * Makefile.in (region-cache.o): Depend on config.h.
8483
8484 2004-05-02 Romain Francoise <romain@orebokech.com>
8485
8486 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
8487 with continuation lines, too.
8488
8489 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
8490
8491 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
8492
8493 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8494
8495 * xdisp.c (calc_line_height_property): YAILOM (yet another
8496 int/Lisp_Object mixup).
8497
8498 2004-05-01 Eli Zaretskii <eliz@gnu.org>
8499
8500 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
8501 undo bad effect of pack(4) in some versions of system headers.
8502
8503 2004-05-01 Jason Rumney <jasonr@gnu.org>
8504
8505 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
8506
8507 2004-04-30 Kim F. Storm <storm@cua.dk>
8508
8509 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
8510 (syms_of_buffer) <cursor-type>: Doc fix.
8511
8512 * dispextern.h (struct it): Remove member use_default_face.
8513 Add members override_ascent, override_descent, override_boff.
8514
8515 * xdisp.c (init_iterator): Handle line-spacing float value.
8516 Initialize override_ascent member.
8517 (append_space_for_newline): Reset override_ascent.
8518 Remove use_default_face.
8519 (calc_line_height_property): New function to calculate value of
8520 line-height and line-spacing properties. Look at overlays, too.
8521 Set override_ascent, override_descent, override_boff members when
8522 using another face than the current face. Float values are now
8523 relative to the frame default font, by default; accept a cons
8524 of ratio and face name to specify value relative to a specific face.
8525 (x_produce_glyphs): Use calc_line_height_property.
8526 Use override_ascent etc. when set to handle different face heights.
8527 A negative line-spacing property value is interpreted as a total
8528 line height, rather than inter-line spacing.
8529 (note_mouse_highlight): Allocate room for 40 overlays initially.
8530
8531 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8532
8533 * data.c (Fsubr_name): New fun.
8534 (syms_of_data): Defsubr it.
8535
8536 2004-04-29 Kim F. Storm <storm@cua.dk>
8537
8538 * xdisp.c (null_glyph_slice): New var.
8539 (append_glyph, append_composite_glyph, append_stretch_glyph):
8540 Use it to initialize glyph slice.
8541
8542 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8543
8544 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
8545 (on_hot_spot_p): Make sure we always return a value.
8546 (Flookup_image_map): Remove unused var ix and iy.
8547 (note_mode_line_or_margin_highlight): Remove unused var `image'.
8548
8549 2004-04-27 Eli Zaretskii <eliz@gnu.org>
8550
8551 * msdos.c (init_environment): If one of the TMP... environment
8552 variables is set to a drive letter without a trailing slash,
8553 append a slash.
8554
8555 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
8556
8557 * editfns.c (lisp_time_argument): Provide externally.
8558
8559 * fileio.c (Fset_file_times): New function.
8560 (syms_of_fileio): Intern and staticpro it.
8561
8562 2004-04-27 Kim F. Storm <storm@cua.dk>
8563
8564 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
8565 header line strings.
8566
8567 * dispextern.h (struct it): New member use_default_face.
8568
8569 * xdisp.c (Qline_height): New variable.
8570 (syms_of_xdisp): Intern and staticpro it.
8571 (append_space_for_newline): Partially undo 2004-04-25 change;
8572 add default_face_p arg, and restore callers.
8573 Clear it->use_default_face after use.
8574 (x_produce_glyphs): Set default font for ascii char if
8575 it->use_default_font is set. Change line-spacing property to set
8576 just extra line spacing. Handle new line-height property.
8577
8578 2004-04-26 Andreas Schwab <schwab@suse.de>
8579
8580 * print.c (print_object): Print non-ascii characters in bool
8581 vector representation as octal escapes.
8582
8583 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
8584 * print.c (print_object): Use it instead of BITS_PER_CHAR for
8585 bool vectors.
8586 * lread.c (read1): Likewise.
8587 * alloc.c (Fmake_bool_vector): Likewise.
8588 * data.c (Faref, Faset): Likewise.
8589 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
8590 (mapcar1): Likewise.
8591
8592 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8593
8594 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
8595
8596 2004-04-26 Miles Bader <miles@gnu.org>
8597
8598 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
8599
8600 2004-04-26 Juanma Barranquero <lektu@terra.es>
8601
8602 * buffer.c (Fpop_to_buffer): Fix docstring.
8603
8604 2004-04-26 Steven Tamm <steventamm@mac.com>
8605
8606 * lread.c (init_lread): Don't display missing lisp directory
8607 warnings with Carbon Emacs because self-contained bundled Emacs
8608 may be built without correct installation path.
8609
8610 2004-04-25 Kim F. Storm <storm@cua.dk>
8611
8612 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8613
8614 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8615
8616 * xdisp.c (append_space_for_newline): Rename from append_space.
8617 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
8618 (x_produce_glyphs): Handle line-spacing property on newline char.
8619 If value is t, adjust ascent and descent to fit current row height.
8620 If value is an integer or float, set extra_line_spacing to integer
8621 value, or to float value x current line height.
8622
8623 2004-04-23 Kenichi Handa <handa@m17n.org>
8624
8625 * fontset.c (Finternal_char_font): If POSITION is nil, return
8626 font for displaying CH with the default face.
8627
8628 2004-04-23 Juanma Barranquero <lektu@terra.es>
8629
8630 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
8631
8632 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8633
8634 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
8635 Don't make assumptions about the relative place of i and val.
8636 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
8637
8638 2004-04-21 Kim F. Storm <storm@cua.dk>
8639
8640 * dispextern.h (struct glyph_slice): New struct.
8641 (struct glyph): New member slice.
8642 (GLYPH_SLICE_EQUAL_P): New macro.
8643 (GLYPH_EQUAL_P): Use it.
8644 (struct glyph_string): New member slice.
8645 (struct it_slice): New struct.
8646 (struct it): New member slice, add member to stack too.
8647 New member constrain_row_ascent_descent_p.
8648 (image_ascent): Add prototype.
8649
8650 * dispnew.c (buffer_posn_from_coords): Return full image width
8651 and height even for image slices (posn is relative to full image).
8652 (marginal_area_string): Adjust x0,y0 for image slice.
8653
8654 * image.c (image_ascent): Add slice arg; calculate ascent for
8655 image slice (or full image).
8656
8657 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
8658 (syms_of_keyboard): Defsubr them.
8659
8660 * lisp.h (pos_visible_p): Fix prototype.
8661
8662 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8663 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8664 (x_draw_image_foreground, x_draw_image_relief)
8665 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8666 Draw sliced images.
8667
8668 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
8669 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8670 (x_draw_image_foreground, x_draw_image_relief)
8671 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
8672 Draw sliced images.
8673
8674 * w32term.h (image_ascent): Remove prototype.
8675
8676 * window.c (Fpos_visible_in_window_p): Return pixel position if
8677 PARTIALLY arg is non-nil. Simplify. Doc fix.
8678 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
8679 to return/set vscroll in pixels.
8680
8681 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
8682
8683 * xdisp.c (Qslice): New variable.
8684 (syms_of_xdisp): Intern and staticpro it.
8685 (pos_visible_p): Return pixel position in new x and y args.
8686 (init_iterator): Reset it->slice info.
8687 (handle_display_prop): Parse (slice ...) property.
8688 (push_it, pop_it): Save/restore slice info.
8689 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
8690 force repositioning of tall row if window is vscrolled, as that
8691 would reset vscroll.
8692 (append_space): Set it->constrain_row_ascent_descent_p to avoid
8693 increasing row height if row is non-empty.
8694 (fill_image_glyph_string): Copy slice info.
8695 (take_vertical_position_into_account): Simplify.
8696 (produce_image_glyph): Handle iterator slice info, setup glyph
8697 slice info. Do not force minimum line height.
8698 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
8699 do not increase height (ascent/descent) of non-empty row when
8700 adding normal character glyph; instead reduce glyph ascent/descent
8701 appropriately; if row is higher than current glyph, adjust glyph
8702 descent/ascent to reposition glyph within the existing row.
8703 Likewise, when char is newline, only set ascent/descent if row is
8704 currently empty.
8705 (note_mouse_highlight): Handle hotspots with sliced image.
8706
8707 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8708 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8709 (x_draw_image_foreground, x_draw_image_relief)
8710 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8711 Draw sliced images.
8712
8713 * xterm.h (image_ascent): Remove prototype.
8714
8715 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
8716
8717 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
8718
8719 2004-04-20 John Paul Wallington <jpw@gnu.org>
8720
8721 * fns.c (Fassoc, Feql): Fix indentation.
8722
8723 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
8724
8725 2004-04-19 John Paul Wallington <jpw@gnu.org>
8726
8727 * fns.c (Feql): New function.
8728 (syms_of_fns): Defsubr it.
8729
8730 2004-04-18 Jason Rumney <jasonr@gnu.org>
8731
8732 * w32select.c (Fw32_set_clipboard_data): Get sequence number
8733 after closing the clipboard.
8734
8735 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
8736
8737 * buffer.c (Fbuffer_base_buffer): Doc fix.
8738
8739 2004-04-17 Kim F. Storm <storm@cua.dk>
8740
8741 * keymap.c (Fkey_description): Add optional PREFIX arg.
8742 Combine prefix with KEYS to make up the full key sequence to describe.
8743 Correlate meta_prefix_char and following (simple) key to describe
8744 as meta modifier. All callers changed.
8745 (describe_map): Rename arg `keys' to `prefix'. Remove local
8746 `elt_prefix' var. Use Fkey_description with prefix instead of
8747 elt_prefix combined with Fsingle_key_description.
8748 (describe_vector): Declare static. Replace arg `elt_prefix' with
8749 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
8750 if !KEYMAP_P. Use Fkey_description with prefix instead of
8751 Fsingle_key_description.
8752
8753 * keymap.h (Fkey_description): Fix prototype.
8754 (describe_vector): Remove prototype.
8755
8756 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
8757
8758 * image.c (PNG_BG_COLOR_SHIFT): Remove.
8759 (png_load): Fix calculation of transparent background color on X
8760 and W32 platforms.
8761
8762 2004-04-16 Juanma Barranquero <lektu@terra.es>
8763
8764 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
8765 not too large before computing how much to scroll.
8766
8767 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
8768
8769 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
8770
8771 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
8772
8773 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
8774 Add hyperlink to Elisp manual to the docstring.
8775
8776 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
8777
8778 * callint.c (fix_command): Use XDCR.
8779
8780 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
8781
8782 * window.c (Fget_lru_window): Doc fix.
8783
8784 2004-04-14 Kim F. Storm <storm@cua.dk>
8785
8786 * editfns.c (Fformat): Fix allocation size of precision array.
8787
8788 * dispnew.c (update_window): Only set changed_p if
8789 scrolling_window actually did scroll.
8790 (scrolling_window): Only return 1 if we actually did scroll.
8791
8792 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
8793 height to glyph height when cursor row is not fully visible.
8794 (make_cursor_line_fully_visible): Add FORCE_P arg to return
8795 failure in case row is higher than window. Callers changed.
8796 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
8797 Try to scroll partially visible, higher-than-window cursor row.
8798 (redisplay_window): Always try to scroll partially visible,
8799 higher-than-window cursor row - both initially and again with
8800 centering_position = 0.
8801 Clear desired matrix before retrying with centering_position = 0.
8802
8803 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
8804
8805 * syntax.c (scan_lists): Simplify backward string scan.
8806 Fix off-by-one boundary check for string and comment fences.
8807
8808 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
8809
8810 * sheap.c, unexcw.c: New files.
8811
8812 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
8813
8814 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
8815 base buffer has been killed. Correct the error message if the
8816 base buffer does not exist.
8817
8818 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
8819
8820 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
8821 Cygwin itself. Add support for Xaw3d scrollbars.
8822
8823 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
8824
8825 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
8826
8827 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
8828 before Cygwin unexec.
8829
8830 * Makefile.in: Link changes for Cygwin unexec() support.
8831
8832 2004-04-12 Andreas Schwab <schwab@suse.de>
8833
8834 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
8835
8836 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
8837
8838 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
8839 IGNORE argument equals NAME. Doc fix.
8840
8841 2004-04-11 Masatake YAMATO <jet@gyve.org>
8842
8843 * buffer.c (fix_start_end_in_overlays): Make overlays
8844 empty if they are backwards.
8845
8846 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8847
8848 * xfaces.c (face_color_supported_p): Fix compilation without X11.
8849
8850 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
8851
8852 * doc.c (Fsnarf_documentation): Ignore new file name entries.
8853
8854 2004-04-06 Kim F. Storm <storm@cua.dk>
8855
8856 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8857 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
8858
8859 * w32term.c (w32_read_socket): Set mouse_face_hidden after
8860 clearing highlight.
8861
8862 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8863
8864 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
8865 clearing highlight.
8866
8867 * indent.c (vmotion): Do not reserve one column for continuation
8868 marks on window frames.
8869
8870 2004-04-04 Eli Zaretskii <eliz@gnu.org>
8871
8872 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
8873 from GCC.
8874
8875 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
8876
8877 * .gdbinit-union: Remove.
8878
8879 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
8880 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
8881 ($nonvalbits): Remove.
8882 ($valmask): Set it by calling xreload to avoid redundancy.
8883
8884 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
8885 (gdb_emacs_intbits): Remove.
8886
8887 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8888
8889 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
8890
8891 2004-03-30 Kenichi Handa <handa@m17n.org>
8892
8893 * editfns.c (Fformat): Fix initialization of the array info.
8894
8895 2004-03-30 Kim F. Storm <storm@cua.dk>
8896
8897 * xterm.c (x_mouse_click_focus_ignore_position): New var.
8898 (syms_of_xterm): DEFVAR_BOOL it.
8899 (ignore_next_mouse_click_timeout): New var.
8900 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
8901 Use it to filter mouse clicks following focus event.
8902
8903 2004-03-29 David Ponce <david@dponce.com>
8904
8905 * callint.c (Fcall_interactively): Fix last change.
8906
8907 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
8908
8909 * eval.c (Fcommandp): Simplify.
8910
8911 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
8912 Extend to handle all kinds of functions.
8913
8914 * lisp.h (Finteractive_form): Declare.
8915
8916 * callint.c (Fcall_interactively): Use it.
8917
8918 2004-03-26 Kim F. Storm <storm@cua.dk>
8919
8920 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
8921 to catch errors in calc_pixel_width_or_height during redisplay.
8922
8923 2004-03-26 Masatake YAMATO <jet@gyve.org>
8924
8925 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
8926
8927 * lisp.h (fix_start_end_in_overlays): Likewise.
8928
8929 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
8930
8931 * editfns.c (Ftranspose_regions): Likewise.
8932
8933 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8934
8935 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
8936
8937 2004-03-19 Richard M. Stallman <rms@gnu.org>
8938
8939 * s/sol2-6.h: Delete previous change.
8940
8941 2004-03-19 Kim F. Storm <storm@cua.dk>
8942
8943 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
8944 to_charpos corresponds to newline in right fringe. Use local
8945 BUFFER_POS_REACHED_P macro.
8946
8947 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8948
8949 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
8950 to compile on non-window system.
8951
8952 2004-03-19 Kim F. Storm <storm@cua.dk>
8953
8954 * dispextern.h (calc_pixel_width_or_height): Add prototype.
8955
8956 * image.c (Qcenter): Move to xdisp.c.
8957
8958 * xdisp.c (Qcenter): Declare here.
8959 (syms_of_xdisp): Intern and staticpro it.
8960 (handle_single_display_prop): Allow space display property on all
8961 platforms.
8962 (display_mode_line): Set mode_line_p before displaying line.
8963 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
8964 handling. Remove complex cases for fringes and scroll-bars.
8965 Add left, right, and center alignment positions. Add text (area)
8966 width/height. Return width or height for image specs.
8967 (produce_stretch_glyph): Improve handling of :align-to. Is now
8968 relative to left of text area by default, but other base offsets
8969 can be specified -- also for text lines.
8970
8971 * term.c (produce_glyphs): Handle IT_STRETCH.
8972 (produce_stretch_glyph): New function to handle space width and
8973 align-to display properties on non-window systems.
8974
8975 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
8976
8977 * fileio.c (Fread_file_name): Set completion-ignore-case for
8978 case-insensitive systems.
8979
8980 2004-03-14 Masatake YAMATO <jet@gyve.org>
8981
8982 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
8983 when keymap and cursor are setup.
8984
8985 2004-03-14 Steven Tamm <steventamm@mac.com>
8986
8987 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
8988
8989 2004-03-14 Kim F. Storm <storm@cua.dk>
8990
8991 * dispextern.h (x_find_image_file): Add prototype.
8992
8993 * image.c (x_find_image_file): Make extern.
8994
8995 * xfns.c (x_find_image_file): Remove prototype.
8996
8997 2004-03-13 Eli Zaretskii <eliz@gnu.org>
8998
8999 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
9000
9001 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
9002
9003 2004-03-12 Richard M. Stallman <rms@gnu.org>
9004
9005 * fns.c (internal_equal): New arg PROPS controls comparing
9006 text properties. All callers changed.
9007 (Fequal_including_properties): New function.
9008 (syms_of_fns): defsubr it.
9009
9010 2004-03-12 Kim F. Storm <storm@cua.dk>
9011
9012 Fix image support on MAC. From YAMAMOTO Mitsuharu.
9013
9014 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
9015 (image_background, image_background_transparent): Fix prototypes.
9016
9017 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
9018
9019 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
9020 (x_query_font, x_find_ccl_program, x_set_window_size)
9021 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9022 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9023 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
9024
9025 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
9026 (x_query_font, x_find_ccl_program, x_set_window_size)
9027 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9028 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9029 (mac_draw_line_to_pixmap): Add prototypes.
9030
9031 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9032
9033 * macterm.c (XTread_socket): Fix mouse click on tool bar.
9034
9035 2004-03-11 Kim F. Storm <storm@cua.dk>
9036
9037 * dispextern.h: Move image related prototypes from xfns.c section
9038 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
9039 HAVE_X_WINDOWS.
9040
9041 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
9042 Move gtkutil.o to new GTK_OBJ list.
9043 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
9044 (GTK_OBJ) [USE_GTK]: New declaration.
9045 (obj): Add $(GTK_OBJ) to list.
9046
9047 2004-03-11 Steven Tamm <steventamm@mac.com>
9048
9049 * image.c [MAC_OSX]: Include sys/stat.h.
9050
9051 * macfns.c (syms_of_macfns): Remove definitions of things now
9052 defined in image.c.
9053
9054 2004-03-11 Kim F. Storm <storm@cua.dk>
9055
9056 The following changes consolidates the identical/similar image
9057 support code previously found in xfns.c, w32fns.c, and macfns.c
9058 into a new file image.c.
9059
9060 * makefile.w32-in (OBJ1): Add image.o.
9061 ($(BLD)/image.$(O)): Add dependencies.
9062
9063 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
9064 (image.o): Add dependencies.
9065
9066 * image.c: New file with consolidated image support code.
9067 (COLOR_TABLE_SUPPORT): New define to control whether
9068 color table support is available (X only).
9069 (Bitmap_Record): Common name for x_bitmap_record,
9070 w32_bitmap_record, and mac_bitmap_record.
9071 (XImagePtr): Common name for pointer to XImage or equivalent.
9072 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
9073 to XImagePtr on X+MAC, and to HDC on W32.
9074 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
9075 (NO_PIXMAP): Common name for "None" or equivalent.
9076 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
9077 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
9078 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
9079 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
9080 Define with suitable equivalents on W32 and MAC for code sharing.
9081 (XDrawLine): Define on MAC for code sharing.
9082 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
9083 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
9084 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9085 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9086 (x_reference_bitmap, x_create_bitmap_from_data)
9087 (x_create_bitmap_from_file, x_destroy_bitmap)
9088 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9089 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9090 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9091 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9092 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9093 (define_image_type, lookup_image_type, valid_image_p)
9094 (image_error, enum image_value_type, struct image_keyword)
9095 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9096 (make_image, free_image, prepare_image_for_display, image_ascent)
9097 (four_corners_best, image_background, image_background_transparent)
9098 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9099 (make_image_cache, free_image_cache, clear_image_cache)
9100 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9101 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9102 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9103 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9104 (init_image_func_pointer, image_load_quartz2d)
9105 (struct ct_color, init_color_table, free_color_table)
9106 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9107 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9108 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9109 (x_disable_image, x_build_heuristic_mask)
9110 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9111 (TIFF support, GIF support, Ghostscript support): Consolidate image
9112 code from xfns.c, w32fns.c, and macfns.c.
9113 (syms_of_image): Consolidate image related symbol setup here.
9114 (init_image): Consolidate image related initializations here.
9115
9116 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
9117 and init_image. Remove call to init_xfns.
9118
9119 * macterm.h (struct mac_bitmap_record): Add file member.
9120 Not currently used, but simplifies code sharing.
9121
9122 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9123 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9124 (x_reference_bitmap, x_create_bitmap_from_data)
9125 (x_create_bitmap_from_file, x_destroy_bitmap)
9126 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9127 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9128 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9129 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9130 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9131 (define_image_type, lookup_image_type, valid_image_p)
9132 (image_error, enum image_value_type, struct image_keyword)
9133 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9134 (make_image, free_image, prepare_image_for_display, image_ascent)
9135 (four_corners_best, image_background, image_background_transparent)
9136 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9137 (make_image_cache, free_image_cache, clear_image_cache)
9138 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9139 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9140 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9141 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9142 (init_image_func_pointer, image_load_quartz2d)
9143 (struct ct_color, init_color_table, free_color_table)
9144 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9145 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9146 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9147 (x_disable_image, x_build_heuristic_mask)
9148 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9149 (TIFF support, GIF support, Ghostscript support): Merge with image
9150 code from xfns.c and macfns.c into image.c.
9151 (syms_of_xfns): Move image related symbols to image.c.
9152 (init_external_image_libraries, init_xfns): Remove; initialization
9153 moved to init_image in image.c.
9154
9155 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9156 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9157 (x_reference_bitmap, x_create_bitmap_from_data)
9158 (x_create_bitmap_from_file, x_destroy_bitmap)
9159 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9160 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9161 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9162 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9163 (define_image_type, lookup_image_type, valid_image_p)
9164 (image_error, enum image_value_type, struct image_keyword)
9165 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9166 (make_image, free_image, prepare_image_for_display, image_ascent)
9167 (four_corners_best, image_background, image_background_transparent)
9168 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9169 (make_image_cache, free_image_cache, clear_image_cache)
9170 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9171 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9172 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9173 (struct ct_color, init_color_table, free_color_table)
9174 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9175 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9176 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9177 (x_disable_image, x_build_heuristic_mask)
9178 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9179 (TIFF support, GIF support, Ghostscript support): Merge with image
9180 code from xfns.c and macfns.c into image.c.
9181 (syms_of_xfns): Move image related symbols to image.c.
9182 (init_external_image_libraries, init_xfns): Remove; initialization
9183 moved to init_image in image.c.
9184
9185 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9186 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9187 (x_reference_bitmap, x_create_bitmap_from_data)
9188 (x_create_bitmap_from_file, x_destroy_bitmap)
9189 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9190 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9191 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9192 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9193 (define_image_type, lookup_image_type, valid_image_p)
9194 (image_error, enum image_value_type, struct image_keyword)
9195 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9196 (make_image, free_image, prepare_image_for_display, image_ascent)
9197 (four_corners_best, image_background, image_background_transparent)
9198 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9199 (make_image_cache, free_image_cache, clear_image_cache)
9200 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9201 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9202 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9203 (struct ct_color, init_color_table, free_color_table)
9204 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9205 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9206 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9207 (x_disable_image, x_build_heuristic_mask)
9208 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9209 (TIFF support, GIF support, Ghostscript support): Merge with
9210 w32fns.c and macfns.c image code into image.c.
9211 (syms_of_xfns): Move image related symbols to image.c.
9212 (init_xfns): Remove; initialization moved to init_image in image.c.
9213
9214 * lisp.h (syms_of_image, init_image): Add protoypes.
9215 (init_xfns): Remove prototype.
9216
9217 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9218 (x_reference_bitmap, x_create_bitmap_from_data)
9219 (x_create_bitmap_from_file, x_destroy_bitmap)
9220 (x_create_bitmap_mask): Move prototypes from dispextern.h.
9221 (gamma_correct) [MAC_OS]: Add prototype.
9222
9223 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9224 (x_reference_bitmap, x_create_bitmap_from_data)
9225 (x_create_bitmap_from_file, x_destroy_bitmap)
9226 (x_create_bitmap_mask): Move prototypes to dispextern.h.
9227
9228 2004-03-09 Kenichi Handa <handa@etlken2>
9229
9230 * coding.c (decode_coding_emacs_mule): Handle insufficent source
9231 correctly.
9232
9233 2004-03-04 Richard M. Stallman <rms@gnu.org>
9234
9235 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
9236
9237 * window.c (Fdisplay_buffer): Doc fix.
9238
9239 * buffer.c (Fpop_to_buffer): Doc fix.
9240
9241 2004-03-03 Kim F. Storm <storm@cua.dk>
9242
9243 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
9244
9245 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
9246
9247 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
9248
9249 2004-03-02 Richard M. Stallman <rms@gnu.org>
9250
9251 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
9252
9253 2004-03-02 Kenichi Handa <handa@m17n.org>
9254
9255 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
9256
9257 2004-03-02 Kim F. Storm <storm@cua.dk>
9258
9259 * window.h (struct window): New member overlay_arrow_bitmap.
9260
9261 * window.c (make_window): Initialize overlay_arrow_bitmap.
9262
9263 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
9264 implement and integrate multiple overlay arrows with redisplay.
9265 (syms_of_xdisp): DEFVAR_LISP and initialize it.
9266 (last_arrow_position, last_arrow_string): Replace by properties.
9267 (Qlast_arrow_position, Qlast_arrow_string)
9268 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
9269 (syms_of_xdisp): Intern and staticpro them.
9270 (overlay_arrow_string_or_property, update_overlay_arrows)
9271 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
9272 (overlay_arrow_at_row): New functions for multiple overlay arrows.
9273 (redisplay_internal): Use them instead of directly accessing
9274 Voverlay_arrow_position etc. for multiple overlay arrows.
9275 (mark_window_display_accurate): Use update_overlay_arrows.
9276 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
9277 (try_window_id): Use overlay_arrows_changed_p.
9278 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
9279 (display_line): Use overlay_arrow_at_row to check multiple
9280 overlay arrows, and get relevant overlay-arrow-string and
9281 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
9282 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
9283 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
9284
9285 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
9286 (update_window_fringes): Remove unused code.
9287
9288 2004-03-01 Jason Rumney <jasonr@gnu.org>
9289
9290 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
9291
9292 2004-03-01 Juanma Barranquero <lektu@terra.es>
9293
9294 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
9295
9296 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
9297
9298 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9299
9300 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
9301 how many colors can be displayed.
9302
9303 2004-03-01 Kenichi Handa <handa@m17n.org>
9304
9305 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
9306 correctly.
9307
9308 2004-02-28 Kim F. Storm <storm@cua.dk>
9309
9310 * dispnew.c (update_window): Update header line also if there are
9311 no other changes in window (move code after set_cursor label).
9312
9313 * lisp.h (mark_window_display_accurate): Remove prototype.
9314
9315 * window.c (window_loop, Fforce_window_update): Force mode line
9316 updates by setting prevent_redisplay_optimizations_p and
9317 update_mode_lines.
9318
9319 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9320
9321 * xfns.c (x_window): Fix indentation.
9322
9323 * xterm.c (x_calc_absolute_position): Call x_real_positions
9324 to get WM window sizes and use those to calculate position.
9325 (x_set_offset): Remove code commented out.
9326
9327 2004-02-28 Miles Bader <miles@gnu.org>
9328
9329 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
9330
9331 2004-02-28 Kim F. Storm <storm@cua.dk>
9332
9333 * keyboard.c (kbd_buffer_store_event_hold): New function to store
9334 an event into kbd fifo, but with special handling of quit event;
9335 a quit event is saved for later, and further events are discarded
9336 until the saved quit event has been processed.
9337 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
9338 (gen_help_event): Store help event in kbd fifo.
9339 (NREAD_INPUT_EVENTS): Remove.
9340 (read_avail_input): Adapt to new read_socket_hook interface.
9341 Remove allocation and initialization of local input_event buffer,
9342 as read_socket_hook stores events directly in fifo. Allocate and
9343 initialize local hold_quit event to handle postponed quit event
9344 (and store it if set by kbd_buffer_store_event_hold).
9345
9346 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
9347 (gen_help_event): Fix prototype.
9348
9349 * macterm.c (XTread_socket): Remove bufp_r and
9350 numcharsp args. Add hold_quit arg.
9351 Rework to use just one, local, inev input_event. Store inev
9352 directly in fifo using kbd_buffer_store_event_hold.
9353
9354 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
9355 (read_input_waiting): Adapt to new read_socket_hook interface.
9356 Remove allocation and initialization of local input_event buffer,
9357 as read_socket_hook stores events directly in fifo. Allocate and
9358 initialize local hold_quit event to handle postponed quit event
9359 (and store it if set by kbd_buffer_store_event_hold).
9360
9361 * term.c (read_socket_hook): Fix arg list.
9362
9363 * termhooks.h (read_socket_hook): Fix prototype.
9364
9365 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
9366 numcharsp args. Add hold_quit arg.
9367 Rework to use just one, local, inev input_event. Store inev
9368 directly in fifo using kbd_buffer_store_event_hold.
9369
9370 * w32inevt.h (w32_console_mouse_position): Fix prototype.
9371
9372 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
9373 Add hold_quit arg. Rework to use just one, local, inev
9374 input_event. Store inev directly in fifo using
9375 kbd_buffer_store_event_hold. Update count in one place.
9376 Postpone call to gen_help_event until inev is stored; use new
9377 local do_help for this.
9378 Remove local emacs_event in handing of ButtonPress event; just use
9379 inev instead (so no reason to copy it later).
9380
9381 * xsmfns.c (x_session_check_input): Remove numchars arg.
9382
9383 * xterm.c (x_focus_changed, x_detect_focus_change):
9384 Remove numchars arg. Always store event into bufp arg.
9385 Return nothing. Callers changed accordingly.
9386 (glyph_rect): Simplify.
9387 (STORE_KEYSYM_FOR_DEBUG): New macro.
9388 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
9389 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
9390 (current_hold_quit) [USE_GTK]: Add.
9391 (event_handler_gdk): Adapt to new handle_one_xevent.
9392 (handle_one_xevent): Remove bufp_r and numcharsp args.
9393 Add hold_quit arg. Rework to use just one, local, inev
9394 input_event. Store inev directly in fifo using
9395 kbd_buffer_store_event_hold. Update count in one place.
9396 Postpone call to gen_help_event until inev is stored; use new
9397 local do_help for this.
9398 Simplify handling of keysyms (consolidate common code). Fix bug
9399 where count was updated with nchars instead of nbytes.
9400 Remove local emacs_event in handing of ButtonPress event; just use
9401 inev instead (so no reason to copy it later).
9402 Remove `out' label. Rename label `ret' to `done'; add various
9403 `goto done' to clarify code flow in deeply nested blocks.
9404 (x_dispatch_event): Simplify as handle_one_xevent now calls
9405 kbd_buffer_store_event itself.
9406 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9407 arg. Call handle_one_xevent with new arglist. Store event from
9408 x_session_check_input in fifo.
9409 [USE_GTK]: Setup current_hold_quit.
9410 Decrement handling_signal before unblocking input.
9411 (x_initialize) [USE_GTK]: Initialize current_count.
9412
9413 * xterm.h (x_session_check_input): Fix prototype.
9414
9415 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9416
9417 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9418
9419 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9420 macgui.h).
9421
9422 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9423
9424 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9425 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9426 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9427 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9428 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9429 (Bitmap): Remove typedef.
9430 (Pixmap): Change int to GWorldPtr.
9431
9432 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9433
9434 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9435 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9436 New #define to extract 16-bit depth color components from unsigned
9437 long representation.
9438 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9439 colors used for masks.
9440 (struct mac_display_info): Add color_p. Remove n_cbits.
9441
9442 * macfns.c: Include sys/types.h and sys/stat.h.
9443 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9444 Include QuickTime/QuickTime.h.
9445 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9446 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9447 functions defined in macterm.c.
9448 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9449 (ZPixmap): New #define for compatibility with xfns.c.
9450 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9451 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9452 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9453 New functions.
9454 (four_corners_best, x_create_x_image_and_pixmap)
9455 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9456 (x_edge_detection, init_color_table, colors_in_color_table)
9457 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9458 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9459 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9460 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9461 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9462 long mixup.
9463 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9464 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9465 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9466 (x_set_cursor_type, Fxw_color_values, valid_image_p)
9467 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
9468 (x_alloc_image_color, clear_image_cache, lookup_image)
9469 (x_find_image_file, xbm_read_bitmap_file_data)
9470 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
9471 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
9472 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
9473 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
9474 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
9475 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
9476 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
9477 #if 0.
9478 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
9479 #if 0. Free white_relief.gc and black_relief.gc.
9480 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
9481 New functions (from xfns.c).
9482 (Fx_create_frame): Record unwind_create_frame.
9483 (Fxw_display_color_p): Use dpyinfo->color_p.
9484 (Fx_display_grayscale_p, Fx_display_planes): Don't use
9485 dpyinfo->n_cbits.
9486 (Fx_display_color_cells): Use dpyinfo->n_planes;
9487 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
9488 (Qheuristic, cross_disabled_images, emboss_matrix)
9489 (laplace_matrix): New variables (from xfns.c).
9490 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
9491 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
9492 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
9493 (image_background_transparent): New function (from xfns.c).
9494 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9495 (image_load_quicktime): Add declaration.
9496 [MAC_OSX] (image_load_quartz2d): Likewise.
9497 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
9498 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
9499 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
9500 (xbm_load_image_from_file, x_laplace_read_row)
9501 (x_laplace_write_row, pbm_read_file): Remove functions.
9502 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
9503 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
9504 (colors_in_color_table): Sync with xfns.c (although not used).
9505 (lookup_rgb_color): Don't lookup color table. Just do gamma
9506 correction.
9507 (COLOR_INTENSITY): New #define (from xfns.c).
9508 (x_disable_image): New function (from xfns.c).
9509 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9510 (x_build_heuristic_mask): Sync with xfns.c.
9511 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9512 (HAVE_PBM): Remove #ifdef.
9513 (pbm_load): Sync with xfns.c. Set img->width and img->height
9514 before IMAGE_BACKGROUND.
9515 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
9516 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
9517 Don't enclose with #if HAVE_PNG.
9518 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
9519 symbol _CGImageCreateWithPNGDataProvider is defined.
9520 Otherwise use image_load_quicktime.
9521 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
9522 [HAVE_PNG] (png_load): Sync with xfns.c.
9523 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9524 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
9525 HAVE_JPEG.
9526 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
9527 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
9528 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
9529 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
9530 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
9531 (tiff_image_p, tiff_load): Don't enclose declarations with #if
9532 HAVE_TIFF.
9533 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
9534 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
9535 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
9536 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
9537 New functions (from xfns.c).
9538 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
9539 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
9540 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
9541 Don't enclose with #if HAVE_GIF.
9542 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
9543 animated gif. Otherwise use image_load_quicktime.
9544 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
9545 gif_DrawText to avoid conflict with QuickdrawText.h.
9546 [HAVE_GIF] (gif_load): Sync with xfns.c.
9547 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
9548 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
9549 Ghostscript is not supported yet).
9550 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
9551 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
9552 cross_disabled_images (from xfns.c). Remove #if 0 for supported
9553 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9554 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
9555 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9556 HAVE_PNG. Call EnterMovies to support animated gifs.
9557 Call init_image_func_pointer to bind a symbol
9558 _CGImageCreateWithPNGDataProvider if it is defined.
9559
9560 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9561 (x_draw_bar_cursor): Sync declaration with xterm.c.
9562 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
9563 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
9564 graphics).
9565 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
9566 (mac_draw_line_to_pixmap, XCreatePixmap)
9567 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
9568 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
9569 New functions.
9570 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
9571 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9572 Cast bits to char *.
9573 (reflect_byte): New function (from w32fns.c).
9574 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
9575 due to byte alignment.
9576 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
9577 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9578 (XSetForeground): Remove static (now used in macfns.c).
9579 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
9580 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
9581 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
9582 (x_draw_glyph_string_box, x_draw_image_foreground)
9583 (x_draw_image_foreground_1, x_draw_image_glyph_string)
9584 (x_draw_stretch_glyph_string, x_draw_glyph_string)
9585 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
9586 Sync with xterm.c.
9587 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
9588 than the xterm.c version when a strictly horizontal or vertical
9589 line is drawn.
9590 (XTset_terminal_window): Add static.
9591 (x_make_frame_visible): Add UNBLOCK_INPUT.
9592 (x_free_frame_resources): New funcion (from xterm.c).
9593 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
9594 occurs in tool bar area.
9595 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
9596 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
9597 Initialize image cache.
9598 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
9599 Enclose unused functions with #if 0.
9600 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
9601 (decode_mac_font_name): New function to apply code conversions
9602 from a mac font name to an XLFD font name according to its script code.
9603 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
9604 font name to a mac font name according to REGISTRY and ENCODING fields.
9605 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
9606 whose name starts with `.'.
9607 (init_font_name_table): Use decode_mac_font_name. Add both
9608 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
9609 of a font is smJapanese.
9610 (mac_do_list_fonts): New function to list fonts that match a given
9611 pattern.
9612 (x_list_fonts, XLoadQueryFont): Use it.
9613 (XLoadQueryFont): Set rbearing field for each variable width
9614 character to avoid needless redraw.
9615 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
9616
9617 2004-02-26 Kim F. Storm <storm@cua.dk>
9618
9619 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
9620 as read_socket_hook handler on X aborts if buffer is too small
9621 and W32 handler doesn't always check buffer limit.
9622
9623 * xdisp.c (handle_single_display_prop): Handle left-fringe and
9624 right-fringe similar to a display margin image. Specifically,
9625 the characters having the fringe prop are no longer shown, and
9626 we use IT_IMAGE/next_element_from_image with image_id = -1 to
9627 do this. Set fringe bitmap face_id in it->face_id.
9628 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
9629 still realize it->face (i.e. the fringe bitmap face).
9630
9631 2004-02-25 Miles Bader <miles@gnu.org>
9632
9633 * xdisp.c (check_it): Check string/string_pos consistency.
9634 (init_iterator): Initialize string-related fields properly.
9635
9636 2004-02-11 Miles Bader <miles@gnu.org>
9637
9638 * xdisp.c (produce_image_glyph): Force negative descents to zero.
9639
9640 2004-02-10 Miles Bader <miles@gnu.org>
9641
9642 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
9643 BLOCK_INPUT can be nested, so it doesn't make much sense.
9644
9645 2004-02-24 Michael Mauger <mmaug@yahoo.com>
9646
9647 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
9648 (xbm_read_bitmap_data): Use unsigned char for image data.
9649
9650 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
9651
9652 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
9653
9654 2004-02-22 Jason Rumney <jasonr@gnu.org>
9655
9656 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
9657 correctly over other bitmaps.
9658
9659 2004-02-21 Eli Zaretskii <eliz@gnu.org>
9660
9661 * emacs.c (USAGE1): Split into two halves.
9662 (USAGE2): Second half of the old USAGE1.
9663 (USAGE3): Rename from USAGE2.
9664 (USAGE4): Rename from USAGE3.
9665
9666 2004-02-21 Juri Linkov <juri@jurta.org>
9667
9668 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
9669 Fix --multibyte. Move --help, --version to USAGE2. Add alias
9670 --file. Fix -f, -l. Sort options. Untabify.
9671 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
9672
9673 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
9674
9675 * category.c (Fdefine_category, Fcategory_docstring)
9676 (Fget_unused_category, Fset_category_table)
9677 (Fcategory_set_mnemonics): Doc fixes.
9678
9679 2004-02-20 Kim F. Storm <storm@cua.dk>
9680
9681 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
9682 The following changes are relative to the 2004-01-21 revision.
9683 (NREAD_INPUT_EVENTS): Define as max number of input events to read
9684 in one call to read_socket_hook. Value is 8.
9685 (read_avail_input): Separate and rework handling of read_socket_hook
9686 and non-read_socket_hook cases. Use smaller input_event buffer
9687 in read_socket_hook case, and repeat if full buffer is read.
9688 Use new local variable 'discard' to skip input after C-g.
9689 In non-read_socket_hook case, just use a single input_event, and
9690 call kbd_buffer_store_event on the fly for each character.
9691
9692 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9693
9694 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
9695 Remove unused `gu' alternative.
9696
9697 2004-02-19 Andreas Schwab <schwab@suse.de>
9698
9699 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
9700 warning.
9701
9702 2004-02-18 Kim F. Storm <storm@cua.dk>
9703
9704 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
9705 Fix last change.
9706
9707 2004-02-17 Kim F. Storm <storm@cua.dk>
9708
9709 * xdisp.c (fast_find_position): Fix return value of new version;
9710 it was inverted compared to the 21.1 version.
9711 (get_window_cursor_type): Don't look at glyph if NULL.
9712 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
9713
9714 * keyboard.c: Rework previous change; it didn't consider that the
9715 buf array was allocated on the stack.
9716 (prev_read): Remove variable.
9717 (read_avail_input_buf): New static event buffer array.
9718 (in_read_avail_input): New static variable to handle re-entrancy.
9719 (read_avail_input): Change buf to pinter to read_avail_input_buf.
9720 Use in_read_avail_input to handle re-entrance; when re-entered,
9721 fully initialize and use tmp_buf array instead of read_avail_input_buf.
9722 Do not initialize read_avail_input_buf in full here; instead assume it
9723 is always cleared on entry. To ensure that, we clear (just) the
9724 entries that were used before we return.
9725 (init_keyboard): Initialize read_avail_input_buf here.
9726
9727 2004-02-16 Jesper Harder <harder@ifa.au.dk>
9728
9729 * cmds.c (Fend_of_line): Doc fix.
9730
9731 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
9732
9733 * keyboard.c (prev_read): New static variable.
9734 (read_avail_input): Use it to zero out only those slots in buf[]
9735 that were used last time we were called.
9736
9737 2004-02-16 Eli Zaretskii <eliz@gnu.org>
9738
9739 * Makefile.in (obj): Move fringe.o from here...
9740 (XOBJ, MAC_OBJ): ...to here.
9741
9742 2004-02-16 Stephen Eglen <stephen@gnu.org>
9743
9744 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
9745
9746 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
9747
9748 * data.c (Fbyteorder):
9749 * fringe.c (Fdefine_fringe_bitmap):
9750 * xdisp.c (handle_single_display_prop):
9751 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
9752
9753 2004-02-16 Jason Rumney <jasonr@gnu.org>
9754
9755 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
9756
9757 2004-02-15 Steven Tamm <steventamm@mac.com>
9758
9759 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
9760 controlling emulation of a three button mouse with option and
9761 command keys.
9762 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
9763 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
9764
9765 2004-02-15 Kim F. Storm <storm@cua.dk>
9766
9767 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
9768
9769 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
9770 Perform byte-swapping.
9771
9772 2004-02-14 Kim F. Storm <storm@cua.dk>
9773
9774 * dispextern.h (struct draw_fringe_bitmap_params): Change member
9775 bits from char to short to facilitate wider bitmaps.
9776 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
9777 member.
9778
9779 * fringe.c (struct fringe_bitmap): Change member bits from char to
9780 short to facilitate 16 bits wide bitmaps. Modify all standard
9781 bitmaps accordingly.
9782 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
9783 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
9784 (draw_fringe_bitmap): Ditto.
9785 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
9786 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
9787 handle up to 16 bits wide bitmaps.
9788 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
9789 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
9790
9791 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
9792 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
9793 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
9794
9795 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
9796 so it is no longer necessary to expand them here.
9797
9798 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
9799
9800 2004-02-12 Kim F. Storm <storm@cua.dk>
9801
9802 * window.c (Fwindow_fringes): Doc fix.
9803
9804 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9805
9806 * xselect.c (x_get_foreign_selection): Add new optional parameter
9807 time_stamp.
9808 (Fx_get_selection_internal): Ditto, pass time_stamp to
9809 x_get_foreign_selection.
9810
9811 * data.c (Fbyteorder): New function.
9812
9813 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9814
9815 * atimer.c: Move include stdio.h to same place as in other files.
9816
9817 * region-cache.c: Ditto.
9818
9819 * sysdep.c: Ditto.
9820
9821 * xfaces.c: Ditto.
9822
9823 2004-02-09 Sam Steingold <sds@gnu.org>
9824
9825 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
9826
9827 2004-02-09 Kim F. Storm <storm@cua.dk>
9828
9829 * fringe.c: New file. Move original fringe related declarations
9830 and code from dispextern.h and xdisp.c here.
9831 Rework code to support user defined fringe bitmaps, redefining
9832 standard bitmaps, ability to overlay user defined bitmap with
9833 overlay arrow bitmap, and add faces to bitmaps.
9834 (Voverflow_newline_into_fringe): Declare here.
9835 (enum fringe_bitmap_align): New enum.
9836 (..._bits): All bitmaps are now defined without bitswapping; that
9837 is now done in init_fringe_once (if necessary).
9838 (standard_bitmaps): New array with specifications for the
9839 standard fringe bitmaps.
9840 (fringe_faces): New array.
9841 (valid_fringe_bitmap_id_p): New function.
9842 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
9843 (draw_fringe_bitmap): New function which draws fringe bitmap,
9844 possibly overlaying bitmap with cursor in right fringe or the
9845 overlay arrow in the left fringe.
9846 (update_window_fringes): Do not handle overlay arrow here.
9847 Compare and copy fringe bitmap faces.
9848 (init_fringe_bitmap): New function.
9849 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
9850 define and destroy user defined fringe bitmaps.
9851 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
9852 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
9853 (syms_of_fringe): New function. Defsubr new DEFUNs.
9854 DEFVAR_LISP Voverflow_newline_into_fringe.
9855 (init_fringe_once, init_fringe): New functions.
9856 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
9857
9858 * Makefile.in (obj): Add fringe.o.
9859 (fringe.o): New dependencies.
9860
9861 * dispextern.h (FRINGE_ID_BITS): New definition for number of
9862 bits allocated to hold a fringe number. Increase number of bits
9863 from 4 to 8 to allow user defined fringe bitmaps.
9864 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
9865 left_user_fringe_face_id, right_user_fringe_bitmap,
9866 right_user_fringe_face_id.
9867 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
9868 Move to new file fringe.c.
9869 (MAX_FRINGE_BITMAPS): Define here.
9870 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
9871 and overlay_p. Change member which to int.
9872 (struct redisplay_interface): New members define_fringe_bitmap
9873 and destroy_fringe_bitmap.
9874 (valid_fringe_bitmap_id_p): Add prototype.
9875 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
9876
9877 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
9878 arrows.
9879 (update_frame): Do flush_display if force_flush_display_p to
9880 ensure display (specifically fringes) are updated in a timely
9881 manner when resizing the frame by dragging the mouse.
9882 (update_window_line): Update row if overlay arrow changed.
9883 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
9884 or overlay arrow changed.
9885
9886 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
9887 syms_of_fringe, and init_fringe.
9888
9889 * frame.h (struct frame): New member force_flush_display_p.
9890
9891 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
9892 Add prototypes.
9893
9894 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
9895 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
9896 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
9897 Use cursor color for displaying cursor in fringe.
9898 (x_redisplay_interface): Add null handlers for
9899 define_fringe_bitmap and destroy_fringe_bitmap functions.
9900
9901 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
9902 xterm.c to handle overlayed fringe bitmaps and to use cursor color
9903 for displaying cursor in fringe.
9904 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
9905 specific functions to define and destroy fringe bitmaps in fringe_bmp.
9906 (w32_redisplay_interface): Add them to redisplay_interface.
9907 (w32_term_init): Call w32_init_fringe instead of explicitly
9908 defining fringe bitmaps in fringe_bmp array.
9909 (x_delete_display): Call w32_reset_fringes instead of explicitly
9910 destroying fringe bitmaps in fringe_bmp array.
9911
9912 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
9913 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
9914 (continued_bits, continuation_bits, ov_bits, first_line_bits)
9915 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
9916 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
9917 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
9918 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
9919 Move fringe handling vars and code to new file fringe.c.
9920 (handle_display_prop): Handle left-fringe and right-fringe
9921 display properties; store user fringe bitmaps in iterator.
9922 (move_it_in_display_line_to): Handle cursor in fringe at eob.
9923 (clear_garbaged_frames): Set force_flush_display_p if resized.
9924 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
9925 (display_line): Handle cursor in fringe at eob.
9926 (display_line): Set row user fringe bitmaps from iterator.
9927
9928 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
9929 Use cursor color for displaying cursor in fringe.
9930 (x_redisplay_interface): Add null handlers for
9931 define_fringe_bitmap and destroy_fringe_bitmap functions.
9932
9933 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9934
9935 * macfns.c (Fx_change_window_property): Make doc string and
9936 parameters same as for X version.
9937
9938 * w32fns.c (Fx_change_window_property): Ditto.
9939
9940 2004-02-07 Kim F. Storm <storm@cua.dk>
9941
9942 * xdisp.c (hscroll_window_tree): Position cursor near to right
9943 margin in hscrolled window when jumping to end of line (rather
9944 than centering cursor).
9945
9946 * process.c (wait_reading_process_input): Don't do adaptive read
9947 buffering if waiting for a specific process.
9948
9949 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
9950
9951 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
9952 (Fread_minibuffer, Feval_minibuffer)
9953 (Fread_string, Fread_no_blanks_input)
9954 (Fcompleting_read): Doc fixes.
9955 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
9956 completion-regexp-list. Define Qcase_fold_search and staticpro it.
9957 (read_minibuf): Fix initial comment.
9958 (Ftry_completion, Fall_completions, Ftest_completion): Bind
9959 case-fold-search to the value of completion-ignore-case when
9960 checking completion-regexp-list.
9961 (Fdisplay_completion_list): Make it handle arguments that are
9962 symbols. Doc fix.
9963
9964 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9965
9966 * xterm.h: Add declaration of free_frame_menubar.
9967
9968 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
9969 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
9970 (Fx_change_window_property): Add declaration of parameters type and
9971 format. Remove unused variable cons.
9972
9973 * xselect.c: Include stdio,h.
9974
9975 2004-02-05 Kenichi Handa <handa@m17n.org>
9976
9977 * fns.c (Fset_char_table_range): Fix previous change.
9978
9979 * buffer.c (Fset_buffer_multibyte): Fix docstring.
9980
9981 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
9982
9983 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
9984
9985 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
9986
9987 * keymap.c (Vmouse_events): Rename from Vmenu_events.
9988 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
9989
9990 2004-02-04 Kenichi Handa <handa@m17n.org>
9991
9992 * fns.c (Fset_char_table_range): Handle charsets ascii,
9993 eight-bit-control, and eight-bit-graphic correctly.
9994
9995 2004-02-03 Jason Rumney <jasonr@gnu.org>
9996
9997 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
9998
9999 * w32fns.c (x_to_w32_font): Likewise.
10000
10001 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10002
10003 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
10004 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
10005
10006 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
10007 ClientMessages.
10008
10009 * xselect.c: Include termhooks.h and X11/Xproto.h
10010 (x_check_property_data, x_fill_property_data)
10011 (x_property_data_to_lisp, mouse_position_for_drop)
10012 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
10013 (Fx_send_client_event): Move here from xfns.c.
10014 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
10015
10016 * xfns.c (x-send-client-message): Move to xselect.c
10017 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
10018 OUTER_P.
10019 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
10020 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
10021 if vector_ret_p is true.
10022 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
10023
10024 2004-02-02 Eli Zaretskii <eliz@gnu.org>
10025
10026 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
10027 basename of FILE relative to it, not FILE itself.
10028
10029 2004-02-02 Kenichi Handa <handa@m17n.org>
10030
10031 * coding.c (coding_restore_composition): Check invalid
10032 composition data more rigidly.
10033
10034 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
10035
10036 * fileio.c (Fread_file_name_internal): Correctly handle the case
10037 where insert-default-directory is nil.
10038 (Fread_file_name): Always return an empty string if the user exits
10039 with an empty minibuffer. Adapt the docstring accordingly.
10040 (syms_of_fileio): Adapt the docstring of insert-default-directory
10041 to the change in Fread_file_name.
10042
10043 2004-01-29 Eli Zaretskii <eliz@gnu.org>
10044
10045 * alloca.c [!alloca]: Fix the prototype for xfree.
10046
10047 2004-01-29 Kenichi Handa <handa@m17n.org>
10048
10049 * fns.c (string_char_to_byte): Optimize for ASCII only string.
10050 (string_byte_to_char): Likewise.
10051
10052 2004-01-28 Peter Runestig <peter@runestig.com>
10053
10054 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
10055
10056 2004-01-27 Steven Tamm <steventamm@mac.com>
10057
10058 * unexmacosx.c (unexec_copy): Do not copy more than was
10059 requested to prevent overwriting during unexec.
10060
10061 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10062
10063 * process.c (sigchld_handler): Add comment about not calling malloc.
10064
10065 * process.h: Add extern to synch_process_termsig.
10066
10067 2004-01-27 Steven Tamm <steventamm@mac.com>
10068
10069 * macterm.c (make_mac_frame, make_mac_terminal_frame):
10070 Move setting of scroll bars from make_mac_frame to
10071 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
10072
10073 2004-01-26 Richard M. Stallman <rms@gnu.org>
10074
10075 * search.c (Freplace_match): Handle nonexistent
10076 back-references properly.
10077
10078 2004-01-03 Richard M. Stallman <rms@gnu.org>
10079
10080 * window.c (decode_any_window): New function.
10081 (Fwindow_height, Fwindow_width, Fwindow_edges)
10082 (Fwindow_pixel_edges, Fwindow_inside_edges)
10083 (Fwindow_inside_pixel_edges): Use decode_any_window.
10084
10085 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10086
10087 * process.h: synch_process_termsig new variable.
10088
10089 * callproc.c: Define synch_process_termsig.
10090 (Fcall_process): Initiate synch_process_termsig to zero and
10091 check if non-zero and get signal name after subprocess has ended.
10092
10093 * process.c (sigchld_handler): Set synch_process_termsig
10094 if terminated by a signal. synch_process_death setting removed.
10095
10096 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
10097
10098 2004-01-26 Andreas Schwab <schwab@suse.de>
10099
10100 * print.c (print_preprocess): Declare size as EMACS_INT to not
10101 lose bits.
10102 (print_object): Likewise.
10103 * alloc.c (Fpurecopy): Likewise.
10104
10105 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
10106
10107 * window.c (Fwindow_minibuffer_p): Doc fix.
10108
10109 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
10110
10111 * editfns.c (Fformat): Make both passes accept the same set of flags.
10112
10113 2004-01-23 Kenichi Handa <handa@m17n.org>
10114
10115 * fns.c (Fmd5): If OBJECT is a buffer different from the current
10116 one, set buffer to OBJECT temporarily.
10117
10118 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10119
10120 * keyboard.c (kbd_buffer_gcpro): Remove.
10121 (kbd_buffer_store_event, clear_event, Fdiscard_input)
10122 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
10123 Don't initialize and/or maintain the variable any more. It was made
10124 redundant by my commit of 2003-06-15.
10125
10126 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
10127
10128 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10129
10130 * lisp.h: Add undef DECL_ALIGN.
10131
10132 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10133
10134 * process.c (wait_reading_process_input) [SYNC_INPUT]:
10135 Check interrupt_input_pending explicitly.
10136
10137 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
10138
10139 * keyboard.c (handle_async_input): New fun,
10140 extracted from input_available_signal.
10141 (input_available_signal, reinvoke_input_signal): Use it.
10142
10143 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
10144
10145 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
10146
10147 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
10148 manipulation macros for when tags are in the lower bits.
10149 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
10150 (DECL_ALIGN): New macro.
10151 (DEFUN): Use it.
10152
10153 * lisp.h [ENABLE_CHECKING]: Don't force union type.
10154
10155 * s/darwin.h (__attribute__): Remove outdated workaround.
10156
10157 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
10158
10159 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
10160 Don't check range of malloc address.
10161 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
10162
10163 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
10164
10165 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
10166
10167 2004-01-19 Kenichi Handa <handa@m17n.org>
10168
10169 * fontset.c (fontset_font_pattern): Fix previous change.
10170
10171 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
10172
10173 * xdisp.c (Voverflow_newline_into_fringe)
10174 (move_it_in_display_line_to, redisplay_internal)
10175 (update_window_fringes, redisplay_window, display_line, window):
10176 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
10177 that it compiles without a window-system.
10178 * dispnew.c (direct_output_for_insert, update_window): Likewise.
10179
10180 2004-01-16 Kim F. Storm <storm@cua.dk>
10181
10182 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
10183
10184 * buffer.c (init_buffer_once): Set buffer_defaults and
10185 buffer_local_flags for indicate_buffer_boundaries.
10186 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
10187 default- variable for it.
10188
10189 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
10190 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
10191 New members exact_window_width_line_p and cursor_in_fringe_p for
10192 overflowing newlines into right fringe.
10193 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
10194 and indicate_bottom_line_p for buffer boundaries and scrolling.
10195 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
10196 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
10197 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
10198 and HOLLOW_SQUARE_BITMAP.
10199 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
10200 Add prototypes.
10201
10202 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
10203 instead of related indicator fields.
10204 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
10205 (direct_output_for_insert): Handle exact width lines like
10206 contined lines. Call update_window_fringes.
10207 (update_window): Call update_window_fringes.
10208 (scrolling_window): Don't skip desired rows with changed bitmaps.
10209 Check if fringe bitmaps changes when assigning scrolled rows.
10210
10211 * xdisp.c (Voverflow_newline_into_fringe): New variable.
10212 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
10213 (move_it_in_display_line_to): Overflow newline into fringe for
10214 rows that are exactly as wide as the window.
10215 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
10216 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
10217 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
10218 (fringe_bitmaps): Add new bitmaps.
10219 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
10220 Select proper bitmap for cursor in fringe when appropriate.
10221 Handle alignment of bitmap to top or bottom of row.
10222 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
10223 done by update_window_fringes.
10224 (update_window_fringes, draw_window_fringes): New functions.
10225 (redisplay_internal): Call update_window_fringes in case only
10226 cursor row is updated.
10227 (redisplay_window): Call update_window_fringes.
10228 Explicitly call draw_window_fringes if redisplay was done using
10229 the current matrix or the overlay arrow is in the window.
10230 (try_window_reusing_current_matrix): Mark scrolled rows for
10231 fringe update (to update buffer-boundaries / scrolling icons).
10232 (find_last_unchanged_at_beg_row): Handle exact width lines line
10233 continued lines.
10234 (display_line): Overflow newline into fringe for rows that are
10235 exactly as wide as the window. Don't append space for newline
10236 in this case.
10237 (notice_overwritten_cursor): Explicitly clear cursor bitmap
10238 in fringe as if it had been overwritten.
10239 (erase_phys_cursor): Erase cursor bitmap in fringe.
10240 (syms_of_xdisp): Mark show-trailing-whitespace and
10241 void-text-area-pointer as user options.
10242 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
10243
10244 * xterm.c (x_update_window_end): Call draw_window_fringes.
10245 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10246 in row instead of actually drawing fringe bitmaps.
10247 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10248 (x_draw_window_cursor): Draw cursor in fringe.
10249
10250 * w32term.c (x_update_window_end): Call draw_window_fringes.
10251 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10252 in row instead of actually drawing fringe bitmaps.
10253 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10254 (w32_draw_window_cursor): Draw cursor in fringe.
10255
10256 * macterm.c (x_update_window_end): Call draw_window_fringes.
10257 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10258 in row instead of actually drawing fringe bitmaps.
10259 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10260 (mac_draw_window_cursor): Draw cursor in fringe.
10261
10262 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10263
10264 * xterm.c (handle_one_xevent): Don't handle characters that are part
10265 of an old style (XLookupString) compose sequence.
10266
10267 2004-01-15 Kenichi Handa <handa@m17n.org>
10268
10269 * search.c (Freplace_match): Use make_multibyte_string or
10270 make_unibyte_string according to the buffer multibyteness.
10271
10272 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
10273
10274 * alloc.c (struct interval_block, struct string_block)
10275 (struct symbol_block, struct marker_block, live_string_p)
10276 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
10277 Better preserve alignment for objects in blocks.
10278 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
10279
10280 * lread.c (defvar_per_buffer): Remove dead declaration.
10281
10282 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
10283 space size.
10284
10285 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10286
10287 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
10288 if a key press should pop down. Only pop down if a key is pressed
10289 outside the menu/dialog.
10290 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
10291 popup_get_selection.
10292 (create_and_show_dialog): Pass 1 for down_on_keypress to
10293 popup_get_selection.
10294
10295 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10296
10297 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
10298 BLOCK/UNBLOCK_INPUT.
10299
10300 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10301
10302 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
10303 specified.
10304
10305 2004-01-08 Kenichi Handa <handa@m17n.org>
10306
10307 * editfns.c (Fformat): Fix '&' to '&&'.
10308
10309 2004-01-08 Andreas Schwab <schwab@suse.de>
10310
10311 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
10312 size if PSEUDOVECTOR_FLAG is set.
10313
10314 2004-01-07 Kenichi Handa <handa@m17n.org>
10315
10316 * charset.c (Fdeclare_equiv_charset): Fix docstring.
10317
10318 * fontset.c (fontset_ref_via_base): Fix previous change.
10319
10320 2004-01-07 Kim F. Storm <storm@cua.dk>
10321
10322 * process.c (read_process_output): Only activate adaptive
10323 buffering if we read less than 256 bytes at a time.
10324
10325 2004-01-06 Kim F. Storm <storm@cua.dk>
10326
10327 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
10328 object and image object. Return glyph width and height.
10329 (mode_line_string, marginal_area_string): Ditto.
10330
10331 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10332 (marginal_area_string): Fix prototypes.
10333
10334 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
10335 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
10336 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
10337
10338 * keyboard.c (make_lispy_position): Use modified mode_line_string,
10339 buffer_posn_from_coords, and marginal_area_string functions to
10340 include both string object and image object in the lispy position.
10341 Also add actual glyph width and height to position.
10342 (read_key_sequence): Use real buffer position from mouse
10343 event to find keymap property even when click is in marginal area.
10344
10345 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
10346 mode_line_string and marginal_area_string functions to handle
10347 both string object and image object properties.
10348
10349 2004-01-06 Andreas Schwab <schwab@suse.de>
10350
10351 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
10352 character.
10353
10354 2004-01-02 Andreas Schwab <schwab@suse.de>
10355
10356 * macterm.c (emacs_options, x_initialized, same_x_server):
10357 Remove unused (and duplicated) definitions.
10358
10359 2004-01-02 Kim F. Storm <storm@cua.dk>
10360
10361 * process.h (struct Lisp_Process): New members for adaptive read
10362 buffering: adaptive_read_buffering, read_output_delay, and
10363 read_output_skip.
10364
10365 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
10366 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
10367 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
10368 (process_output_delay_count, process_output_skip): New vars.
10369 (Vprocess_adaptive_read_buffering): New variable.
10370 (make_process): Initialize adaptive read buffering members.
10371 (Fstart_process): Set adaptive_read_buffering member.
10372 (deactivate_process): Cleanup adaptive read buffering.
10373 (wait_reading_process_input): Temporarily omit delayed
10374 subprocesses from the set of file descriptors to read from;
10375 adjust the select timeout if we skipped any subprocesses.
10376 (read_process_output): Increase adaptive read buffering delay if
10377 we read less than a full buffer; reduce delay when we read a
10378 full buffer.
10379 (send_process): Simplify using local Lisp_Process var.
10380 Reset adaptive read buffering delay after write.
10381 (init_process): Initialize process_output_delay_count and
10382 process_output_skip.
10383 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
10384
10385 2004-01-01 Jason Rumney <jasonr@gnu.org>
10386
10387 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
10388
10389 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
10390
10391 * print.c (Ferror_message_string): Add hyperlink in the docstring
10392 to the definition of `signal' in the Elisp manual.
10393 * eval.c (Fsignal): Ditto.
10394
10395 2003-12-29 James Clark <jjc@jclark.com>
10396
10397 * fns.c (internal_equal): Return t for two NaN arguments.
10398
10399 2003-12-29 Richard M. Stallman <rms@gnu.org>
10400
10401 * data.c (store_symval_forwarding): Handle setting
10402 default-fill-column, etc., by changing the value in
10403 buffers that use the default.
10404
10405 * minibuf.c (Fset_minibuffer_window): Doc fix.
10406
10407 * fileio.c (choose_write_coding_system): Ignore auto_saving
10408 if using the visited file for auto saves.
10409 (Fwrite_region): Don't update SAVE_MODIFF
10410 if auto-saving in visited file.
10411
10412 2003-12-29 Kenichi Handa <handa@m17n.org>
10413
10414 * dispextern.h (face_font_available_p): Extern it.
10415
10416 * fontset.c (Voverriding_fontspec_alist): New variable.
10417 (lookup_overriding_fontspec): New function.
10418 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10419 (fontset_font_pattern): Likewise.
10420 (regulalize_fontname): New function.
10421 (Fset_fontset_font): Call regulalize_fontname.
10422 (Fset_overriding_fontspec_internal): New function.
10423 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10424 Defsubr Sset_overriding_fontspec_internal.
10425
10426 * xfaces.c (face_font_available_p): New function.
10427
10428 2003-12-28 Richard M. Stallman <rms@gnu.org>
10429
10430 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10431 or if its name is nil.
10432
10433 * buffer.c (Fkill_buffer): Don't delete auto-save file
10434 if it's the same as the visited file.
10435
10436 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10437
10438 * coding.c (Fcheck_coding_system): Doc fix.
10439
10440 2003-12-28 Kim F. Storm <storm@cua.dk>
10441
10442 * Makefile.in (eval.o): Depend on dispextern.h.
10443
10444 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10445 image glyph using image's ascent.
10446 (mode_line_string): Return image glyph as object clicked on.
10447 Adjust y0 for image glyph using image's ascent.
10448
10449 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10450 (struct glyph): New members, ascent and descent. Used to save
10451 this glyph's ascent and descent, instead of having.
10452 (struct glyph): Declare member face_id using FACE_ID_BITS.
10453 (find_hot_spot): Add prototype.
10454
10455 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10456 (QCmap): Declare extern.
10457 (make_lispy_position): When position is inside image hot-spot,
10458 use hot-spot element's id as posn element.
10459
10460 * lisp.h (IMAGEP): New macro to test for image object type.
10461 (Qimage): Declare extern.
10462
10463 * macfns.c (Qimage): Remove extern (now in lisp.h).
10464 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10465
10466 * macterm.c (Qface, Qmouse_face): Remove unused externs.
10467
10468 * w32fns.c (Qimage): Remove extern (now in lisp.h).
10469 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10470
10471 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
10472
10473 * w32term.c (Qface, Qmouse_face): Remove unused externs.
10474
10475 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
10476 pointer types.
10477 (Qrelative_width, Qalign_to): Remove unused variables.
10478 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
10479 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
10480 image maps.
10481 (x_y_to_hpos_vpos): Return glyph relative coordinates through
10482 new dx and dy args.
10483 Remove buffer_only_p arg (always 0). Simplify code accordingly.
10484 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
10485 than row's ascent and height, to get sensible height on tall rows.
10486 (build_desired_tool_bar_string): Remove Qimage extern.
10487 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
10488 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
10489 image glyph is alone on the last line.
10490 (append_glyph, append_composite_glyph, produce_image_glyph)
10491 (append_stretch_glyph): Set glyph's ascent and descent.
10492 (on_hot_spot_p): New function to check if position is inside an
10493 rectangular, circular, or polygon-shaped image hot-spot,
10494 (find_hot_spot): New function to search for image hot-spot.
10495 (Flookup_image_map): New defun to search for image hot-spot.
10496 (define_frame_cursor1): New aux function to determine frame pointer.
10497 (note_mode_line_or_margin_highlight, note_mouse_highlight):
10498 Handle `pointer' text property and :pointer image property to
10499 control frame pointer shape. Detect image hot-spots for pointer
10500 and help_echo properties. Use define_frame_cursor1.
10501 (note_mouse_highlight): Use Vvoid_text_area_pointer.
10502 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
10503 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
10504
10505 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
10506
10507 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
10508 (Qimage): Remove extern (now in lisp.h).
10509 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10510
10511 * xmenu.c (show_help_event): Remove unused code.
10512
10513 * xterm.c (Qface, Qmouse_face): Remove unused externs.
10514 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
10515 row's ascent and descent, to get a sensible height on tall rows.
10516
10517 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
10518
10519 * minibuf.c (Fcompleting_read): Undo previous change.
10520
10521 2003-12-25 Lars Hansen <larsh@math.ku.dk>
10522
10523 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
10524 Arguments GCPRO'ed in call to file name handler.
10525
10526 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
10527
10528 * termcap.c (tgetst1): Scan for "%pN"; if all
10529 N are continuous in [1,9], remove all "%pN".
10530
10531 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10532
10533 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
10534
10535 * xfaces.c (lface_fully_specified_p): Take into account that
10536 MAC OS always have unspecified stipple.
10537
10538 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10539
10540 * tparam.c (tparam1): Add handling for `%pN', which
10541 means use param N for the next substitution.
10542
10543 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10544
10545 * xfaces.c (Fcolor_gray_p): Fix omission bug:
10546 In case `frame' is nil, consult the selected frame.
10547 (Fcolor_supported_p): Likewise.
10548
10549 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
10550
10551 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
10552 Doc fixes.
10553
10554 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
10555 and an integer. Adapt the introductory comment accordingly.
10556 (Fread_from_minibuffer): Delete code moved into read_minibuf.
10557 Doc fix.
10558 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
10559 read_minibuf.
10560 (Fcompleting_read): Delete code moved into read_minibuf.
10561 (Ftest_completion): Make it handle obarrays and hash tables correctly.
10562
10563 2003-12-03 Kenichi Handa <handa@m17n.org>
10564
10565 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
10566 encoding sequence.
10567
10568 2003-12-01 Kenichi Handa <handa@m17n.org>
10569
10570 * composite.c (syms_of_composite): Don't make the compostion hash
10571 table week.
10572
10573 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
10574
10575 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
10576 * textprop.c (Fget_char_property_and_overlay): New function.
10577 (syms_of_textprop): Defsubr it.
10578
10579 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10580
10581 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
10582 to compile on terminal configuration.
10583
10584 * fileio.c (Fread_file_name): Check use_file_dialog also before
10585 calling Fx_file_dialog.
10586
10587 * fns.c (use_file_dialog): New variable.
10588 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
10589
10590 2003-11-29 Kim F. Storm <storm@cua.dk>
10591
10592 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
10593 (syms_of_msdos): Don't intern and staticpro them.
10594
10595 2003-11-27 Kim F. Storm <storm@cua.dk>
10596
10597 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
10598 coordinates relative to glyph at posn. If glyph is an image,
10599 return that as object at posn. Callers changed.
10600 (mode_line_string, marginal_area_string): Calculate and return
10601 pixel coordinates relative to glyph. Callers changed.
10602
10603 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10604 (marginal_area_string): Fix prototypes.
10605 (window_box_left_offset, window_box_right_offset): Add prototypes.
10606
10607 * frame.h (get_specified_cursor_type, get_window_cursor_type):
10608 Remove prototypes.
10609
10610 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
10611
10612 * keyboard.c (make_lispy_position): Add x and y coordinates
10613 relative to the current glyph as 7th element of position.
10614 If glyph is an image, return it in the object element.
10615 (read_key_sequence): Skip checks for keymap property in cases
10616 where POSN_STRING is not a string (e.g. an image).
10617
10618 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
10619 (Vshow_text_cursor_in_void): New variable.
10620 (glyph_to_pixel_coords): Don't use negative hpos.
10621 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
10622 (append_stretch_glyph): Change ascent arg to be actual value
10623 in pixels rather than ratio to height. Callers changed.
10624 (calc_pixel_width_or_height): New aux function, implementing
10625 pixel based artihmetic for glyph widths and heights.
10626 (produce_stretch_glyph): Use calc_pixel_width_or_height for
10627 :width, :height, :align-to, and :ascent, thus allowing these to
10628 be specified in pixels as well as multiples of characters.
10629 Don't produce stretch glyphs with zero width or height.
10630 (get_specified_cursor_type): Declare static.
10631 (get_window_cursor_type): Declare static. Add glyph arg to be
10632 able to know when cursor is on an image; always substitute
10633 hollow-box cursor for filled-box cursor on images, to avoid
10634 negative images and flicker when blinking the cursor.
10635 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
10636 (note_mode_line_or_margin_highlight): Use non-text cursor rather
10637 than vertical scroll-bar cursor in display margins.
10638 (note_mouse_highlight): Use non-text cursor rather than text
10639 cursor in fringes and over images in the text area.
10640 Use non-text cursor when mouse pointer is outside editable text,
10641 i.e. in the void after end-of-line or end-of-buffer; this was
10642 already done for W32, but is now standard for all systems --
10643 user can toggle show-text-cursor-in-void to get old behaviour.
10644 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
10645 Vdisplay_pixels_per_inch.
10646
10647 2003-11-25 Andreas Schwab <schwab@suse.de>
10648
10649 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
10650 EMACS_INT to not lose bits.
10651 (Ffillarray): Don't set bits beyond the size of a bool vector.
10652
10653 2003-11-25 Kim F. Storm <storm@cua.dk>
10654
10655 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
10656 define this defun on systems that cannot use stderr as lvalue.
10657
10658 2003-11-24 Gerd Moellmann <gerd@gnu.org>
10659
10660 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
10661 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
10662 ld's default is incompatible with unexec.
10663
10664 2003-11-23 Kim F. Storm <storm@cua.dk>
10665
10666 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
10667 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
10668 (Fforce_window_update): New defun.
10669 (syms_of_window): Defsubr it.
10670 (Fset_window_margins, Fset_window_fringes): Doc fix.
10671
10672 * print.c (Fredirect_debugging_output): New defun.
10673 (syms_of_print): Defsubr it.
10674
10675 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
10676
10677 * fns.c (Fset_char_table_parent): Doc fix.
10678
10679 2003-11-22 Kim F. Storm <storm@cua.dk>
10680
10681 * dispnew.c (buffer_posn_from_coords): Return actual row/column
10682 for glyph clicked on, rather than (unused) pixel positions.
10683 (mode_line_string, marginal_area_string): Change X and Y args to
10684 pointers for returning actual row/column for glyph clicked on.
10685 Simplify and optimize loops.
10686
10687 * dispextern.h (mode_line_string, marginal_area_string):
10688 Update prototypes.
10689
10690 * keyboard.c (make_lispy_position): New function for generating
10691 mouse click positions from frame and pixel coordinates.
10692 Enhanced to return buffer position and actual row/column for
10693 events outside the text area using updated mode_line_string and
10694 marginal_area_string functions.
10695 Return left-fringe and right-fringe clicks as such, rather than
10696 clicks in text area.
10697 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
10698 pixel_to_glyph_coords, as we never use the results.
10699 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
10700 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
10701 Eliminate unused code in WHEEL_EVENT handling.
10702 (make_lispy_movement): Use make_lispy_position.
10703
10704 * window.c (coordinates_in_window): Remove redundant tests.
10705 Fix returned X pixel value for left-margin.
10706
10707 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
10708 mode_line_string and marginal_area_string parameters.
10709
10710 2003-11-22 Lars Hansen <larsh@math.ku.dk>
10711
10712 * w32.c (struct the_group, getgrgid): Add.
10713 * mac.c (struct my_group, getgrgid): Add.
10714
10715 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10716
10717 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
10718
10719 2003-11-21 Lars Hansen <larsh@math.ku.dk>
10720
10721 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
10722 include in call to file name handler. Optionally translate numeric
10723 UID and GID to strings. Update docstring.
10724 (directory_files_internal): Add parameter ID-FORMAT.
10725 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
10726 include in call to file name handler and call to
10727 directory_files_internal. Update Docstring.
10728 (Fdirectory_files): Add dummy parameter in call to
10729 directory_files_internal.
10730 * lisp.h (Qinteger): Add.
10731 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
10732 (Ffile_attributes): Add parameter.
10733 * data.c (Qinteger): Export.
10734
10735 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10736
10737 * fns.c (Freverse, Fnreverse): Doc fixes.
10738
10739 2003-11-19 Kim F. Storm <storm@cua.dk>
10740
10741 * xdisp.c (init_iterator): Initialize it->start to position
10742 before reseating (in case start position is invisible).
10743 (init_to_row_start): Set it->start to row-start.
10744 (redisplay_window): Accept optional_new_start if start position
10745 is invisible (in which case IT_CHARPOS overshoots PT).
10746 (display_line): Setup row->start from it->start (rather than
10747 it->current which is wrong if first char on line is invisible).
10748 When done, reseat it->start to it->current (= start of next row).
10749 (expose_area): Fix exposure of text area when first char (e.g. TAB)
10750 is only partially visible.
10751
10752 * dispextern.h (struct it): New member start.
10753
10754 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
10755
10756 * alloc.c (make_float, Fcons): Clear the markbit at init time.
10757 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
10758 of block_index outside of the macro call.
10759 (Fgarbage_collect): Remove null code.
10760
10761 * m/amdx86-64.h: Don't redefine XPNTR.
10762
10763 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
10764 of VALMASK.
10765
10766 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
10767 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
10768 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
10769
10770 * lisp.h (VALMASK): Only define for non-union type.
10771 (MARKBIT): Remove.
10772 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
10773 (XTYPE): Define unconditionally.
10774 (XSETTYPE): Remove one more remnant.
10775 (EQ): Define differently for the union and non-union cases.
10776 (INTMASK): New bit mask.
10777 (struct Lisp_Marker): Move down to prepare for upcoming patch.
10778 (GC_EQ): Delegate to EQ.
10779
10780 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
10781
10782 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10783
10784 * xterm.c (x_window_to_scroll_bar): Move check of display to
10785 where window_id is compared.
10786
10787 2003-11-17 Kim F. Storm <storm@cua.dk>
10788
10789 * dispextern.h (struct it): New member first_vpos.
10790
10791 * xdisp.c (start_display): Set it->first_vpos.
10792 (try_window_id): Use first_vpos to start display in first _text_
10793 line if no reusable lines at start of window with header line.
10794
10795 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10796
10797 * w32fns.c (XPutPixel):
10798 * w32bdf.c (w32_init_bdf_font):
10799 * sunfns.c (sel_read):
10800 * process.c (Fmake_network_process):
10801 * frame.c (store_frame_param):
10802 * fontset.c (Fset_fontset_font):
10803 * emacs.c (shut_down_emacs):
10804 * ccl.c (ccl_driver): Remove period at end of error message.
10805
10806 * config.in: Regenerate.
10807
10808 * xfns.c (x_window_to_frame, x_any_window_to_frame)
10809 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10810 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
10811 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
10812 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
10813
10814 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
10815
10816 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
10817 (XTmouse_position, handle_one_xevent): Pass Display* to
10818 x_window_to_scroll_bar.
10819 (x_window_to_scroll_bar): Take a Display* argument.
10820 Check that display for frame is equal to Display* argument.
10821 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
10822 x_display_info_for_display instead. Use Display in xev instead
10823 of GDK_DISPLAY.
10824 (x_dispatch_event): Call x_display_info_for_display.
10825 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
10826 (x_connection_closed): Call xg_display_close for GTK.
10827 (x_term_init): Call xg_display_open for additional displays.
10828 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
10829 for GTK.
10830
10831 * xmenu.c (single_menu_item, mouse_position_for_popup)
10832 (x_activate_menubar): Formatting adjustments.
10833
10834 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
10835 adjustments.
10836
10837 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
10838 (xg_display_close, xg_create_default_cursor)
10839 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
10840 handling.
10841 (xg_left_ptr_cursor): Remove.
10842 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
10843 cursor here.
10844 (xg_win_to_widget): Take Display* argument, call
10845 gdk_xid_table_lookup_for_display.
10846 (xg_create_frame_widgets, xg_get_file_name, create_menus)
10847 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
10848 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
10849 in FRAME_X_DISPLAY_INFO.
10850 (xg_get_scroll_id_for_window): Take Display* argument.
10851 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
10852 (xg_initialize): Remove xg_left_ptr_cursor.
10853
10854 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
10855 Display* argument.
10856 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
10857
10858 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10859
10860 * xterm.c (x_detect_focus_change): Do not change focus frame for
10861 Enter/LeaveNotify if the current focus frame has explicit focus.
10862
10863 2003-11-14 Kim F. Storm <storm@cua.dk>
10864
10865 * dispnew.c (update_text_area): Fix redisplay error when hscroll
10866 is active and first glyph is only partially visible.
10867
10868 2003-11-13 Kenichi Handa <handa@m17n.org>
10869
10870 * xdisp.c (select_frame_for_redisplay): New function.
10871 (redisplay_internal): Record also selected_frame for
10872 unwind_redisplay. Call select_frame_for_redisplay before
10873 redrawing each frame.
10874 (unwind_redisplay): Argument changed to a cons.
10875
10876 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
10877
10878 * fns.c (Fstring_to_multibyte): Doc fix.
10879
10880 2003-11-11 Kenichi Handa <handa@m17n.org>
10881
10882 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
10883
10884 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10885
10886 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
10887 program specified positions.
10888
10889 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10890
10891 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
10892
10893 2003-11-08 Kenichi Handa <handa@m17n.org>
10894
10895 * Makefile.in (lisp): Add kannada.el.
10896 (shortlisp): Likewise.
10897
10898 2003-11-07 Kenichi Handa <handa@m17n.org>
10899
10900 * coding.c (coding_allocate_composition_data):
10901 Reset coding->composing to COMPOSITION_NO.
10902 (coding_restore_composition): Detect invalid composition data.
10903 Give Fstring and Fvector a Lispy integer, not C int.
10904
10905 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
10906
10907 * floatfns.c (Flogb): Don't use VALMASK.
10908
10909 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
10910 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
10911
10912 * lisp.h (XINT): Move the cast to clarify what is going on.
10913 (GCTYPEMASK, XSETTYPE): Remove.
10914 (XGCTYPE): Make it an alias of XTYPE.
10915
10916 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10917
10918 * xterm.c (x_term_init): Fix formatting.
10919
10920 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10921
10922 * gtkutil.h (xg_have_tear_offs): Declare.
10923 (xg_keep_popup, xg_did_tearoff): Remove.
10924
10925 * gtkutil.c: Remove variable xg_did_tearoff.
10926 (xg_have_tear_offs): New function.
10927 (tearoff_remove): Just decrease xg_detached_menus.
10928 (tearoff_activate): Increase xg_detached_menus and call
10929 tearoff_remove when tearoff is removed.
10930 (xg_keep_popup): Remove function.
10931 (create_menus): Give add_tearoff_p as argument to recursive
10932 call to create_menus.
10933 (xg_create_widget): Use variables instead of multiple
10934 strcmp. Tell create_menus to create tear off only for
10935 menu bar menus.
10936 (xg_update_menubar): Change title for a detached menu also.
10937 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
10938 of deep_p.
10939 (xg_initialize): Initialize xg_detached_menus, remove
10940 initialization of xg_did_tearoff.
10941
10942 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
10943 xg_have_tear_offs returns non-zero.
10944 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
10945 call to xg_keep_popup.
10946
10947 2003-11-01 Andrew Choi <akochoi@shaw.ca>
10948
10949 * macterm.c (XTread_socket): Handle menubar selection and grow
10950 window only for mouseDown events.
10951
10952 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10953
10954 * xterm.c (x_term_init): For GTK part, increase x_initialized
10955 to check for more than one display. Use error instead of return 0.
10956
10957 2003-10-31 Andrew Choi <akochoi@shaw.ca>
10958
10959 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
10960 (copy_dysymtab): Call it.
10961
10962 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
10963
10964 * eval.c (Fdefvaralias): Doc fix.
10965
10966 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
10967
10968 * data.c (Fsetplist): Doc fix.
10969
10970 2003-10-14 Lute Kamstra <lute@gnu.org>
10971
10972 * window.c (Fset_window_fringes): Clarify docstring.
10973
10974 2003-10-14 Kim F. Storm <storm@cua.dk>
10975
10976 * window.c (Fset_window_margins): Simplify arg checking.
10977
10978 2003-10-13 Richard M. Stallman <rms@gnu.org>
10979
10980 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
10981 (print_partial_compiled_pattern): Replace assert with a printout.
10982 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
10983
10984 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
10985
10986 * window.c (Fset_window_margins): Allow only integers as args.
10987 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
10988 Doc fixes.
10989
10990 2003-10-13 Lute Kamstra <lute@gnu.org>
10991
10992 * window.c (Fset_window_fringes): Elaborate docstring.
10993
10994 2003-10-12 Andrew Choi <akochoi@shaw.ca>
10995
10996 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
10997
10998 * s/darwin.h (GC_MARK_STACK): Define.
10999
11000 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11001
11002 * window.c (shrink_windows): New function.
11003 (size_window): Call shrink_windows to calculate window sizes when
11004 shrinking frame with more than one window.
11005
11006 2003-10-12 Kim F. Storm <storm@cua.dk>
11007
11008 * xdisp.c (compute_fringe_widths): Doc fix.
11009
11010 2003-10-08 Kenichi Handa <handa@m17n.org>
11011
11012 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
11013
11014 2003-10-07 Kenichi Handa <handa@m17n.org>
11015
11016 * coding.c (Qcoding_system_define_form): New variable.
11017 (syms_of_coding): Intern and staticpro it.
11018 (Fcheck_coding_system): Try to autoload the definition of
11019 CODING-SYSTEM.
11020
11021 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
11022
11023 * fns.c (Frequire): Doc fix.
11024
11025 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11026
11027 * xfns.c (Fx_send_client_event): New function as a base for
11028 manipulating extended window manager hints.
11029 (Fx_send_client_event): Remove unused variable s.
11030
11031 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
11032 that function is removed.
11033
11034 * xterm.c (x_set_offset): Use move_offset_left/top instead of
11035 x/y_pixels_outer_diff.
11036 (x_check_expected_move): Calculate move_offset_left/top.
11037
11038 * xterm.h (struct x_output): New members: move_offset_top/left.
11039
11040 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
11041 call x_set_offset directly.
11042
11043 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
11044
11045 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
11046
11047 * xterm.c (x_delete_display): Free font names and font_encoder
11048 in dpyinfo->font_table.
11049
11050 * xfns.c (Fx_close_connection): Only call XFreeFont here.
11051 Move xfree of font names to x_delete_display.
11052
11053 * xterm.h (struct x_display_info): New member, wm_type.
11054 (struct x_output): New members, expected_top/left and
11055 check_expected_move.
11056
11057 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
11058 is received.
11059 (handle_one_xevent): Rename x_check_expected_move from
11060 x_check_fullscreen_move.
11061 (x_set_offset): Only add WM decoration sizes to modified_top/left
11062 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
11063 (x_check_expected_move): Rename from x_check_fullscreen_move.
11064 Removed fullscreen specific code. Use check_expected_move,
11065 expected_left/top instead. Also, set wm_type.
11066 (x_term_init): Initialize wm_type to unknown.
11067
11068 * frame.c (x_fullscreen_move): Remove addition of WM decoration
11069 sizes to move_x/y.
11070
11071 2003-10-03 Kenichi Handa <handa@m17n.org>
11072
11073 * macterm.c (x_load_font): Clear all members of FONTP before start
11074 filling them.
11075
11076 2003-10-02 Kenichi Handa <handa@m17n.org>
11077
11078 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
11079 before calling find_ccl_program_func. Call find_ccl_program_func
11080 only when fontp->font_encoder is not NULL.
11081
11082 * xterm.c (x_load_font): Clear all members of FONTP before start
11083 filling them.
11084
11085 2003-10-03 John Paul Wallington <jpw@gnu.org>
11086
11087 * keymap.c (map_keymap): Don't abort when binding is a vector.
11088
11089 2003-10-02 Jason Rumney <jasonr@gnu.org>
11090
11091 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
11092 Sync dependencies with Makefile.in.
11093 (alloca.o): Remove.
11094
11095 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
11096 filling them.
11097
11098 * w32bdf.c (w32_load_bdf_font): Likewise.
11099
11100 2003-09-30 Richard M. Stallman <rms@gnu.org>
11101
11102 * term.c (set_tty_color_mode): Calculate current_mode_spec
11103 regardless of value of VAL.
11104
11105 * intervals.c (graft_intervals_into_buffer):
11106 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
11107 Handle over_used when splitting UNDER.
11108
11109 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11110
11111 * regex.c (regex_compile): Free the stack when returning from function.
11112
11113 2003-09-28 Kenichi Handa <handa@m17n.org>
11114
11115 * fontset.c (Finternal_char_font): Change return value to
11116 cons (FONT-NAME . GLYPH-CODE).
11117
11118 2003-09-28 Eli Zaretskii <eliz@gnu.org>
11119
11120 * term.c (tty_setup_colors): Treat any negative argument as -1.
11121
11122 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
11123
11124 * process.c (send_process): Delete unused temp_buf.
11125
11126 2003-09-26 Dave Love <fx@gnu.org>
11127
11128 * xterm.c (x_bitmap_mask): Declare.
11129
11130 2003-09-25 Dave Love <fx@gnu.org>
11131
11132 * Makefile.in (fns.o): Depend on md5.h.
11133
11134 2003-09-25 Kim F. Storm <storm@cua.dk>
11135
11136 * window.c (set_window_buffer): Fix redisplay problems when
11137 switching between buffers with different display margin widths.
11138
11139 2003-09-23 Kim F. Storm <storm@cua.dk>
11140
11141 * process.c (set_socket_option): Fix :bindtodevice option.
11142 (Fset_network_process_option): Update process contact list when
11143 setting option succeeds.
11144 (Fmake_network_process): Doc fix.
11145
11146 2003-09-23 Dave Love <fx@gnu.org>
11147
11148 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
11149
11150 2003-09-22 Eli Zaretskii <eliz@gnu.org>
11151
11152 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
11153 color mode is an integer number (it could be -1).
11154
11155 2003-09-22 Richard M. Stallman <rms@gnu.org>
11156
11157 * intervals.c (graft_intervals_into_buffer): Correct the main loop
11158 in the case where OVER is longer than UNDER.
11159
11160 2003-09-22 Masatake YAMATO <jet@gyve.org>
11161
11162 * window.c (Fset_window_scroll_bars): Validate the value of
11163 `vertical_type'.
11164
11165 2003-09-21 Kim F. Storm <storm@cua.dk>
11166
11167 * frame.c (Vdefault_frame_scroll_bars): New variable.
11168 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
11169 (syms_of_frame): DEFVAR_LISP it, and initialize according to
11170 window-system default scroll bar position.
11171
11172 * window.c (Fwindow_scroll_bars): Doc fix.
11173
11174 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11175
11176 * xterm.c (x_set_offset): Take window manager decorations into account.
11177
11178 2003-09-19 Richard M. Stallman <rms@gnu.org>
11179
11180 * atimer.h: Don't include lisp.h.
11181 (P_): Define it here (as well as elsewhere).
11182
11183 * print.c (Fprin1_to_string): Move the PRINTPREPARE
11184 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
11185
11186 * data.c (Fvariable_binding_locus): New function.
11187 (syms_of_data): defsubr it.
11188 (Flocal_variable_p): Delete duplicate call to indirect_variable.
11189
11190 2003-09-18 Dave Love <fx@gnu.org>
11191
11192 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
11193
11194 * process.c (Fnetwork_interface_info): Fix type error.
11195 (Fnetwork_interface_list): Doc fix.
11196 (read_process_output, read_process_output): Delete unused var.
11197
11198 2003-09-17 Kim F. Storm <storm@cua.dk>
11199
11200 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
11201 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
11202 (Fnetwork_interface_info): Check that ifreq struct has required
11203 fields before accessing them; this requires that those fields are
11204 defined as macros, which may be too restrictive on some platforms,
11205 but it is better than failing on other platforms.
11206 (syms_of_process): Only defsubr above fns when included.
11207
11208 2003-09-17 Dave Love <fx@gnu.org>
11209
11210 * unexalpha.c: Don't include varargs.h.
11211
11212 2003-09-17 Kim F. Storm <storm@cua.dk>
11213
11214 * process.c (Fset_process_sentinel): Add sentinel to childp plist
11215 for network process.
11216 (socket_options): Add `:' prefix to option names. Add optbit field.
11217 (set_socket_option): Remove no_error arg and special handling of s < 0.
11218 Return 1<<optbit for known option, 0 for unknown.
11219 Do not interpret 0 as false for boolean option (only nil).
11220 Pass failed option and value to report_file_error.
11221 (Fset_network_process_options): Replace by Fset_network_process_option.
11222 (Fset_network_process_option): New function to set just one option.
11223 (Fmake_network_process): Allow :coding arg to be a cons.
11224 Allow :server arg to be an integer specifying backlog size.
11225 Remove :options arg, and allow options to be specified directly
11226 as :KEY, VALUE pairs. Parse these options before binding socket.
11227 As before, :reuseaddr t is default for a server process, but this
11228 can now be disabled by specifying :reuseaddr nil.
11229 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
11230 (init_process): Availability of network options is now checked with
11231 simpler syntax (featurep 'make-network-process :OPTION); use loop to
11232 setup features.
11233 (syms_of_process): Fix defsubr's for the replaced functions.
11234
11235 2003-09-16 Dave Love <fx@gnu.org>
11236
11237 * Makefile.in: Depend on coding.h.
11238
11239 2003-09-14 Kim F. Storm <storm@cua.dk>
11240
11241 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
11242 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
11243 (syms_of_process): Defsubr them.
11244
11245 * config.in: Regenerate.
11246
11247 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
11248
11249 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
11250 * m/news-r6.h (XUNMARK): Remove.
11251 * m/mips.h (XUNMARK): Remove.
11252 * m/mips-siemens.h (XUNMARK): Remove.
11253 * m/iris4d.h (XUNMARK): Remove.
11254 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
11255
11256 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
11257
11258 * lisp.h (VALBITS): Don't remove 1 for the markbit.
11259 (union Lisp_Object): Use unsigned int for types. Remove markbit.
11260 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
11261 (XTYPE): Use unsigned right-shift.
11262 (XMARKBIT, XMARK, XUNMARK): Remove.
11263
11264 * alloc.c (init_intervals, init_symbol, init_marker):
11265 Don't preallocate anything.
11266 (Fgarbage_collect, mark_object): Ignore the markbit.
11267
11268 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
11269
11270 2003-09-08 Lute Kamstra <lute@gnu.org>
11271
11272 * xdisp.c (pint2hrstr): New function.
11273 (decode_mode_spec): Add `%i' and `%I' specs.
11274 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
11275 for `mode-line-format'.
11276
11277 2003-09-07 Andreas Schwab <schwab@suse.de>
11278
11279 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
11280 avoid warning.
11281
11282 2003-09-07 Eli Zaretskii <eliz@gnu.org>
11283
11284 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
11285
11286 2003-09-03 Kim F. Storm <storm@cua.dk>
11287
11288 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
11289 change (superseded by 2002-08-30 change); the default blink-off
11290 cursor is now again "no cursor".
11291
11292 2003-09-01 Jason Rumney <jasonr@gnu.org>
11293
11294 * makefile.w32-in (alloca.o): Remove.
11295 (coding.o): Depend on intervals.h
11296 (emacs.o, bytecode.o): Depend on window.h
11297
11298 2003-09-01 Dave Love <fx@gnu.org>
11299
11300 * Makefile.in (alloca.o): Remove commands.
11301 (coding.o): Depend on intervals.h composite.h window.h.
11302 (emacs.o): Depend on window.h keyboard.h keymap.h.
11303 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
11304 (bytecode.o): Depend on window.h.
11305
11306 2003-08-31 Jason Rumney <jasonr@gnu.org>
11307
11308 * w32term.c (w32_per_char_metric): Allow cached metrics to be
11309 returned even when font_type is unknown.
11310
11311 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
11312
11313 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11314
11315 * xterm.c (x_term_init): Initialize new fields in x_display_info.
11316
11317 * xterm.h (struct x_display_info): Add red/green/blue_bits and
11318 *_offset.
11319
11320 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
11321 calculate pixel value.
11322
11323 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
11324
11325 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
11326 Don't tell redisplay display is accurate when it's actually been
11327 paused for pending input.
11328
11329 2003-08-29 Richard M. Stallman <rms@gnu.org>
11330
11331 * dispnew.c (adjust_glyph_matrix): Call window_box
11332 whenever W is nonzero.
11333
11334 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11335 (Fkill_local_variable, Fmake_variable_frame_local)
11336 (Flocal_variable_p, Flocal_variable_if_set_p):
11337 Use indirect_variable to trace thru variable aliases.
11338
11339 * config.in: Updated.
11340
11341 * callint.c (Fcall_interactively): Save and restore
11342 Vthis_command, Vthis_original_command, real_this_command,
11343 and current_kboard->Vlast_command.
11344
11345 * abbrev.c (Fexpand_abbrev): Insert before deleting.
11346
11347 2003-08-29 Gerd Moellmann <gerd@gnu.org>
11348
11349 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
11350
11351 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
11352
11353 * coding.c (decode_coding_iso2022): Initialize local variable c2.
11354 (decode_coding_sjis_big5): Likewise.
11355
11356 2003-08-27 Jason Rumney <jasonr@gnu.org>
11357
11358 * w32.c (sys_pipe): Protect against file descriptor overflow.
11359
11360 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
11361
11362 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
11363
11364 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
11365
11366 * xfns.c (Vgtk_version_string): New variable.
11367 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
11368
11369 2003-08-24 Eli Zaretskii <eliz@gnu.org>
11370
11371 * term.c (term_init): Remove `const' from buffer_size's declaration.
11372
11373 * Makefile.in (msdos.o): Depend on intervals.h.
11374
11375 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
11376
11377 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11378
11379 * xterm.h (struct x_display_info): New fields: client_leader_window
11380 and Xatom_wm_client_leader.
11381
11382 * xterm.c (x_initialize): Move call to x_session_initialize to ...
11383 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
11384
11385 * xsmfns.c (create_client_leader_window): New function.
11386 (x_session_initialize): Call create_client_leader_window, take
11387 dpyinfo as argument.
11388
11389 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
11390
11391 * Makefile.in (xsmfns.o): Add more depenedencies.
11392
11393 2003-08-21 Dave Love <fx@gnu.org>
11394
11395 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
11396
11397 2003-08-21 Kenichi Handa <handa@m17n.org>
11398
11399 * term.c (term_init): Fix previous change; don't rely on the
11400 length of `buffer' if TERMINFO is defined.
11401
11402 2003-08-20 Dave Love <fx@gnu.org>
11403
11404 * atimer.h: Include lisp.h.
11405
11406 * lisp.h (EMACS_LISP_H): New.
11407 (popup_activated_flag): Don't declare.
11408
11409 * alloca.c: Some merging with gnulib. Change logic and doc
11410 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11411 [DO_BLOCK_INPUT]: Don't include lisp.h.
11412 (xmalloc, xfree): Declare.
11413 (malloc): Don't declare.
11414
11415 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11416 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11417 atimer.h, blockinput.h.
11418
11419 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11420
11421 * alloca.s: Remove.
11422
11423 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11424
11425 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11426 use -lncurses.
11427
11428 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11429 FreeBSD returns something longer than 2044. Abort if the end of
11430 the buffer is overwritten.
11431
11432 2003-08-19 Miles Bader <miles@gnu.org>
11433
11434 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11435
11436 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11437
11438 * alloc.c (lisp_align_malloc): Check for memory full when
11439 allocating ablocks, which also avoids freeing a pointer into an
11440 ablocks structure.
11441
11442 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11443
11444 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11445
11446 2003-08-16 Richard M. Stallman <rms@gnu.org>
11447
11448 * editfns.c (Fencode_time): Doc fix.
11449
11450 2003-08-16 David Ponce <david@dponce.com>
11451
11452 * fileio.c (Fwrite_region): Fix conditional expression to issue
11453 the right message.
11454
11455 2003-08-16 Juri Linkov <juri@jurta.org>
11456
11457 * syntax.c (Fforward_word): Argument changed to optional.
11458 Set default value to 1.
11459
11460 2003-08-15 Kenichi Handa <handa@m17n.org>
11461
11462 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11463 what autoscaled.
11464 (best_matching_font): Once we find a better scalable font, set
11465 non_scalable_has_exact_height_p to 1.
11466 (try_font_list): Call try_alternative_families to try any family
11467 with the given registry.
11468
11469 2003-08-09 Andreas Schwab <schwab@suse.de>
11470
11471 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
11472
11473 * print.c (print_string): Fix printing of multibyte string with
11474 nontrivial printcharfun.
11475
11476 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11477
11478 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
11479
11480 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
11481
11482 2003-07-31 Kenichi Handa <handa@m17n.org>
11483
11484 * process.c (read_process_output): Return the actually read bytes
11485 instead of the result of decoding.
11486
11487 2003-07-31 Kenichi Handa <handa@m17n.org>
11488
11489 * xterm.h (struct x_bitmap_record): New member have_mask.
11490
11491 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
11492 to 0.
11493 (x_create_bitmap_from_file): Likewise.
11494 (x_destroy_bitmap): Check have_mask member before freeing a mask.
11495 (x_destroy_all_bitmaps): Likewise.
11496 (x_create_bitmap_mask): Set have_mask member to 1.
11497
11498 2003-07-30 Richard M. Stallman <rms@gnu.org>
11499
11500 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
11501
11502 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11503
11504 * gtkutil.c (xg_mark_data): Update calls to mark_object.
11505
11506 2003-07-29 Richard M. Stallman <rms@gnu.org>
11507
11508 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
11509 Conditionalize XIM code on HAVE_XIM.
11510
11511 * fns.c (Fclear_string): New function.
11512 (syms_of_fns): defsubr it.
11513
11514 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11515
11516 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
11517
11518 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
11519
11520 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
11521
11522 * buffer.c (delete_all_overlays): New function.
11523 * buffer.h (delete_all_overlays): Declare.
11524 * coding.c (run_pre_post_conversion_on_str):
11525 * print.c (temp_output_buffer_setup):
11526 * fileio.c (Finsert_file_contents):
11527 * minibuf.c (get_minibuffer): Use it.
11528
11529 2003-07-22 Andrew Choi <akochoi@shaw.ca>
11530
11531 * unexmacosx.c (unexec_regions_sort_compare):
11532 (unexec_regions_merge): New functions. Sort and merge unexec
11533 regions before dumping them.
11534
11535 2003-07-22 Dave Love <fx@gnu.org>
11536
11537 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
11538
11539 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
11540
11541 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
11542 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
11543 MARKBIT as the gcmarkbit for strings.
11544
11545 2003-07-21 Richard M. Stallman <rms@gnu.org>
11546
11547 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
11548
11549 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
11550 (syms_of_fns): Corresponding change.
11551
11552 * alloc.c (syms_of_alloc): Doc fixes.
11553
11554 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
11555
11556 * s/netbsd.h: Use -Wl syntax.
11557
11558 2003-07-17 Richard M. Stallman <rms@gnu.org>
11559
11560 * xterm.c (xim_initialize): Redo 6/24 change.
11561
11562 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
11563
11564 * buffer.c (copy_overlays): Use EMACS_INT for positions.
11565 (Fswitch_to_buffer): Don't signal an error when switching to the same
11566 buffer in a dedicated window.
11567
11568 * alloc.c: Use bitmaps for cons, as was done for floats.
11569 (init_float, init_cons): Let the normal code allocate the first block.
11570 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
11571 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
11572 New macros.
11573 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
11574 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
11575 (live_cons_p): Check the pointer is not past the `conses' array.
11576 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
11577 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
11578 (survives_gc_p): Use CONS_MARKED_P and simplify.
11579 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
11580
11581 2003-07-13 Paul Eggert <eggert@twinsun.com>
11582
11583 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
11584 puts it into BSS instead, at least on Solaris 8 and 9.
11585 This is a valid optimization, and it may occur on other platforms,
11586 so Emacs should not assume that initializing a static variable to
11587 zero puts it into data.
11588 * alloc.c (pure, staticvec):
11589 Initialize these arrays to nonzero, so that they're not
11590 put into BSS by that optimization.
11591
11592 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
11593
11594 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
11595 (lisp_align_malloc): Use posix_memalign is available.
11596 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
11597 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
11598 for consistency. Update users.
11599
11600 2003-07-13 Richard M. Stallman <rms@gnu.org>
11601
11602 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
11603
11604 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
11605
11606 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
11607 and use the Gtk+ function gtk_window_icon_from_file if available.
11608
11609 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
11610 handle mask of bitmaps.
11611 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
11612 mask property.
11613 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
11614
11615 * xterm.h (xg_set_icon): New function.
11616
11617 2003-07-12 Paul Eggert <eggert@twinsun.com>
11618
11619 * unexelf.c (unexec): Consider a section to precede the .bss
11620 section if its addresses overlap that of .bss.
11621
11622 2003-07-12 Richard M. Stallman <rms@gnu.org>
11623
11624 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
11625
11626 * config.in (HAVE_CRTIN): Add #undef.
11627 (INLINE): Really inline only if OPTIMIZE is defined.
11628
11629 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
11630 END_FILES_1.
11631 (START_FILES_1, END_FILES_1): New macros (conditional).
11632 (LD_SWITCH_SYSTEM_TEMACS): Define.
11633
11634 * s/openbsd.h: Don't include bsd4-3.h.
11635 (TERMINFO): Define.
11636 (LIBS_TERMCAP): Define.
11637 (LD_SWITCH_SYSTEM): Define (two definitions).
11638
11639 * xfns.c: Include libpng/png.h instead of png.h.
11640
11641 2003-07-11 Andreas Schwab <schwab@suse.de>
11642
11643 * buffer.c (modify_overlay): Update prototype.
11644 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
11645 Likewise.
11646
11647 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11648
11649 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
11650 (struct interval): Move to intervals.h.
11651 (struct Lisp_Marker): Use EMACS_INT for position info.
11652 (forward_point): Remove prototype of defunct function.
11653 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
11654 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
11655 (syms_of_textprop, set_text_properties): Remove prototypes that are
11656 already in intervals.h.
11657
11658 * intervals.h (struct interval): Move from lisp.h.
11659 Use EMACS_INT for position and size info.
11660
11661 * coding.c: Include intervals.h for Fset_text_properties.
11662
11663 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11664 position and length information.
11665
11666 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11667
11668 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11669 position and length information.
11670
11671 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11672
11673 Change overlays_after and overlays_before so the overlays themselves
11674 are linked into lists, rather than using cons cells. After all each
11675 Lisp_Misc already occupies 5 words, so we can add a `next' field to
11676 Lisp_Overlay for free and save up one cons cell per overlay (not
11677 to mention one indirection when traversing the list of overlay).
11678
11679 * lisp.h (struct Lisp_Overlay): New field `next'.
11680
11681 * buffer.h (struct buffer): Change overlays_before and overlays_after
11682 from Lisp lists of overlays to pointers to overlays.
11683
11684 * buffer.c (overlay_strings, recenter_overlay_lists):
11685 Fix typo in eassert in last commit.
11686 (unchain_overlay): New function.
11687 (add_overlay_mod_hooklist): Use AREF.
11688 (copy_overlays, reset_buffer, overlays_at, overlays_in)
11689 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
11690 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
11691 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
11692 (report_overlay_modification, evaporate_overlays, init_buffer_once):
11693 Adjust to new type of overlays_(before|after).
11694
11695 * alloc.c (mark_object): Mark the new `next' field of overlays.
11696 (mark_buffer): Manually mark the overlays_(after|before) fields.
11697
11698 * coding.c (run_pre_post_conversion_on_str):
11699 * editfns.c (overlays_around):
11700 * xdisp.c (load_overlay_strings):
11701 * fileio.c (Finsert_file_contents):
11702 * indent.c (current_column):
11703 * insdel.c (signal_before_change, signal_after_change):
11704 * intervals.c (set_point_both):
11705 * print.c (temp_output_buffer_setup): Use new type for
11706 overlays_(before|after).
11707
11708 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
11709
11710 * buffer.c (report_overlay_modification): Don't run hooks while
11711 traversing the list of overlays.
11712
11713 * buffer.h (struct buffer): Use an int for overlay_center.
11714 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11715 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11716
11717 * buffer.c (reset_buffer, recenter_overlay_lists)
11718 (adjust_overlays_for_insert, adjust_overlays_for_delete)
11719 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
11720 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
11721 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11722 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11723
11724 * xdisp.c (fast_find_position): Remove unused var.
11725
11726 * cmds.c (Qexpand_abbrev): New sym.
11727 (syms_of_cmds): Initialize it.
11728 (internal_self_insert): Use it to call expand-abbrev.
11729
11730 2003-07-09 Kim F. Storm <storm@cua.dk>
11731
11732 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
11733 was configured with --without-xim.
11734 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
11735
11736 2003-07-07 Richard M. Stallman <rms@gnu.org>
11737
11738 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
11739
11740 * alloc.c (Fgarbage_collect): Doc fix.
11741
11742 2003-07-07 Nozomu Ando <nand@mac.com>
11743
11744 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
11745
11746 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11747
11748 * minibuf.c (read_minibuf): UNGCPRO before returning.
11749 (Ftry_completion, Fall_completions): Doc fix.
11750
11751 * alloc.c (live_float_p): Check that p is not past the `floats' array,
11752 now that `floats' is not the last element of the struct any more.
11753
11754 2003-07-06 Jason Rumney <jasonr@gnu.org>
11755
11756 * w32term.h (ClipboardSequence_Proc): New type.
11757
11758 * w32fns.c (clipboard_sequence_fn): New variable.
11759 (globals_of_w32fns): Initialize it.
11760
11761 * w32select.c (last_clipboard_sequence_number): New variable.
11762 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
11763 number if possible.
11764
11765 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11766
11767 * m/amdx86-64.h (MARKBIT):
11768 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
11769 MARKBIT and ARRAY_MARK_FLAG any more.
11770
11771 * m/hp800.h (XSETMARKBIT):
11772 * m/sr2k.h (XSETMARKBIT):
11773 * lisp.h (XSETMARKBIT): Remove unused macro.
11774
11775 * lisp.h (mark_object): Change prototype.
11776
11777 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
11778 (last_marked): Change accordingly.
11779 (mark_interval, mark_maybe_object, mark_maybe_pointer)
11780 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
11781 (mark_buffer): Update calls to mark_object.
11782
11783 * bytecode.c (mark_byte_stack):
11784 * fns.c (sweep_weak_table):
11785 * keyboard.c (mark_kboards): Update calls to mark_object.
11786
11787 2003-07-06 Jason Rumney <jasonr@gnu.org>
11788
11789 * alloc.c (struct ablock): Only include padding when there is some.
11790
11791 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
11792
11793 * alloc.c (ALIGN): Add casts to simplify usage.
11794 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
11795 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
11796 (struct ablock, struct ablocks): New types.
11797 (free_ablock): New global var.
11798 (lisp_align_malloc, lisp_align_free): New functions.
11799 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
11800 (struct float_block): Reorder and add gcmarkbits.
11801 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
11802 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
11803 (init_float, make_float): Use lisp_align_malloc.
11804 (free_float, live_float_p): Don't use `type' any more.
11805 (make_float): Use FLOAT_UNMARK to access to mark bit.
11806 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
11807 Use FLOAT_MARKED_P to access the mark bit.
11808 (pure_alloc): Simplify use of ALIGN.
11809 (mark_object): Use FLOAT_MARK to access the mark bit.
11810 (gc_sweep): Use new macros to access the float's mark bit.
11811 (init_alloc_once): Init free_ablock.
11812
11813 * lisp.h (struct Lisp_Float): Remove unused field `type'.
11814
11815 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
11816
11817 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
11818 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
11819 (allocate_buffer): Move.
11820 (string_bytes): Don't mask markbit of `size_byte'.
11821 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11822 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
11823 Use the `size' field of buffers (rather than the `name' field) for
11824 the mark bit, as is done for all other vectorlike objects.
11825 Use the new macros to access the mark bit of vectorlike objects.
11826
11827 2003-06-26 Richard M. Stallman <rms@gnu.org>
11828
11829 * puresize.h (BASE_PURESIZE): Increment base size.
11830
11831 * xdisp.c (fast_find_position): Enable Gerd's new definition.
11832
11833 * xterm.c (xim_initialize): Undo previous change.
11834
11835 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
11836
11837 * alloc.c (survives_gc_p): Simplify.
11838
11839 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
11840
11841 * window.c (Fset_window_dedicated_p): Simplify.
11842 (display_buffer_1): Don't raise the win from which minibuf was entered.
11843 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
11844 (Fminibuffer_selected_window): Simplify.
11845
11846 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
11847
11848 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
11849 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
11850
11851 * insdel.c (check_markers, adjust_markers_for_delete)
11852 (adjust_markers_for_insert, adjust_markers_for_replace)
11853 (prepare_to_modify_buffer, RESTORE_VALUE):
11854 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
11855 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
11856 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
11857 * alloc.c (Fmake_marker, free_marker, gc_sweep):
11858 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
11859 * editfns.c (save_excursion_restore, transpose_markers):
11860 * window.c (delete_window):
11861 * xdisp.c (message_dolog): Update for new types.
11862
11863 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11864
11865 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
11866 (realize_default_face): Use default_face_done_p for the force_p
11867 argument to set_lface_from_font_name. Set default_face_done_p to one.
11868
11869 * frame.c (make_frame): Initialize default_face_done_p.
11870
11871 * frame.h (struct frame): Add default_face_done_p.
11872
11873 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
11874 will be defined.
11875
11876 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
11877
11878 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
11879 Initialize the new field `gcmarkbit'.
11880 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
11881 (mark_interval_tree): Don't mark the tree separately from the nodes.
11882 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
11883 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11884 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
11885
11886 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
11887 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
11888 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
11889 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
11890 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
11891
11892 2003-06-24 Dave Love <fx@gnu.org>
11893
11894 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
11895
11896 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
11897 from gnulib.
11898
11899 2003-06-21 Richard M. Stallman <rms@gnu.org>
11900
11901 * fileio.c (Fwrite_region): Alternate messages
11902 for append and partial write.
11903
11904 * keyboard.c (read_key_sequence): When converting upcase fn key to
11905 downcase, update fkey and keytran so `backspace' gets translated.
11906
11907 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
11908
11909 * process.c (wait_reading_process_input): Don't signal SIGIO
11910 in batch mode.
11911
11912 2003-06-17 Kenichi Handa <handa@m17n.org>
11913
11914 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
11915 composite.h.
11916
11917 * xselect.c: Don't include charset.h, coding.h, composite.h.
11918 (Qforeign_selection): New variable.
11919 (syms_of_xselect): Intern and static it.
11920 (selection_data_to_lisp_data): Return a unibyte string made from
11921 data with `foreign-selection' text property.
11922
11923 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
11924
11925 * termhooks.h (EVENT_INIT): New macro.
11926
11927 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
11928
11929 * alloc.c (mark_kboards): Move to keyboard.c.
11930
11931 * keyboard.c (record_asynch_buffer_change, read_avail_input):
11932 * xterm.c (x_dispatch_event):
11933 * xmenu.c (find_and_call_menu_selection):
11934 * xdisp.c (handle_tool_bar_click):
11935 * w32menu.c (menubar_selection_callback):
11936 * sysdep.c (kbd_input_ast, read_input_waiting):
11937 * msdos.c (dos_rawgetc):
11938 * macterm.c (mac_check_for_quit_char):
11939 * macmenu.c (menubar_selection_callback):
11940 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
11941 data to kbd_buffer_store_event.
11942
11943 2003-06-15 Kim F. Storm <storm@cua.dk>
11944
11945 * xdisp.c (x_fix_overlapping_area): Always use area relative X
11946 to fix redisplay problem with tall characters (such as \e,AC\e(B).
11947
11948 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
11949
11950 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
11951
11952 2003-06-12 Kenichi Handa <handa@m17n.org>
11953
11954 * fileio.c (Fwrite_region): Save and restore restriction.
11955
11956 2003-06-12 Dave Love <fx@gnu.org>
11957
11958 * alloca.c (alloca): Declare arg as size_t.
11959
11960 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
11961 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
11962
11963 2003-06-11 Dave Love <fx@gnu.org>
11964
11965 * search.c (shrink_regexp_cache): Use xrealloc.
11966 (syms_of_search): Use xmalloc.
11967
11968 2003-06-10 Kim F. Storm <storm@cua.dk>
11969
11970 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
11971 Adjust phys_cursor.x to be relative to window box, rather than
11972 text area before checking -- to ensure cursor is redrawn when
11973 exposing window.
11974 Note: This also fixes a similar (older) bug if display margins
11975 are present.
11976
11977 2003-06-06 Kenichi Handa <handa@m17n.org>
11978
11979 * coding.c (encoding_buffer_size): If coding->type is
11980 coding_type_ccl, double magnification on CRLF encoding.
11981
11982 2003-06-06 Jason Rumney <jasonr@gnu.org>
11983
11984 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
11985 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
11986
11987 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
11988 Mac too.
11989
11990 2003-06-05 Dave Love <fx@gnu.org>
11991
11992 * strftime.c: Merge changes from gnulib.
11993
11994 * mktime.c (__mktime_internal): Merge changes from gnulib
11995 involving year 69 and dst2.
11996
11997 Changes to merge with gnulib version and be consistent with the
11998 autoconf test:
11999
12000 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
12001 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
12002 [HAVE_LOCALE_H]: Include locale.h.
12003 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
12004
12005 2003-06-05 Kim F. Storm <storm@cua.dk>
12006
12007 * window.c (coordinates_in_window): Convert X and Y to window
12008 relative coordinates inside mode-line and header-line parts.
12009 Convert X and Y to margin area relative coordinates inside left
12010 and right display margin parts.
12011
12012 2003-06-05 Jason Rumney <jasonr@gnu.org>
12013
12014 * w32fns.c (add_system_logical_colors_to_map): New function.
12015 (Fx_open_connection): Use it.
12016
12017 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
12018
12019 * process.c (allocate_pty): Revert part of the previous patch.
12020 (Faccept_process_output): Simplify.
12021
12022 2003-06-04 Jason Rumney <jasonr@gnu.org>
12023
12024 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
12025
12026 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
12027 (lispy_mouse_wheel_names): Remove.
12028 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
12029 Always define drag_and_drop_syms.
12030
12031 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
12032 WHEEL_EVENT events.
12033
12034 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
12035
12036 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
12037
12038 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
12039
12040 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12041
12042 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
12043 menu item label.
12044
12045 2003-06-03 Richard M. Stallman <rms@gnu.org>
12046
12047 * window.c (Fwindow_edges): Doc fix.
12048 (Fwindow_pixel_edges, Fwindow_inside_edges)
12049 (Fwindow_inside_pixel_edges): New functions.
12050 (syms_of_window): defsubr them.
12051
12052 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
12053 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
12054
12055 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
12056
12057 * dispnew.c (Fsit_for): Don't lie about the number of args.
12058
12059 2003-06-02 Dave Love <fx@gnu.org>
12060
12061 * callproc.c: Use HAVE_FCNTL_H, not USG5.
12062 (syms_of_callproc) <process-environment>: Doc fix.
12063
12064 * doc.c: Use HAVE_FCNTL_H, not USG5.
12065
12066 * xfaces.c (font_rescale_ratio): Fix for K&R.
12067
12068 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
12069
12070 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
12071
12072 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
12073
12074 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
12075 (xg_create_frame_widgets): Use ENCODE_UTF_8.
12076
12077 * xterm.c (Qutf_8): Move to coding.c
12078
12079 * xmenu.c (ENCODE_MENU_STRING): New.
12080 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
12081 Use it.
12082
12083 * coding.h (ENCODE_UTF_8): New.
12084 (Qutf_8): Declare.
12085
12086 * coding.c (Qutf_8): New.
12087 (syms_of_coding): Intern it.
12088
12089 * fns.c: Doc fixes.
12090
12091 2003-06-02 Kenichi Handa <handa@m17n.org>
12092
12093 * buffer.c (Fset_buffer_multibyte): Fix previous change.
12094
12095 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
12096
12097 * lread.c (openp): Make sure STR is a string.
12098
12099 2003-06-01 David Ponce <david@dponce.com>
12100
12101 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
12102 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
12103
12104 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
12105 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
12106 (discard_mouse_events): Discard WHEEL_EVENT events too.
12107 (lispy_wheel_names, wheel_syms): New.
12108 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
12109 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
12110 (make_lispy_event): Add WHEEL_EVENT handler.
12111
12112 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
12113 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12114 WHEEL_EVENT events.
12115
12116 2003-05-31 John Paul Wallington <jpw@gnu.org>
12117
12118 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
12119 timer are in lisp/emacs-lisp.
12120
12121 2003-05-31 Kenichi Handa <handa@m17n.org>
12122
12123 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
12124 region when a buffer is changed to unibyte.
12125
12126 * charset.h (VALID_LEADING_CODE_P): New macro.
12127 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
12128
12129 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
12130 is nonzero, accept multibyte form of eight-bit-control chars.
12131 (decode_composition_emacs_mule): Likewise.
12132 (decode_coding_emacs_mule): Likewise.
12133 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
12134 multibyte form of eight-bit-control chars.
12135
12136 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
12137 (Finsert_file_contents): If coding-system-for-read is bound to
12138 Qauto_save_coding, use the coding system emacs-mule with special
12139 setting for recovering a file.
12140 (choose_write_coding_system): On auto saving, use the coding
12141 system emacs-mule with special setting for auto saving.
12142 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
12143
12144 2003-05-30 Kenichi Handa <handa@m17n.org>
12145
12146 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
12147 properly before calling ccl_driver.
12148
12149 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
12150
12151 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
12152 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
12153 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
12154
12155 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
12156
12157 * xfaces.c (realize_default_face): Do not abort if lface is
12158 non-existent - reverts change from 2003-05-19.
12159
12160 2003-05-29 Kenichi Handa <handa@m17n.org>
12161
12162 * coding.c (decode_coding_iso2022): Pay attention to the byte
12163 sequence of CTEXT extended segment, and retain those bytes as is.
12164
12165 2003-05-28 Kenichi Handa <handa@m17n.org>
12166
12167 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
12168 of CODING_REPLACEMENT_CHARACTER.
12169 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
12170 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
12171 check this flag on encoding.
12172 (encode_coding_sjis_big5):
12173 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
12174 (Fset_terminal_coding_system_internal):
12175 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
12176 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
12177
12178 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
12179 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
12180 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
12181
12182 2003-05-28 Richard M. Stallman <rms@gnu.org>
12183
12184 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
12185
12186 * eval.c (unbind_to): Move init of this_binding to separate statement.
12187
12188 2003-05-28 Kim F. Storm <storm@cua.dk>
12189
12190 * xdisp.c (expose_window): Fix error in calculation of
12191 window relative coordinates of area to redisplay.
12192
12193 2003-05-27 Jason Rumney <jasonr@gnu.org>
12194
12195 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
12196
12197 2003-05-27 David Ponce <david@dponce.com>
12198
12199 Handle W32 mouse wheel events as mouse click events, like in X.
12200
12201 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
12202 MOUSE_WHEEL_EVENT anymore.
12203
12204 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
12205 Scrolling down/up the mouse wheel is respectively mapped to mouse
12206 button 4 and 5.
12207 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12208 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
12209 WM_MOUSEWHEEL events.
12210
12211 2003-05-27 Andreas Schwab <schwab@suse.de>
12212
12213 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
12214
12215 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
12216 partially visible line.
12217
12218 * alloc.c (Fgarbage_collect): Fix last change.
12219
12220 2003-05-26 John Paul Wallington <jpw@gnu.org>
12221
12222 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
12223
12224 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
12225
12226 * window.c (Fset_window_buffer): Add type of `keep_margins'.
12227 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
12228
12229 * window.h (window_box_text_cols): Declare.
12230
12231 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
12232 (x_draw_vertical_border): Remove unused var `f'.
12233
12234 * xfaces.c (build_scalable_font_name): Remove `unused var
12235 pixel_size' warning.
12236
12237 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
12238
12239 * unexelf.c (unexec): Remove `unused var n' warning.
12240
12241 * strftime.c (my_strftime_localtime_r): Remove `defined but
12242 unused' warning.
12243
12244 * process.c (allocate_pty): Remove `unused var stb' and
12245 `cp might be used uninitialized' warnings.
12246
12247 * dispnew.c (mode_line_string): Remove unused var `f'.
12248
12249 * coding.c (find_safe_codings): Remove unused var `i'.
12250
12251 * bytecode.c (Fbyte_code): Remove `unused val' warning.
12252
12253 * buffer.c (Fkill_buffer): Remove unused var `list'.
12254
12255 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
12256
12257 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12258
12259 * frame.c (make_frame): Condition want_fullscreen with
12260 HAVE_WINDOW_SYSTEM.
12261
12262 2003-05-25 Juanma Barranquero <lektu@terra.es>
12263
12264 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
12265 (Fwindow_scroll_bars): Fix typo in docstring.
12266
12267 2003-05-24 Kim F. Storm <storm@cua.dk>
12268
12269 The following changes serve several purposes:
12270
12271 1) Swap the position of fringes and display margins in windows, i.e.
12272 the fringes are now displayed between the margins and the text area
12273 (by default).
12274
12275 2) Allow fringe and scroll bar parameters to be set per-buffer and
12276 per-window (like display margins). Such settings are now stored
12277 in window configurations, preserved when frames are resized, and
12278 copied when windows are split vertically or horizontally.
12279 Several bugs related to display margins have been fixed.
12280
12281 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
12282
12283 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
12284 rather than FRAME_WIDTH (FRAME_FONT (f)).
12285
12286 5) Introduce a consistent naming of variables, members and macros
12287 depending on whether their value is measured in pixels or in
12288 canonical columns/lines. Pixel dimensions are named *_width and
12289 *_height, while canonical columns/lines are named *_cols and
12290 *_lines. Pixel positions are named *_x and *_y, while column/line
12291 positions are named *_col and *_line.
12292
12293 6) Consolidate more of the X, W32, and MAC gui code by moving
12294 common data into struct frame, and generalize it for the non-gui
12295 case by using suitable defaults.
12296
12297 7) Cleanup and consolidate the macros controlling frame and window
12298 layout into frame.h and window.h, and generalize the use of the
12299 various window_box_* functions (enhanced to handle the new fringe
12300 position and the per-window fringe and scroll bar settings).
12301
12302 * frame.h (struct frame): Rename members height to text_lines,
12303 width to text_cols, window_height to total_lines, window_width to
12304 total_cols, new_height to new_text_lines, new_width to
12305 new_text_cols. All uses changed.
12306 (struct frame): New members which consolidate common members of
12307 x_output, w32_output, and mac_output structures: left_pos,
12308 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
12309 win_gravity, size_hint_flags, border_width, internal_border_width,
12310 line_height, fringe_cols, left_fringe_width, right_fringe_width,
12311 want_fullscreen. All uses changed.
12312 (struct frame): New member column_width contaning the canonical
12313 column width, analogue to line_height. All uses changed.
12314 (struct frame): Rename members scroll_bar_pixel_width to
12315 config_scroll_bar_width, and scroll_bar_cols to
12316 config_scroll_bar_cols. All uses changed.
12317 (struct frame): New member scroll_bar_actual_width which
12318 consolidates and renames the vertical_scroll_bar_extra member of
12319 x_output, w32_output, and mac_output structures. All uses changed.
12320 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
12321 from x/w32/macterm.h files. All uses changed. Also change code
12322 which referred to f->output_data...->pixel_height.
12323 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
12324 from x/w32/macterm.h files. All uses changed. Also change code
12325 which referred to f->output_data...->pixel_width.
12326 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
12327 Also change code which referred to f->height.
12328 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
12329 Also change code which referred to f->width.
12330 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
12331 to update new_text_lines and new_text_cols members directly.
12332 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
12333 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
12334 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
12335 FRAME_SCROLL_BAR_COLS. All uses changed.
12336 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
12337 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
12338 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
12339 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
12340 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
12341 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
12342 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
12343 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
12344 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
12345 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
12346 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
12347 Unconditionally return line_height member (it now has proper value
12348 also for non-window frames).
12349 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
12350 return new column_width member (rather than the default font width).
12351 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
12352 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
12353 from x/w32/macterm.h files. Unconditionally return corresponding
12354 member of frame structure (they now have proper values also for
12355 non-window frames).
12356 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
12357 Calculate return value from left and right widths.
12358 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
12359 internal_border_width member (has proper value for non-window frame).
12360 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
12361 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
12362 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
12363 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
12364 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
12365 consolidated from xterm.h, macterm.h, and w32term.h.
12366 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
12367 consolidated from xterm.h, macterm.h, and w32term.h.
12368 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
12369 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
12370 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
12371 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
12372 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
12373 consolidated from x/mac/w32term.h.
12374 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
12375 consolidated from x/mac/w32term.h.
12376 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
12377 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
12378 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
12379 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
12380
12381 * window.h (struct window): Rename members left to left_col,
12382 top to top_line, height to total_lines, width to total_cols,
12383 left_margin_width to left_margin_cols, right_margin_width to
12384 right_margin_cols, orig_height to orig_total_lines, orig_top to
12385 orig_top_line. All uses changed.
12386 (struct window): New members left_fringe_width, right_fringe_width,
12387 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
12388 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
12389 New macros primarily used to simplify other macros.
12390 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
12391 referred to XINT (w->width).
12392 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
12393 referred to XINT (w->height).
12394 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
12395 referred to XINT (w->width) * canon_x_unit.
12396 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
12397 referred to XINT (w->height) * canon_y_unit.
12398 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
12399 referred to XINT (w->left).
12400 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
12401 all uses and code that referred to XINT (w->left) + XINT (w->width).
12402 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
12403 referred to XINT (w->top).
12404 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
12405 referred to XINT (w->top) + XINT (w->height).
12406 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12407 referred to XINT (w->left) * canon_x_unit.
12408 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12409 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12410 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12411 referred to XINT (w->top) * canon_y_unit.
12412 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12413 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12414 (WINDOW_LEFTMOST_P): New macro.
12415 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12416 All uses changed.
12417 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12418 All uses changed.
12419 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12420 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12421 Do not exclude left fringe width.
12422 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12423 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12424 Do not exclude fringe widths.
12425 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12426 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12427 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12428 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12429 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12430 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12431 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12432 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12433 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12434 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12435 New macros. Change code which referenced corresponding
12436 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12437 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12438 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12439 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12440 allow per-window scroll-bar settings.
12441 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12442 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12443 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12444 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12445 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12446 FRAME_SCROLL_BAR_WIDTH.
12447 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12448 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12449 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12450 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12451 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12452 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12453 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12454 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12455 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12456 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12457 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12458 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12459 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12460 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12461 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12462 (window_from_coordinates): Update prototype.
12463 (Fset_window_buffer): Update EXFUN.
12464 (set_window_buffer): Update prototype.
12465
12466 * dispextern.h (struct glyph_matrix): Rename members window_left_x
12467 to window_left_col, window_top_y to window_top_line. All uses
12468 changed.
12469 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
12470 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
12471 internal_border_width is now set to 0 for non-window frames.
12472 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
12473 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
12474 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
12475 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
12476 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
12477 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12478 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12479 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
12480 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
12481 Move to window.h and renamed [see window.h changes].
12482 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
12483 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
12484 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
12485 Use WINDOW_TOTAL_LINES.
12486 (frame_update_line_height): Remove prototype.
12487
12488 * buffer.h (struct buffer): Rename members measured in columns:
12489 left_margin_width to left_margin_cols, right_margin_width to
12490 right_margin_cols. All uses changed.
12491 New members left_fringe_width, right_fringe_width,
12492 fringes_outside_margins for per-buffer fringe settings.
12493 New members scroll_bar_width and vertical_scroll_bar_type for
12494 per-buffer scroll bar settings.
12495
12496 * buffer.c (init_buffer_once): Set buffer_defaults and
12497 buffer_local_flags for new buffer-local variables
12498 left_fringe_width, right_fringe_width, fringes_outside_margins,
12499 scroll_bar_width, and vertical_scroll_bar_type.
12500 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
12501 default-* variables for them.
12502
12503 * dispnew.c: Make (many) trivial substitutions for renamed and
12504 new macros in dispextern.h, frame.h and window.h.
12505 (mode_line_string): No need to adjust width for mode lines, as it
12506 is already adjusted by the caller.
12507 (marginal_area_string): Handle fringes inside/outside margins.
12508
12509 * frame.c: Make (many) trivial substitutions for renamed and
12510 new macros in dispextern.h, frame.h and window.h.
12511 (make_frame): Initialize left_fringe_width, right_fringe_width,
12512 fringe_cols, scroll_bar_actual_width, border_width,
12513 internal_border_width, column_width, line_height, x_pixels_diff,
12514 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
12515 members with values suitable for a non-window frames.
12516
12517 * gtkutil.c: Make (many) trivial substitutions for renamed and
12518 new macros in dispextern.h, frame.h and window.h.
12519
12520 * indent.c: Make (few) trivial substitutions for renamed and
12521 new macros in dispextern.h, frame.h and window.h.
12522
12523 * keyboard.c: Make (many) trivial substitutions for renamed and
12524 new macros in dispextern.h, frame.h and window.h.
12525 (make_lispy_event): Use window positions returned from
12526 window_from_coordinates when constructing the lisp event for
12527 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
12528 (incorrect) values locally.
12529 (make_lispy_movement): Use window positions returned from
12530 window_from_coordinates when constructing the lisp event, rather
12531 than calculating (incorrect) values locally.
12532
12533 * scroll.c: Make (some) trivial substitutions for renamed and
12534 new macros in dispextern.h, frame.h and window.h.
12535
12536 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
12537 scroll-bars.
12538
12539 * sysdep.c: Make (few) trivial substitutions for renamed and
12540 new macros in dispextern.h, frame.h and window.h.
12541
12542 * term.c: Make (some) trivial substitutions for renamed and
12543 new macros in dispextern.h, frame.h and window.h.
12544
12545 * widget.c: Make (few) trivial substitutions for renamed and
12546 new macros in dispextern.h, frame.h and window.h.
12547
12548 * window.c: Make (many) trivial substitutions for renamed and
12549 new macros in dispextern.h, frame.h and window.h.
12550 (make_window): Initialize new members
12551 left_margin_cols, right_margin_cols, left_fringe_width,
12552 right_fringe_width, fringes_outside_margins, scroll_bar_width,
12553 and vertical_scroll_bar_type.
12554 (coordinates_in_window): Adapt to new fringe/margin positions
12555 and per-window fringes and scroll-bars.
12556 Fix bug related to incorrectly adjusting coordinates by
12557 frame's internal_border_width (the effect normally negible since
12558 the internal_border_width is typically 0 or 1 pixel, but very
12559 noticeable for an internal_border_width of e.g. 25 pixels).
12560 Upon successful return (other than ON_NOTHING), the coordinates
12561 are now always properly converted to window relative for the
12562 given display element.
12563 (window_from_coordinates): Add new parameters wx and wy to
12564 return the window relative x and y position in the returned
12565 window and part. A null arg means, don't return the position.
12566 All callers changed.
12567 (adjust_window_margins): New function which may reduce the width
12568 of the display margins if a window's text area is too small after
12569 resizing or splitting windows.
12570 (size_window): Fix bug that did not account for display margin
12571 widths when checking the minimum width of a window; use
12572 adjust_window_margins.
12573 (set_window_buffer): Call Fset_window_fringes and
12574 Fset_window_scroll_bars to setup per-window elements.
12575 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
12576 existing display margin, fringe widths, and scroll bar settings
12577 (e.g. after splitting a window or resizing the frame).
12578 All callers changed.
12579 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
12580 (Fsplit_window): Duplicate original window's display margin,
12581 fringe, and scroll-bar settings; then call Fset_window_buffer with
12582 KEEP_MARGINS non-nil. This fixes a bug which caused a split
12583 window to only preserve the display margins in one of the windows.
12584 When splitting horizontally, call adjust_window_margins on both
12585 windows to ensure that the text area of the new windows is non too
12586 narrow. This fixes a bug which could cause Emacs to trap if the
12587 width of the split window was less than the width of the display
12588 margins.
12589 (window_box_text_cols): Rename from window_internal_width.
12590 All uses changed. Adapt to per-window fringes and scroll bars.
12591 Fix bug that caused vertical separator to be subtracted also on
12592 window frames. Fix another bug that did not reduce the returned
12593 value by the columns used for display margins.
12594 (window_scroll_line_based): Fix bug related to scrolling too much
12595 when display margins are present (implicitly fixed by the fix to
12596 window_box_text_cols).
12597 (scroll_left, scroll_right): Fix bug related to scrolling too far
12598 by default when display margins are present (implicitly fixed by
12599 the fix to window_box_text_cols).
12600 (struct saved_window): Rename members left to left_col, top to
12601 top_line, width to total_cols, height to total_lines, orig_top to
12602 orig_top_line, orig_height to orig_total_lines. All uses changed.
12603 New members left_margin_cols, right_margin_cols,
12604 left_fringe_width, right_fringe_width, fringes_outside_margins,
12605 scroll_bar_width, and vertical_scroll_bar_type for saving
12606 per-window display elements.
12607 (Fset_window_configuration): Restore display margins, fringes,
12608 and scroll bar settings. This fixes a bug which caused display
12609 margins to be discarded when saving and restoring a window
12610 configuration.
12611 (save_window_save): Save display margins, fringes, and scroll bar
12612 settings. This fixes a bug which caused display margins to be
12613 discarded when saving and restoring a window configuration.
12614 (Fset_window_margins): Do nothing if display margins are not
12615 really changed. Otherwise, call adjust_window_margins to ensure
12616 the text area doesn't get too narrow. This fixes a bug which
12617 could cause Emacs to trap if setting display margins wider than
12618 the width of the window.
12619 (Fset_window_fringes): New defun to allow user to specifically set
12620 this window's fringe widths and position vs. display margins.
12621 (Fwindow_fringes): New defun to return window's actual fringe settings.
12622 (Fset_window_scroll_bars): New defun to allow user to specifically
12623 set this window's scroll bar width and position.
12624 (Fwindow_scroll_bars): New defun to return window's actual scroll
12625 bar settings.
12626 (compare_window_configurations): Also compare display margins,
12627 fringes, and scroll bar settings.
12628 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
12629
12630 * xdisp.c: Make (many) trivial substitutions for renamed and
12631 new macros in dispextern.h, frame.h and window.h.
12632 (window_box_width): Adapt to per-window fringes and scroll bars,
12633 and new fringe vs. display margin position. Note that returned
12634 value is no longer guaranteed to be a whole multiple of the frame
12635 column width, since per-window fringes may now be any width.
12636 (window_box_left_offset): New function like window_box_left, but
12637 value is relative to left border of window (rather than frame).
12638 (window_box_right_offset): New function like window_box_right,
12639 but value is relative to left border of window.
12640 (window_box_left): Adapt to per-window fringes and scroll bars,
12641 and new fringe vs. display margin position. Simplify by using
12642 WINDOW_LEFT_EDGE_X and window_box_left_offset.
12643 (window_box): Allow null args for unnecessary return values;
12644 change/simplify relevant callers.
12645 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
12646 and new fringe vs. display margin position.
12647 Use window_box_left_offset and window_box_right_offset
12648 (get_glyph_string_clip_rect): Adapt to per-window fringes and
12649 scroll bars, and new fringe vs. display margin position.
12650 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
12651 (draw_fringe_bitmap): Rework to handle per-window fringes and new
12652 fringe vs. display margin position.
12653 (hscroll_window_tree): Use window_box_width instead of window_box.
12654 (redisplay_window): Adapt to per-window scroll bars.
12655 (draw_glyphs): Rework to handle per-window fringes and scroll
12656 bars, and new fringe vs. display margin position.
12657 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
12658 (x_clear_end_of_line): Adapt to per-window fringes and scroll
12659 bars, and new fringe vs. display margin position. Fix bug which
12660 increased total width of full_width rows by width of scroll bars
12661 although window's total width already includes that.
12662 (x_fix_overlapping_area): Simplify using window_box_left_offset.
12663 (expose_area): Simplify using window_box_left_offset.
12664 (x_draw_vertical_border): Handle per-window scroll bar settings,
12665 mixing windows with left, right and no scroll bars.
12666
12667 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
12668 where it's used in x_list_fonts (for clarity).
12669 (frame_update_line_height): Remove unused function; functionality
12670 is now done directly when setting the default font in x_set_font.
12671
12672 * xfns.c: Make (many) trivial substitutions for renamed and
12673 new macros in dispextern.h, frame.h and window.h.
12674
12675 * xmenu.c: Make (some) trivial substitutions for renamed and
12676 new macros in dispextern.h, frame.h and window.h.
12677
12678 * xterm.h (struct x_output): Move members left_pos, top_pos,
12679 border_width, pixel_height, pixel_width, line_height,
12680 internal_border_width, vertical_scroll_bar_extra,
12681 left_fringe_width, right_fringe_width, fringe_cols,
12682 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12683 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12684 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12685 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12686 (PIXEL_WIDTH, PIXEL_HEIGHT)
12687 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12688 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12689 frame.h and renamed [see frame.h changes].
12690 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12691 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12692 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12693 and renamed [see frame.h changes].
12694
12695 * xterm.c: Make (several) trivial substitutions for renamed and
12696 new macros in dispextern.h, frame.h and window.h.
12697 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12698 (scroll_run): Adapt to new fringe position.
12699 (glyph_rect): Use window coordinates returned from
12700 window_from_coordinates rather than frame_to_window_pixel_xy.
12701 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12702 scroll-bars.
12703 (handle_one_xevent): Simplify a USE_GTK conditional.
12704 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12705 (fringes are now inside margins, i.e. always in the clipping area).
12706 All callers changed.
12707 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12708 directly, then call compute_fringe_widths. Don't call
12709 frame_update_line_height.
12710
12711 * w32term.h (struct w32_output): Move members left_pos, top_pos,
12712 border_width, pixel_height, pixel_width, line_height,
12713 internal_border_width, vertical_scroll_bar_extra,
12714 left_fringe_width, right_fringe_width, fringe_cols,
12715 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12716 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12717 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12718 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12719 (PIXEL_WIDTH, PIXEL_HEIGHT)
12720 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12721 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12722 frame.h and renamed [see frame.h changes].
12723 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12724 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12725 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12726 and renamed [see frame.h changes].
12727
12728 * w32term.c: Make (several) trivial substitutions for renamed and
12729 new macros in dispextern.h, frame.h and window.h.
12730 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12731 (glyph_rect): Use window coordinates returned from
12732 window_from_coordinates rather than frame_to_window_pixel_xy.
12733 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12734 scroll-bars.
12735 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
12736 (fringes are now inside margins, i.e. always in the clipping area).
12737 All callers changed.
12738 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12739 directly, then call compute_fringe_widths. Don't call
12740 frame_update_line_height.
12741
12742 * w32console.c: Make (few) trivial substitutions for renamed and
12743 new macros in dispextern.h, frame.h and window.h.
12744
12745 * w32fns.c: Make (many) trivial substitutions for renamed and
12746 new macros in dispextern.h, frame.h and window.h.
12747
12748 * w32menu.c: Make (few) trivial substitutions for renamed and
12749 new macros in dispextern.h, frame.h and window.h.
12750
12751 * macterm.h (struct mac_output): Move members left_pos, top_pos,
12752 border_width, pixel_height, pixel_width, line_height,
12753 internal_border_width, vertical_scroll_bar_extra,
12754 left_fringe_width, right_fringe_width, fringe_cols,
12755 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12756 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
12757 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12758 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12759 (PIXEL_WIDTH, PIXEL_HEIGHT)
12760 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12761 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12762 frame.h and renamed [see frame.h changes].
12763 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12764 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12765 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12766 and renamed [see frame.h changes].
12767
12768 * macterm.c: Make (several) trivial substitutions for renamed and
12769 new macros in dispextern.h, frame.h and window.h.
12770 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12771 (glyph_rect): Use window coordinates returned from
12772 window_from_coordinates rather than frame_to_window_pixel_xy.
12773 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12774 scroll-bars.
12775 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12776 (fringes are now inside margins, i.e. always in the clipping area).
12777 All callers changed.
12778 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12779 directly, then call compute_fringe_widths. Don't call
12780 frame_update_line_height.
12781
12782 * macfns.c: Make (several) trivial substitutions for renamed and
12783 new macros in dispextern.h, frame.h and window.h.
12784 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
12785
12786 * macmenu.c: Make (few) trivial substitutions for renamed and
12787 new macros in dispextern.h, frame.h and window.h.
12788
12789 * msdos.h (struct x_output): Remove members left_pos, top_pos,
12790 and line_height, and use corresponding new members in struct
12791 frame. All uses changed.
12792 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
12793 superseeded by corresponding macros in frame.h.
12794
12795 * msdos.c: Make (several) trivial substitutions for renamed and
12796 new macros in dispextern.h, frame.h and window.h.
12797 (IT_note_mouse_highlight): Use updated window coordinates returned
12798 by window_from_coordinates, rather than adjusting them locally.
12799 (internal_terminal_init): No need to initialize line_height here;
12800 it now defaults to 1.
12801
12802 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
12803
12804 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
12805 dropping `down' events.
12806
12807 2003-05-24 Andreas Schwab <schwab@suse.de>
12808
12809 * coding.c (find_safe_codings): Fix last change.
12810
12811 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
12812
12813 * xfns.c (x_window): Fix typo from 2003-05-21 change.
12814
12815 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
12816
12817 * xdisp.c (display_mode_element): Increase max depth.
12818 Simplify the error handling code. Use a different error string
12819 for the case where we hit the depth limit.
12820
12821 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
12822
12823 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
12824
12825 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
12826
12827 * intervals.c (get_local_map): Don't get char-property of previous
12828 point any more: get_pos_property already does it and better.
12829
12830 2003-05-21 Dave Love <fx@gnu.org>
12831
12832 [Merged from unicode branch.]
12833
12834 * xfns.c (x_window, x_window): Use use_xim.
12835
12836 * xterm.c (use_xim): Initialize.
12837 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12838 (x_term_init): Maybe set use_xim.
12839
12840 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12841
12842 2003-05-21 Jason Rumney <jasonr@gnu.org>
12843
12844 * unexw32.c (_start): Remove _fmode initialization.
12845
12846 * emacs.c (main) [WINDOWSNT]: Move it here.
12847
12848 2003-05-20 Dave Love <fx@gnu.org>
12849
12850 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
12851
12852 2003-05-19 Richard M. Stallman <rms@gnu.org>
12853
12854 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
12855 as value for QCfont attribute.
12856 (realize_default_face): lface should already exist; crash if not.
12857 Specify 0 for FORCE_P when calling set_lface_from_font_name.
12858
12859 * frame.c (Fignore_event): Doc fix.
12860
12861 2003-05-19 Kenichi Handa <handa@m17n.org>
12862
12863 * coding.c (decode_coding_string): Handle post-read-conversion
12864 even if the coding doesn't require decoding.
12865
12866 2003-05-18 Richard M. Stallman <rms@gnu.org>
12867
12868 * callproc.c (Fcall_process_region): Doc fix.
12869
12870 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12871
12872 * lread.c (Fload): Print a message if package is obsolete.
12873
12874 * window.c (Fselect_window): Add optional `norecord' arg.
12875 (select_window_1): Fold into Fselect_window.
12876 (select_window_norecord): New function.
12877 (temp_output_buffer_show): Use it. Preserve current buffer.
12878
12879 * window.h (Fselect_window): Update declaration.
12880
12881 * window.c (delete_window, Fother_window, Fset_window_configuration):
12882 * minibuf.c (read_minibuf):
12883 * macterm.c (x_new_focus_frame):
12884 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
12885 * callint.c (Fcall_interactively):
12886 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
12887
12888 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
12889
12890 2003-05-17 David Kastrup <dak@gnu.org>
12891
12892 * process.c (read_process_output): Back out change from 2003-03-09.
12893
12894 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
12895
12896 * editfns.c (get_pos_property): Don't assume that `object' = nil.
12897
12898 * textprop.c (text_property_stickiness): New arg `buffer'.
12899
12900 * intervals.h (text_property_stickiness): New arg `buffer'.
12901 (get_pos_property): Declare.
12902
12903 * intervals.c (get_local_map): Use get_pos_property, to obey
12904 stickiness and empty overlays.
12905 (create_root_interval, graft_intervals_into_buffer): Use BEG.
12906 (merge_properties, intervals_equal, merge_properties_sticky):
12907 Use XCAR, XCDR.
12908 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
12909
12910 2003-05-17 Richard M. Stallman <rms@gnu.org>
12911
12912 * minibuf.c (read_minibuf): If buffer is empty, record the default
12913 in the history.
12914 (Fminibuffer_complete_word): When deleting the overlap, take account
12915 of its real position.
12916
12917 * fns.c (map_char_table): Fix previous change.
12918
12919 * syntax.c (find_defun_start):
12920 When open_paren_in_column_0_is_defun_start,
12921 return beginning of buffer.
12922
12923 * lisp.h (map_char_table): Declare added arg.
12924
12925 * fns.c (map_char_table): New arg TABLE gets the master table.
12926 All calls changed.
12927 Process default and inheritance, resorting to Faref if necessary.
12928
12929 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
12930 (Faccessible_keymaps): Pass new arg to map_char_table.
12931
12932 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
12933
12934 * casetab.c (set_case_table): Pass new arg to map_char_table.
12935
12936 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
12937
12938 * lisp.h (specbinding_func): New typedef.
12939 (struct specbinding): Use specbinding_func, to put the `volatile'
12940 in the right place.
12941
12942 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
12943 to avoid GCC warning.
12944
12945 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
12946
12947 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
12948
12949 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
12950
12951 * keyboard.c (apply_modifiers): Don't fill the other cache.
12952
12953 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
12954
12955 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
12956
12957 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
12958 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
12959 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
12960 (Fset_window_configuration, Fcurrent_window_configuration)
12961 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
12962 (Fpos_visible_in_window_p, mark_window_cursors_off)
12963 (window_internal_height, window_internal_width, Frecenter)
12964 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
12965 (replace_buffer_in_all_windows, init_window_once, init_window)
12966 (syms_of_window, keys_of_window): Move from lisp.h.
12967 * lisp.h: Move window.c declarations to window.h.
12968
12969 * bytecode.c: Include window.h.
12970 * emacs.c: Include window.h.
12971
12972 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
12973 (keyremap): Add `parent' field.
12974 (keyremap_step): Use it. Remove `parent' argument.
12975 (read_key_sequence): Setup and use the new `parent' field.
12976
12977 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
12978
12979 * keyboard.c (adjust_point_for_property): Ensure termination.
12980
12981 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
12982
12983 * keyboard.c (follow_key): Remove dead variable `did_meta'.
12984 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
12985 duplicated handling of function-key-map and key-translation-map
12986 in read_key_sequence.
12987 (read_key_sequence): Use them.
12988
12989 * keyboard.c (adjust_point_for_property): Try harder to move point
12990 to the non-sticky end of an invisible property.
12991
12992 * xdisp.c (single_display_prop_intangible_p): Make `space' display
12993 property intangible as well.
12994
12995 2003-05-10 Andreas Schwab <schwab@suse.de>
12996
12997 * xmenu.c (single_menu_item): Change last parameter to void* to
12998 avoid warning.
12999
13000 2003-05-09 Richard M. Stallman <rms@gnu.org>
13001
13002 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
13003 Bind Qinhibit_modification_hooks to t so there will be no GC.
13004 Rename local `tem' to `save_deactivate_mark'.
13005
13006 * eval.c (specpdl_ptr): Declare volatile.
13007 (unbind_to): Copy the whole binding and decrement specpdl_ptr
13008 before doing the work of unbinding it.
13009
13010 * lisp.h (struct specbinding): Declare elements volatile.
13011 (specpdl_ptr): Declare volatile.
13012
13013 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
13014
13015 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
13016 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
13017
13018 2003-05-08 Dave Love <fx@gnu.org>
13019
13020 * coding.c (Vlast_coding_system_used): Doc fix.
13021
13022 2003-05-07 Jason Rumney <jasonr@gnu.org>
13023
13024 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
13025 when system does not support them.
13026
13027 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
13028
13029 * fileio.c (Qwrite_region_annotate_functions): New var.
13030 (build_annotations): Use it to process the global part of the hook.
13031 (syms_of_fileio): Init and staticpro it.
13032
13033 * keyboard.c (safe_run_hooks_error): Display a message instead of
13034 silently ignoring the error.
13035
13036 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
13037
13038 * keyboard.c (input_available_signal): Mark static.
13039 (menu_bar_items): Use map_keymap.
13040 (menu_bar_one_keymap): Remove.
13041 (menu_bar_item): Adjust arglist (for use in map_keymap).
13042 Properly hide a second binding when not both are keymaps.
13043
13044 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
13045 (single_keymap_panes): Use it and map_keymap.
13046 (single_menu_item): Use skp as well.
13047
13048 * keymap.h (map_keymap_function_t): New type.
13049 (map_keymap): Declare.
13050
13051 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
13052 (map_keymap_call, Fmap_keymap): New functions.
13053 (syms_of_keymap): Defsubr map-keymap.
13054
13055 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13056
13057 * gtkutil.c (create_dialog, make_widget_for_menu_item)
13058 (make_menu_item, create_menus, xg_update_menu_item): Don't call
13059 ..._with_mnemonic functions for menu items.
13060
13061 2003-05-01 Kenichi Handa <handa@m17n.org>
13062
13063 * coding.c (coding_system_accept_latin_extra_p): Delete this
13064 function.
13065 (find_safe_codings): Pay attention to
13066 the property tranlsation-table-for-encode of each codings.
13067 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
13068
13069 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
13070
13071 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
13072
13073 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
13074
13075 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
13076
13077 * lisp.h (CHECK): Wrap args in parenthesis.
13078 (specbind): Fix doc: symbol = Qnil is not supported any more.
13079
13080 * bytecode.c (Fbyte_code) <unwind-protect>:
13081 Use Fprogn rather than 0 and Qnil.
13082
13083 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
13084 `double', and `triple' modifiers as well.
13085
13086 2003-04-30 Richard M. Stallman <rms@gnu.org>
13087
13088 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
13089
13090 * alloc.c (abort_on_gc): New variable.
13091 (Fgarbage_collect): Abort if abort_on_gc is set.
13092
13093 * lisp.h (abort_on_gc): Add decl.
13094
13095 * eval.c (Fsignal): Clear abort_on_gc.
13096
13097 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
13098 Reinit FORMAT_START and END before second scan.
13099
13100 * xdisp.c (move_it_vertically_backward): Do the final big else
13101 even if nlines is 0.
13102
13103 * xdisp.c (redisplay_internal): Finish the per-frame loop
13104 even if redisplay is suspended by input.
13105
13106 2003-04-24 Andrew Choi <akochoi@shaw.ca>
13107
13108 * macterm.c (x_list_fonts): Return all fonts that match if
13109 maxnames = -1.
13110
13111 2003-04-25 Kenichi Handa <handa@m17n.org>
13112
13113 * syntax.c (skip_chars): Fix previous change.
13114
13115 2003-04-24 Kenichi Handa <handa@m17n.org>
13116
13117 * syntax.c (skip_chars): Make the code faster by using the common
13118 technique of *p, *stop, and *endp.
13119
13120 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13121
13122 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
13123 tool_bar_items so GTK tool bar expose callback does not access items
13124 being updated.
13125
13126 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
13127
13128 * eval.c (Fapply): Undo last change and add a comment about why.
13129
13130 2003-04-18 Miles Bader <miles@gnu.org>
13131
13132 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
13133 pickier PARSE_MULTIBYTE_SEQ.
13134
13135 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
13136
13137 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
13138 Use XCDR, XCAR, CONSP.
13139 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
13140 (Fapply): Remove unnecessary GCPRO.
13141
13142 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
13143
13144 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
13145
13146 * buffer.h: Don't hardcode BEG==1.
13147
13148 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
13149
13150 2003-04-16 Richard M. Stallman <rms@gnu.org>
13151
13152 * xdisp.c (try_window, try_window_reusing_current_matrix):
13153 When at end of window, set window_end_pos to Z-ZV.
13154
13155 * buffer.c (Foverlay_recenter): Doc fix.
13156
13157 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
13158
13159 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
13160
13161 2003-04-14 Andrew Choi <akochoi@shaw.ca>
13162
13163 * macterm.c (mac_check_for_quit_char): Don't check more often than
13164 once a second.
13165
13166 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
13167
13168 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
13169 specially, so that they can't hide an implicit switch-frame event.
13170 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
13171 (head_table): Use switch-frame as event_kind for select-window.
13172 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
13173
13174 * editfns.c (Fformat): Lisp_Object/int mixup.
13175 (format2): Remove unused var numargs.
13176
13177 2003-04-11 Kenichi Handa <handa@m17n.org>
13178
13179 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
13180 (Qafter_insert_file_set_coding): New variable.
13181 (syms_of_fileio): Initialize and staticpro it. Delete declaration
13182 for after-insert-file-adjust-coding-function.
13183 (Finsert_file_contents): Call Qafter_insert_file_set_coding
13184 instead of Vafter_insert_file_adjust_coding_function.
13185
13186 2003-04-11 Kenichi Handa <handa@m17n.org>
13187
13188 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
13189
13190 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
13191 string. Callers changed.
13192
13193 2003-04-10 Kenichi Handa <handa@m17n.org>
13194
13195 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
13196 (syms_of_fileio): Declare it as a lisp variable.
13197 (Finsert_file_contents):
13198 Call Vafter_insert_file_adjust_coding_function before calling
13199 decode-format.
13200
13201 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13202
13203 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
13204 get GtkAdjustment as widget now is a GtkRange.
13205
13206 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
13207 GtkRange to avoid memory leak.
13208
13209 2003-04-09 Kenichi Handa <handa@m17n.org>
13210
13211 * xfaces.c (Vface_font_rescale_alist): New variable.
13212 (struct font_name): New member rescale_ratio.
13213 (font_rescale_ratio): New function.
13214 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
13215 (better_font_p): On comparing point sized, pay attention to
13216 recale_ratio member of fonts.
13217 (build_scalable_font_name): Reflect font->rescale_ratio in the
13218 font name.
13219 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13220
13221 * lread.c (read1): Before calling index, check if the 2nd
13222 arguemnt is in ASCII range.
13223
13224 2003-04-08 Richard M. Stallman <rms@gnu.org>
13225
13226 * fileio.c (Ffile_symlink_p): Doc fix.
13227
13228 * editfns.c (Fformat): Translate positions of text properties
13229 in the format string to apply them to the result.
13230
13231 * fileio.c (Finsert_file_contents): Doc fix.
13232 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
13233
13234 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
13235
13236 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
13237
13238 2003-04-08 Steven Tamm <steventamm@mac.com>
13239
13240 * mac.c (init_mac_osx_environment): Switch libexec and bin so
13241 that self-contained application finds libexec files.
13242
13243 2003-04-08 Kenichi Handa <handa@m17n.org>
13244
13245 * coding.c (code_convert_region_unwind):
13246 Set Vlast_coding_system_used to the argument.
13247 (code_convert_region): If post-read-conversion function changed
13248 the value of last-coding-sytem, keep the new value in
13249 coding->symbol so that it won't be overridden.
13250 (run_pre_post_conversion_on_str): Likewise.
13251 (coding_system_accept_latin_extra_p): New function.
13252 (find_safe_codings): Pay attention to characters registered in
13253 latin-extra-code-table.
13254
13255 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
13256
13257 * Makefile.in (md5.o): Add missing dependency info.
13258
13259 2003-04-06 Richard M. Stallman <rms@gnu.org>
13260
13261 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
13262
13263 * marker.c (verify_bytepos): New function.
13264
13265 * intervals.c (set_intervals_multibyte_1): When becoming
13266 multibyte, adjust right and left child sizes to a whole set of
13267 characters. If an interval gets zero total-length, delete it.
13268 If an interval consists of just its children, delete one of them.
13269
13270 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
13271 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
13272
13273 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
13274 All calls deleted.
13275 (lisp_malloc): Do the work here directly.
13276
13277 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
13278
13279 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
13280 char tables.
13281
13282 2003-04-04 Kenichi Handa <handa@m17n.org>
13283
13284 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
13285 destructively change "%S" to "%s".
13286
13287 2003-04-03 Miles Bader <miles@gnu.org>
13288
13289 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
13290 always set.
13291
13292 2003-04-01 Dave Love <fx@gnu.org>
13293
13294 * xfns.c (xpm_lookup_color): Grok "opaque".
13295
13296 2003-03-31 Andrew Choi <akochoi@shaw.ca>
13297
13298 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
13299 parent window ID.
13300
13301 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
13302
13303 * macterm.h (struct mac_output): Define x_pixels_diff and
13304 y_pixels_diff.
13305
13306 2003-03-31 Juanma Barranquero <lektu@terra.es>
13307
13308 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
13309 blockinput.h and files included from it.
13310
13311 2003-03-31 Kim F. Storm <storm@cua.dk>
13312
13313 The following changes consolidates the common code related to
13314 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
13315 files into frame.c.
13316
13317 * frame.c: Include blockinput.h.
13318 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
13319 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
13320 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
13321 related vars here.
13322 (struct frame_parm_table, frame_parms): New table for describing
13323 frame parameters and their associated Q-variable.
13324 The order of the parameters corresponds to the sequence of the
13325 frame_parm_handlers table in redisplay_interface.
13326 (x_fullscreen_move, x_set_frame_parameters)
13327 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
13328 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
13329 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13330 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
13331 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
13332 Generic functions for processing of frame parameters.
13333 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
13334 (display_x_get_resource, x_get_resource_string): Functions for
13335 generic access to X resources.
13336 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13337 (x_default_parameter, Fx_parse_geometry): Functions for generic
13338 access to frame parameters.
13339 (x_figure_window_size): Generic calculation of frame size.
13340 Fixed to add space needed for tool bar. Also setup size_hint_flags.
13341 (syms_of_frame): Intern and staticpro frame parameter variables.
13342 Defvar_lisp Vx_resource_class and Vx_resource_name here.
13343 Defsubr Sx_get_resource and Sx_parse_geometry.
13344
13345 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
13346 parameter related vars defined in frame.c.
13347 (EMACS_CLASS): Define here.
13348 (enum FULLSCREEN_*): Define here.
13349 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
13350 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
13351 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
13352 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
13353 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
13354 (x_set_visibility, x_set_autoraise, x_set_autolower)
13355 (x_set_unsplittable, x_set_vertical_scroll_bars)
13356 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
13357 (x_figure_window_size): Add prototypes.
13358
13359 * dispextern.h (frame_parm_handler): New typedef.
13360 (struct redisplay_interface): New member frame_parm_handlers.
13361 (enum resource_types): Move declaration here.
13362 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13363 (x_default_parameter): Add prototypes.
13364
13365 * window.c: Remove extern decl for frame parameter vars.
13366 (change_window_heights): New generic function;
13367 replaces x_change_window_heights. All users changed.
13368
13369 * window.h (change_window_heights): Add prototype.
13370
13371 * xfaces.c: Remove extern decl for frame parameter vars.
13372
13373 * xterm.h (EMACS_CLASS): Remove. Use generic define.
13374 (struct w32_display_info): Fix type of xrdb member.
13375 (enum FULLSCREEN_*): Remove.
13376 Remove prototypes for generic functions (in frame.h).
13377
13378 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13379 parameters now defined in frame.h and frame.c.
13380 (Vx_resource_name): Remove. Use generic var.
13381 (enum x_frame_parms): Remove (bogus, unused enum).
13382 (check_x_display_info): Make non-static (for frame.c).
13383 (struct x_frame_parm_table, x_frame_parms): Remove.
13384 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13385 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13386 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13387 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13388 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13389 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13390 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13391 Remove. Use generic functions instead.
13392 (enum resource_types): Remove.
13393 (x_set_scroll_bar_default_width): New global function (for frame.c).
13394 (Fx_create_frame): Depend on x_figure_window_size to add space for
13395 toolbar and setup size_hint_flags.
13396 (x_frame_parm_handlers): New table for redisplay_interface.
13397 (syms_of_xfns): Don't intern/staticpro removed vars.
13398
13399 * xterm.c: Remove unnecessary extern declarations.
13400 (x_fullscreen_adjust): Remove. Use generic instead.
13401 (x_redisplay_interface): Add x_frame_parm_handlers member.
13402
13403 * w32gui.h (XrmDatabase): New (dummy) typedef.
13404
13405 * w32term.h (EMACS_CLASS): Remove. Use generic define.
13406 (struct w32_display_info): Fix type of xrdb member.
13407 (enum FULLSCREEN_*): Remove.
13408 (x_fullscreen_adjust): Remove prototype.
13409
13410 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13411 parameters now defined in frame.h and frame.c.
13412 (Vx_resource_name): Remove. Use generic var.
13413 (enum x_frame_parms): Remove (bogus, unused enum).
13414 (check_x_display_info): Make non-static (for frame.c).
13415 (struct x_frame_parm_table, x_frame_parms): Remove.
13416 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13417 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13418 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13419 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13420 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13421 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13422 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13423 Remove. Use generic functions instead.
13424 (enum resource_types): Remove.
13425 (x_set_scroll_bar_default_width): New global function (for frame.c).
13426 (Fx_create_frame): Depend on x_figure_window_size to add space for
13427 toolbar and setup size_hint_flags.
13428 (w32_frame_parm_handlers): New table for redisplay_interface.
13429 (syms_of_w32fns): Don't intern/staticpro removed vars.
13430
13431 * w32term.c: Remove unnecessary extern declarations.
13432 (x_fullscreen_adjust): Remove. Use generic instead.
13433 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13434
13435 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13436
13437 * macgui.h (XrmDatabase): New (dummy) typedef.
13438
13439 * macterm.h (EMACS_CLASS): Remove.
13440 (struct mac_display_info): Add xrdb member.
13441 (struct mac_output): Add want_fullscreen member.
13442
13443 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13444 parameters now defined in frame.h and frame.c.
13445 (Vx_resource_name): Remove. Use generic var.
13446 (check_x_display_info): Make non-static (for frame.c).
13447 (struct x_frame_parm_table, x_frame_parms): Remove.
13448 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13449 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13450 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13451 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13452 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13453 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13454 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13455 Remove. Use generic functions instead.
13456 (enum resource_types): Remove.
13457 (x_set_scroll_bar_default_width): New global function (for frame.c).
13458 (mac_frame_parm_handlers): New table for redisplay_interface.
13459 (syms_of_macfns): Don't intern/staticpro removed vars.
13460
13461 * macterm.c: Remove unnecessary extern declarations.
13462 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13463
13464 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13465 included from it (atimer.h and systime.h).
13466
13467 2003-03-30 Andreas Schwab <schwab@suse.de>
13468
13469 * xdisp.c (x_insert_glyphs): Fix swapped width and height
13470 parameters for shift_glyphs_for_insert.
13471
13472 * macterm.c (x_redisplay_interface): Add missing entry for
13473 draw_vertical_window_border.
13474
13475 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13476
13477 * fileio.c (Fexpand_file_name): In the no-handler case, after
13478 expanding, look again for a handler and invoke it. This is needed
13479 for filenames like "/foo/../user@host:/bar/../baz" -- the first
13480 expansion produces "/user@host:/bar/../baz" which needs to be
13481 expanded again for the finame result "/user@host:/baz".
13482
13483 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13484
13485 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
13486 of area to be redrawn for better performance.
13487
13488 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
13489
13490 * xterm.c (take_vertical_position_into_account): Remove.
13491 (xt_action_hook): Call set_vertical_scroll_bar if needed.
13492 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
13493 (xm_scroll_callback, x_create_toolkit_scroll_bar)
13494 (x_set_toolkit_scroll_bar_thumb): Simplify.
13495 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
13496 (XTread_socket): Remove unused var.
13497 (x_make_frame_invisible): Replace goto with else.
13498
13499 * xdisp.c (set_vertical_scroll_bar): New fun.
13500 (redisplay_window): Use it.
13501
13502 2003-03-26 Richard M. Stallman <rms@gnu.org>
13503
13504 * xdisp.c (update_tool_bar): Recompute tool bar if
13505 update_mode_lines is set. Set w->update_mode_line
13506 only if the tool bar contents actually change.
13507 (update_menu_bar): Undo previous change.
13508
13509 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13510
13511 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
13512 (xg_frame_set_char_size): Calculate scroll bar width before frame
13513 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
13514 (xg_separator_p): Check for all documented separator types.
13515 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
13516 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
13517
13518 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
13519 so tool bar gets updated.
13520
13521 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
13522
13523 * data.c (store_symval_forwarding): Re-instate part of the code
13524 that was deleted with too much enthusiasm.
13525
13526 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
13527
13528 * data.c (store_symval_forwarding): Delete special read-only
13529 hack for type == -1, since we now use ->constant instead.
13530 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
13531
13532 * buffer.c (overlays_in): Declare static.
13533 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
13534 `constant' field rather than the variable's `type' field.
13535
13536 2003-03-24 Andrew Choi <akochoi@shaw.ca>
13537
13538 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
13539
13540 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
13541
13542 * fns.c [MAC_OSX]: Do not redefine vector.
13543
13544 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
13545
13546 * macgui.h: Remove definition of No_Cursor.
13547
13548 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
13549
13550 * xdisp.c: Define No_Cursor.
13551 (x_write_glyphs, notice_overwritten_cursor)
13552 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
13553 (note_mouse_highlight): Remove Mac-specific code.
13554 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
13555
13556 2003-03-24 John Paul Wallington <jpw@gnu.org>
13557
13558 * xdisp.c (redisplay_window): If mini window's buffer is not
13559 empty, then redisplay it like other windows.
13560
13561 2003-03-23 Kim F. Storm <storm@cua.dk>
13562
13563 * w32term.c (w32_draw_window_cursor): Fix last change.
13564
13565 2003-03-23 Kenichi Handa <handa@m17n.org>
13566
13567 * alloc.c (make_string_from_bytes, make_specified_string):
13568 Add `const' for the arg CONTENTS.
13569
13570 * lisp.h (make_string_from_bytes, make_specified_string):
13571 Prototypes adjusted.
13572
13573 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13574
13575 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
13576
13577 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
13578 (XG_SB_RANGE): New define.
13579
13580 * gtkutil.c (xg_fixed_handle_expose): New function.
13581 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
13582 expose events.
13583 (xg_update_scrollbar_pos): Take two more arguments, left and width
13584 of scroll bar including borders.
13585 Clear left and right part outside scroll bar separately as some
13586 themes have bars that are not an even number of pixels.
13587 Don't set reallocate_redraws, don't call
13588 gdk_window_process_all_updates.
13589 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
13590 so no need to change it. Calculate size and value with XG_SB_RANGE.
13591
13592 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
13593 Pass left and width of scroll bar including borders to
13594 xg_update_scrollbar_pos.
13595
13596 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
13597
13598 * Makefile.in: Make sure space precedes end-of-line backslashes.
13599
13600 2003-03-22 Kim F. Storm <storm@cua.dk>
13601
13602 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
13603 Add generic versions here. Remove system specific versions
13604 defined elsewhere.
13605
13606 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
13607 Add prototypes.
13608
13609 * xterm.h (STORE_NATIVE_RECT): New macro.
13610
13611 2003-03-21 Kim F. Storm <storm@cua.dk>
13612
13613 * xdisp.c (get_glyph_string_clip_rect):
13614 Use FRAME_INTERNAL_BORDER_WIDTH.
13615
13616 * dispextern.h (struct redisplay_interface): Add active_p
13617 argument to draw_window_cursor member. All uses changed.
13618
13619 2003-03-21 Kim F. Storm <storm@cua.dk>
13620
13621 The following changes consolidate code related to writing and
13622 inserting glyphs, exposing frame, the tool bar, the mouse face,
13623 the output cursor, and help echo from xterm.c, w32term.c and
13624 macterm.c into xdisp.c. It also generalizes the use of the
13625 window_part enum instead of using numeric values throughout.
13626
13627 * xdisp.c: Consolidate gui-independent code here.
13628 Include keymap.h.
13629 (Qhelp_echo): Import.
13630 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
13631 (help_echo_string, help_echo_window, help_echo_object)
13632 (previous_help_echo_string, help_echo_pos): Declare here.
13633 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
13634 (estimate_mode_line_height): Define here. Handle windowing
13635 systems directly (without using estimate_mode_line_height_hook).
13636 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
13637 (update_window_cursor, update_cursor_in_window_tree)
13638 (fast_find_position, fast_find_string_pos)
13639 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
13640 (expose_area, expose_line, expose_overlaps, expose_window)
13641 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
13642 declared static as they are only used locally in xdisp.c.
13643 (draw_glyphs): Rename from x_draw_glyphs and make static.
13644 (tool_bar_item_info, notice_overwritten_cursor): Make static.
13645 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13646 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
13647 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
13648 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13649 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
13650 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
13651 (note_mouse_highlight, x_clear_window_mouse_face)
13652 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
13653 (x_intersect_rectangles): New generic functions for use by xdisp.c
13654 and GUI front-ends.
13655 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
13656 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
13657
13658 * dispextern.h (Display_Info): Generic typedef for *_display_info.
13659 (NativeRectangle): Generic typedef for rectangle type.
13660 (enum window_part): Move here from window.c.
13661 (struct redisplay_interface): New members flush_display_optional,
13662 define_frame_cursor, clear_frame_area, draw_window_cursor,
13663 draw_vertical_window_border, shift_glyphs_for_insert.
13664 Rename member clear_mouse_face to clear_window_mouse_face.
13665 (estimate_mode_line_height_hook): Remove hook.
13666 (auto_raise_tool_bar_buttons_p): Don't declare extern.
13667 (tool_bar_item_info): Remove prototype.
13668 (help_echo_string, help_echo_window, help_echo_object)
13669 (previous_help_echo_string, help_echo_pos)
13670 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
13671 (x_stretch_cursor_p, output_cursor): Declare extern.
13672 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
13673 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
13674 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13675 (display_and_set_cursor, set_output_cursor, x_cursor_to)
13676 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
13677 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13678 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
13679 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
13680 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
13681 Add prototypes.
13682 (mode_line_string, marginal_area_string): Fix prototypes.
13683
13684 * window.c (enum window_part): Move to dispextern.h.
13685 (coordinates_in_window): Use enum window_part member names
13686 instead of numbers to describe return value.
13687 (struct check_window_data): Change part member to window_part.
13688 (check_window_containing): Return window_part unaltered.
13689 (window_from_coordinates): Change part arg from int to enum
13690 window_part. Allow part arg to be null. All users changed.
13691
13692 * window.h (window_from_coordinates): Fix prototype.
13693
13694 * term.c (estimate_mode_line_height): Move to xdisp.c.
13695
13696 * keyboard.c (make_lispy_event): Use enum window_part.
13697
13698 * dispnew.c (mode_line_string, marginal_area_string): Use enum
13699 window_part instead of int in arg list. Users changed.
13700
13701 * xterm.h (No_Cursor): Declare as None for X.
13702 (struct mac_output): Replace member cross_cursor by hand_cursor.
13703
13704 * xterm.c: Remove consolidated defines and code.
13705 (BETWEEN): Remove unused macro.
13706 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
13707 (x_define_frame_cursor, x_clear_frame_area)
13708 (x_draw_window_cursor): New X-specific functions for RIF.
13709 (x_redisplay_interface): Add new members.
13710
13711 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
13712
13713 * w32term.h (struct w32_output): Remove cross_cursor member.
13714
13715 * w32term.c: Remove consolidated defines and code.
13716 (BETWEEN): Remove unused macro.
13717 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
13718 (w32_define_frame_cursor, w32_clear_frame_area)
13719 (w32_draw_window_cursor): New W32-specific functions for RIF.
13720 (w32_redisplay_interface): Add new members.
13721
13722 * w32gui.h (No_Cursor): Define as 0 for W32.
13723 (XRectangle): Add X compatible rectangle type.
13724 (NativeRectangle): Declare as RECT for W32.
13725 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13726
13727 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
13728
13729 * w32console.c: Remove consolidated defines and code.
13730
13731 * msdos.h (Display_Info): Add generic typedef.
13732
13733 * msdos.c: Remove consolidated defines and code.
13734 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
13735
13736 * macterm.h (struct mac_output): Replace member cross_cursor by
13737 hand_cursor.
13738 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
13739
13740 * macterm.c: Remove consolidated defines and code.
13741 (BETWEEN): Remove unused macro.
13742 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
13743 (mac_define_frame_cursor, mac_clear_frame_area)
13744 (mac_draw_window_cursor): New Mac-specific functions for RIF.
13745 (x_redisplay_interface): Add new members.
13746
13747 * macgui.h (No_Cursor): Define as 0 for Mac.
13748 (XRectangle): Add X compatible rectangle type.
13749 (NativeRectangle): Declare as Rect for Mac.
13750 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13751
13752 * macfns.c (x_set_mouse_color): Setup hand_cursor.
13753 (x_set_cursor_color): Use x_display_and_set_cursor.
13754
13755 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
13756 included from it. Add dependency on keymap.h.
13757
13758 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
13759
13760 2003-03-21 Kenichi Handa <handa@m17n.org>
13761
13762 * fileio.c (Fexpand_file_name): Fix previous change.
13763
13764 2003-03-19 Kenichi Handa <handa@m17n.org>
13765
13766 * fileio.c (Ffile_name_directory): Reconstruct file name by
13767 make_specified_string.
13768 (Ffile_name_nondirectory, Ffile_name_as_directory)
13769 (Fdirectory_file_name, Fexpand_file_name)
13770 (Fsubstitute_in_file_name): Likewise.
13771 (Fread_file_name): Compare decoded homedir with DIR and
13772 DEFAULT_FILENAME.
13773
13774 * alloc.c (make_specified_string): If NCHARS is negative, count
13775 the number of characters.
13776
13777 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13778
13779 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
13780 all widgets.
13781
13782 * gtkutil.h: Removed xg_ignore_next_thumb.
13783
13784 2003-03-18 Kenichi Handa <handa@m17n.org>
13785
13786 * coding.c (Vchar_coding_system_table): Remove this variable.
13787 (Vcoding_system_safe_chars): New variable.
13788 (intersection): Remove this function.
13789 (find_safe_codings): Don't use Vchar_coding_system_table, but try
13790 all codings in SAFE_CODINGS.
13791 (Ffind_coding_systems_region_internal): Adjust for the change of
13792 find_safe_codings. Get generic coding systems from
13793 Vcoding_system_safe_chars.
13794 (Fdefine_coding_system_internal): New function.
13795 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
13796 Initialize and staticpro Vcoding_system_safe_chars.
13797
13798 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13799
13800 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
13801 equal old values before updating.
13802
13803 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
13804
13805 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
13806
13807 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13808
13809 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
13810 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
13811 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
13812 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
13813 (xg_create_scroll_bar): Pass bar to button event callback.
13814 (xg_find_top_left_in_fixed): New function.
13815 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
13816 whole scroll bar area. Get old position with
13817 xg_find_top_left_in_fixed, calculate and only clear needed areas.
13818 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
13819 dragging is in progress. Calculate whole as for Motif.
13820 Remove code that saved last values. Call gtk_range functions to
13821 set scroll bar sizes.
13822
13823 * gtkutil.h: Removed xg_ignore_next_thumb.
13824
13825 2003-03-17 Juanma Barranquero <lektu@terra.es>
13826
13827 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
13828 and files included from it.
13829
13830 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
13831
13832 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
13833 multiple occurrences of the same keymap under different prefixes.
13834 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
13835
13836 2003-03-16 Jason Rumney <jasonr@gnu.org>
13837
13838 * w32gui.h: Use HDC for Display.
13839
13840 * w32term.c (w32_encode_char): Prevent double-byte chars from
13841 crashing Emacs.
13842
13843 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
13844 as binary.
13845
13846 2003-03-16 Juanma Barranquero <lektu@terra.es>
13847
13848 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
13849
13850 2003-03-16 Kim F. Storm <storm@cua.dk>
13851
13852 The following changes consolidate some of the gui-independent
13853 parts of the processing and drawing of "glyph strings" from
13854 xterm.c, w32term.c, and macterm.c into xdisp.c.
13855
13856 * dispextern.h (struct glyph): Reduce face_id member from 22 to
13857 21 bits (this reduces number of faces from 4M to 2M).
13858 Replace W32 specific w32_font_type member (2 bits) by generic
13859 font_type member (3 bits) for portability.
13860 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
13861 (enum draw_glyphs_face): Define here.
13862 (struct glyph_string): Define here. Merge W32 and X versions.
13863 (struct redisplay_interface): New members per_char_metric,
13864 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
13865 (VCENTER_BASELINE_OFFSET): Define here.
13866 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
13867 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
13868
13869 * xdisp.c: Consolidate gui-independent "glyph string" code here.
13870 (dump_glyph_string): Moved here.
13871 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
13872 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
13873 (fill_composite_glyph_string, fill_glyph_string)
13874 (fill_image_glyph_string, fill_stretch_glyph_string)
13875 (left_overwritten, left_overwriting, right_overwritten)
13876 (right_overwriting, get_char_face_and_encoding)
13877 (set_glyph_string_background_width, compute_overhangs_and_x)
13878 (append_glyph, append_composite_glyph, produce_image_glyph)
13879 (take_vertical_position_into_account, append_stretch_glyph)
13880 (produce_stretch_glyph): New generic functions (based on X version).
13881 Call platform specific functions through rif.
13882 (INIT_GLYPH_STRING): New macro, hides W32 details.
13883 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
13884 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
13885 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
13886 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
13887 (notice_overwritten_cursor):
13888 Generic functions exported to platform modules. Users changed.
13889
13890 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
13891 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
13892 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
13893 New macros for consolidated code.
13894
13895 * xterm.c: Remove consolidated defines and code.
13896 (x_per_char_metric, x_encode_char)
13897 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
13898 (x_redisplay_interface): Add new members.
13899
13900 * w32gui.h (Display): Add dummy typedef for consolidation.
13901 (XChar2b): Define alias for wchar_t for consolidation.
13902 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13903
13904 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
13905 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
13906 New macros for consolidation.
13907
13908 * w32term.c: Remove consolidated defines and code.
13909 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
13910 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
13911 (w32_per_char_metric): Change font_type arg to int for RIF.
13912 (w32_encode_char): Return int according to RIF requirements.
13913 (w32_compute_glyph_string_overhangs): Adapt to RIF.
13914 (w32_get_glyph_overhangs): New function for RIF. Uses generic
13915 x_get_glyph_overhangs.
13916 (w32_redisplay_interface): Add new members.
13917
13918 * macgui.h (XChar2b): Move typedef here for consolidation.
13919 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
13920
13921 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
13922 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
13923 consolidation.
13924
13925 * macterm.c: Remove consolidated defines and code.
13926 (mac_per_char_metric): New function for RIF.
13927 (mac_encode_char): Adapt to new RIF requirements.
13928 (mac_compute_glyph_string_overhangs): Adapt for RIF.
13929 (x_redisplay_interface): Add new members.
13930
13931 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
13932
13933 * keymap.c (Vmenu_events): New var.
13934 (syms_of_keymap): Initialize it.
13935 (where_is_internal): Check more carefully what is a menu event.
13936
13937 2003-03-14 Richard M. Stallman <rms@gnu.org>
13938
13939 * lread.c (read1): After #!, exit loop on eof.
13940
13941 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13942
13943 * gtkutil.h: Add declaration for xg_frame_cleared.
13944
13945 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
13946
13947 * gtkutil.c (struct xg_last_sb_pos): New structure.
13948 (handle_fixed_child): New function.
13949 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
13950 and force a redraw on them.
13951 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
13952 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
13953 so we can avoid unneeded redraws.
13954 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
13955 and force a redraw on the scroll bar.
13956 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
13957 if xg_last_sb_pos shows the positions are up to date.
13958 (xg_frame_cleared): New function.
13959
13960 2003-03-13 Kenichi Handa <handa@m17n.org>
13961
13962 * coding.c (Fdetect_coding_region): Fix docstring.
13963 (Fdetect_coding_string): Fix docstring.
13964
13965 2003-03-13 Andreas Schwab <schwab@suse.de>
13966
13967 * gtkutil.c: Add prototype for create_menus.
13968
13969 * data.c (long_to_cons): Fix type of top.
13970
13971 * xselect.c (selection_data_to_lisp_data): Use int instead of
13972 long for an integer of size 4.
13973
13974 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
13975 (xg_tool_bar_help_callback): Likewise.
13976
13977 2003-03-12 Andreas Schwab <schwab@suse.de>
13978
13979 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
13980
13981 2003-03-12 Kim F. Storm <storm@cua.dk>
13982
13983 The following changes consolidate the fringe handling from
13984 xterm.c, w32term.c, and macterm.c into xdisp.c.
13985
13986 * xdisp.c: Consolidate fringe handling code here.
13987 (left_bits, right_bits, continued_bits, continuation_bits)
13988 (ov_bits, zv_bits): Define fringe bitmaps.
13989 (fringe_bitmaps): New array holding fringe bitmaps.
13990 (draw_fringe_bitmap): Draw a specific bitmap; call display
13991 specific drawing routine via rif->draw_fringe_bitmap.
13992 (draw_row_fringe_bitmaps): Generic replacement for
13993 x_draw_row_fringe_bitmaps; all callers changed.
13994 (compute_fringe_widths): Generic replacement for
13995 x_compute_fringe_widths; all callers changed.
13996
13997 * dispextern.h (enum fringe_bitmap_type): Define here.
13998 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
13999 (fringe_bitmaps): Declare extern.
14000 (struct redisplay_interface): New member draw_fringe_bitmap.
14001 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
14002
14003 * xterm.c: Remove generic fringe code.
14004 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14005 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14006
14007 * w32term.c: Remove generic fringe code.
14008 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
14009 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
14010
14011 * macterm.c: Remove generic fringe code.
14012 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14013 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14014
14015 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
14016
14017 * print.c (Fprin1_to_string): Return unibyte string if possible.
14018
14019 2003-03-09 David Kastrup <dak@gnu.org>
14020
14021 * process.c (read_process_output): We have allocated enough space
14022 for readmax and carryover, so actually use the alloted space.
14023
14024 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14025
14026 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
14027 toolkit scrollbar click.
14028
14029 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
14030 for USE_GTK.
14031 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
14032 also.
14033 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
14034 scrollbar and control is pressed, call x_scroll_bar_handle_click.
14035
14036 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
14037
14038 * gtkutil.c (xg_get_scroll_id_for_window): New function.
14039 (xg_tool_bar_item_expose_callback): New function.
14040 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
14041 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
14042 on the tool bar widget.
14043 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
14044 to expose on the tool bar item widgets.
14045
14046 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14047
14048 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
14049 struct image* when deciding to update (struct image* may have been
14050 deleted from the image cache).
14051
14052 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
14053 the event isn't for a frame (i.e. for dialogs).
14054
14055 2003-03-07 Kenichi Handa <handa@m17n.org>
14056
14057 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
14058 composition components reaches the limit, terminate composing.
14059 (COMPOSITION_OK): New macro.
14060 (detect_coding_iso2022): Use it if an escape sequence for
14061 composition is found.
14062 (coding_restore_composition): Adjust the number of composition
14063 components if it is not sane.
14064
14065 2003-03-06 Juanma Barranquero <lektu@terra.es>
14066
14067 * w32term.h (struct w32_display_info): Add xrdb member to support
14068 passing resources via -xrm on Windows.
14069
14070 * w32term.c (w32_make_rdb): New function.
14071 (w32_term_init): Use it to initialize xrdb member of w32_display_info
14072 struct. Delete leftover code.
14073
14074 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
14075 for resources passed on the command line.
14076
14077 * w32reg.c (w32_get_rdb_resource): New function.
14078 (x_get_string_resource): Use it, so resources passed with -xrm
14079 supercede the ones in the registry.
14080
14081 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14082
14083 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
14084 instead of x_top_window_to_frame.
14085
14086 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14087
14088 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
14089 when restarting Emacs.
14090
14091 2003-03-03 Richard M. Stallman <rms@gnu.org>
14092
14093 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
14094 to run kill-buffer-query-functions.
14095 (Qkill_buffer_query_functions): New var.
14096 (syms_of_buffer): Init and staticpro it.
14097
14098 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14099
14100 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
14101
14102 2003-02-25 Kim F. Storm <storm@cua.dk>
14103
14104 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
14105 If centering point failed to make whole line visible and vscroll
14106 is non-zero, disable vscroll and try centering point again.
14107
14108 * lread.c (read1): Accept `single space' syntax like (? x).
14109
14110 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14111
14112 * keyboard.c (cancel_hourglass_unwind): Surround with
14113 #ifdef HAVE_X_WINDOWS
14114
14115 2003-02-25 Kenichi Handa <handa@m17n.org>
14116
14117 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
14118 process only when "subprocesses" is defined.
14119
14120 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
14121
14122 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
14123
14124 2003-02-24 Juanma Barranquero <lektu@terra.es>
14125
14126 * callint.c (fix_command): Declare as static void and move before
14127 Fcall_interactively.
14128
14129 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
14130 (syms_of_xdisp): Don't initialize Qwhen.
14131
14132 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14133
14134 * keyboard.c (cancel_hourglass_unwind): New function.
14135 (command_loop_1): Cancel hourglass with unwind-protect.
14136
14137 2003-02-23 Richard M. Stallman <rms@gnu.org>
14138
14139 * callint.c (fix_command): New subroutine, from Fcall_interactively.
14140 Detect (when ... (region-beginning)) etc.
14141 (Fcall_interactively): Call fix_command.
14142 (Qif, Qwhen): New variables.
14143 (syms_of_callint): Init and staticpro them.
14144
14145 * regex.c (print_partial_compiled_pattern): Output to stderr.
14146
14147 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14148
14149 * dired.c (directory_files_internal): Don't expand directory.
14150 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
14151 instead. From Lars Hansen <larsh@math.ku.dk>.
14152
14153 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
14154
14155 * fns.c (string_to_multibyte): Remove unused var i.
14156 (Flanginfo): Fix int/Lisp_Object mixup.
14157 (void_call2): New fun.
14158 (Fmap_char_table): Use it in place of call2.
14159
14160 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
14161
14162 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
14163
14164 * keymap.c (copy_keymap_1): Make it static.
14165
14166 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
14167
14168 2003-02-22 David Ponce <david@dponce.com>
14169
14170 * lread.c (Fload): Don't check STRING_MULTIBYTE.
14171
14172 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14173
14174 * process.h: Removed subtty field from struct Lisp_Process.
14175
14176 * process.c (create_process): Remove setting of subtty.
14177 (emacs_get_tty_pgrp): New function.
14178 (Fprocess_running_child_p, process_send_signal):
14179 Call emacs_get_tty_pgrp instead of ioctl.
14180 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
14181
14182 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14183
14184 * keymap.c (Fdefine_key): Doc fix.
14185
14186 2003-02-21 Juanma Barranquero <lektu@terra.es>
14187
14188 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
14189
14190 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
14191 POLLING_PROBLEM_IN_SELECT.
14192
14193 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
14194 Delete #undef of POLLING_PROBLEM_IN_SELECT.
14195
14196 * s/hpux10-20.h: New file.
14197
14198 * process.c (wait_reading_process_input):
14199 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
14200
14201 2003-02-20 Kenichi Handa <handa@m17n.org>
14202
14203 * fontset.c (check_fontset_name): If NAME is nil, return the
14204 default fontset.
14205 (override_font_info): New function.
14206 (Fset_fontset_font): Document that NAME nil means the default fontset.
14207 (Ffontset_info): If FONTSET is not the default fontset, merge
14208 FONTSET onto the copy of the default fontset, and work on that
14209 copy. Document that NAME nil means the default fontset.
14210 (Ffontset_font): Document that NAME nil means the default fontset.
14211
14212 * process.c (setup_process_coding_systems): If the process's
14213 in/out descriptor is -1, do nothing.
14214
14215 2003-02-19 Andreas Schwab <schwab@suse.de>
14216
14217 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
14218 Add prototypes.
14219
14220 2003-02-19 Kenichi Handa <handa@m17n.org>
14221
14222 * xfaces.c (try_alternative_families): Try all scalable fonts if
14223 Vscalable_fonts_allowed is not Qt.
14224
14225 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14226
14227 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
14228
14229 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14230
14231 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
14232 names.
14233
14234 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
14235 (sorted_font_list): Move allocation of struct font_name to
14236 x_face_list_fonts.
14237 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
14238 (Fx_list_fonts): Set maxnames to -1 to get all font names.
14239
14240 2003-02-18 Kim F. Storm <storm@cua.dk>
14241
14242 * lread.c (read1): Fix last change.
14243 "`" is not always special. Allow "?" after a character constant.
14244
14245 2003-02-18 Andrew Choi <akochoi@shaw.ca>
14246
14247 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
14248
14249 2003-02-18 Andreas Schwab <schwab@suse.de>
14250
14251 * window.c (window_scroll_pixel_based): Move outside a
14252 multi-glyph character before setting new window start.
14253
14254 * xdisp.c (in_display_vector_p): New function.
14255 * dispextern.h (in_display_vector_p): Declare.
14256
14257 2003-02-18 Kim F. Storm <storm@cua.dk>
14258
14259 * lread.c (read1): Fix and relax read syntax.
14260 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
14261 Only recognize "," after dotted-pair dot if inside backquote.
14262 Never include "`" or "," (inside backquote) in a symbol.
14263 Allow dotted-pair dot after a character constant.
14264 Allow "`" and "," (inside backquote) after a character constant.
14265
14266 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14267
14268 * gtkutil.c (xg_tool_bar_expose_callback): New function.
14269 (xg_create_tool_bar): Force style of tool bar to be horizontal with
14270 icons. Set name of tool bar to emacs-toolbar.
14271 (update_frame_tool_bar): Connect expose event to
14272 xg_tool_bar_expose_callback.
14273
14274 2003-02-17 Richard M. Stallman <rms@gnu.org>
14275
14276 * keyboard.c (this_command_key_count_reset): New variable.
14277 Initiatize to 0 where this_command_key_count is set.
14278 (read_char): Save and restore this_command_key_count_reset
14279 around input method code.
14280 (read_char): If this_command_key_count_reset, echo reread commands.
14281 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
14282
14283 2003-02-17 Kenichi Handa <handa@m17n.org>
14284
14285 * fns.c (string_to_multibyte): Always return a multibyte string.
14286
14287 2003-02-16 Jason Rumney <jasonr@gnu.org>
14288
14289 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
14290 Negative max_fonts parameter means list all.
14291
14292 2003-02-14 Dave Love <fx@gnu.org>
14293
14294 * fns.c (Flanginfo): Doc fix.
14295
14296 2003-02-13 Kim F. Storm <storm@cua.dk>
14297
14298 * lread.c (read_escape): Interpret \s as a SPACE character, except
14299 for \s-X in a character constant which still is the super modifier.
14300 (read1): Signal an `invalid read syntax' error if a character
14301 constant is immediately followed by a digit or symbol character.
14302
14303 * search.c (Fmatch_data): Doc fix. Explicitly state that
14304 match-data is undefined if last search failed.
14305
14306 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
14307 All uses changed.
14308
14309 2003-02-12 Juanma Barranquero <lektu@terra.es>
14310
14311 * eval.c (Fdefmacro): Fix typo.
14312
14313 2003-02-12 Kim F. Storm <storm@cua.dk>
14314
14315 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
14316 macro is a string, convert meta modifiers in string when copying
14317 the string into a vector.
14318
14319 2003-02-11 Kim F. Storm <storm@cua.dk>
14320
14321 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
14322
14323 2003-02-11 Kenichi Handa <handa@m17n.org>
14324
14325 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
14326
14327 2003-02-10 Kim F. Storm <storm@cua.dk>
14328
14329 * process.c: Doc fixes.
14330 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
14331
14332 2003-02-10 Kenichi Handa <handa@m17n.org>
14333
14334 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
14335
14336 * process.c (QCfilter_multibyte): New variable.
14337 (setup_process_coding_systems): New function.
14338 (Fset_process_buffer, Fset_process_filter):
14339 Call setup_process_coding_systems.
14340 (Fstart_process): Initialize the member `filter_multibyte' of
14341 struct Lisp_Process.
14342 (create_process): Call setup_process_coding_systems.
14343 (Fmake_network_process): New keyward `:filter-multibyte'.
14344 Initialize the member `filter_multibyte' of struct Lisp_Process.
14345 Call setup_process_coding_systems.
14346 (server_accept_connection): Call setup_process_coding_systems.
14347 (read_process_output): If the process has a filter, decide the
14348 multibyteness of a string to given to the filter by
14349 `filter_multibyte' member of the process. If the process doesn't
14350 have a filter and the result of conversion is unibyte, use
14351 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
14352 multibyte form.
14353 (Fset_process_coding_system): Call setup_process_coding_systems.
14354 (Fset_process_filter_multibyte): New function.
14355 (Fprocess_filter_multibyte_p): New function.
14356 (syms_of_process): Intern and staticpro QCfilter_multibyte.
14357 Defsubr Sset_process_filter_multibyte and
14358 Sprocess_filter_multibyte_p.
14359
14360 * process.h (struct Lisp_Process): New member filter_multibyte.
14361
14362 * lisp.h (setup_process_coding_systems): Add prototype.
14363
14364 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
14365 process, update coding systems for the process.
14366
14367 2003-02-09 Kenichi Handa <handa@m17n.org>
14368
14369 * fns.c (string_to_multibyte): New function.
14370 (Fstring_to_multibyte): New function.
14371 (syms_of_fns): Defsubr it.
14372
14373 2003-02-08 Andreas Schwab <schwab@suse.de>
14374
14375 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
14376 instead of the substitution.
14377
14378 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14379
14380 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
14381
14382 * xmenu.c (menu_position_func): Adjust menu popup position so that
14383 the menu is fully visible.
14384
14385 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14386
14387 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
14388 (x_make_frame_invisible, x_wm_set_icon_position):
14389 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
14390
14391 * xfns.c (x_set_name, x_set_title): Ditto.
14392
14393 2003-02-04 Richard M. Stallman <rms@gnu.org>
14394
14395 * keyboard.c (echo_now): Update before_command_echo_length.
14396 (Freset_this_command_lengths): Reset this_command_key_count etc.
14397 immediately rather than arranging to do it later.
14398 (before_command_key_count_1, before_command_echo_length_1)
14399 (before_command_restore_flag): Vars deleted.
14400 (add_command_key): Don't handle before_command_restore_flag.
14401 (read_char, record_menu_key): Don't update before_command_key_count or
14402 before_command_echo_length.
14403 (read_char): Don't handle before_command_restore_flag.
14404
14405 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
14406 in direct-output clauses if it wouldn't be called in the ordinary case.
14407
14408 2003-02-04 Kim F. Storm <storm@cua.dk>
14409
14410 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14411
14412 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14413
14414 * gtkutil.c (remove_from_container): Copying list is not needed.
14415 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14416 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14417 on list returned from gtk_container_get_children to avoid memory leak.
14418
14419 2003-02-01 Jason Rumney <jasonr@gnu.org>
14420
14421 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14422 local malloc.
14423 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14424 definitions in xpm.h.
14425 (init_xpm_functions): New function.
14426 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14427 (init_external_image_libraries): Try to load libXpm.dll.
14428
14429 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14430 timestamp.
14431
14432 2003-01-31 Dave Love <fx@gnu.org>
14433
14434 * syntax.c (Fskip_chars_forward)
14435 (open-paren-in-column-0-is-defun-start): Doc fix.
14436
14437 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14438
14439 * fileio.c: Support // at start of name for Cygwin (just added proper
14440 preprocessor tests).
14441
14442 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14443
14444 * Makefile.in: Use @EXEEXT@ for Cygwin.
14445
14446 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14447
14448 * s/cygwin.h: Added for Cygwin port.
14449
14450 2003-01-31 Juanma Barranquero <lektu@terra.es>
14451
14452 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14453 when including gif_lib.h.
14454 (init_gif_functions, init_tiff_functions): New functions.
14455 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14456 Windows. Disable color table lookups. Call library functions
14457 through pointers determined at runtime.
14458 (init_external_image_libraries): Try to load libungif.dll and
14459 libtiff.dll.
14460
14461 2003-01-31 Kenichi Handa <handa@m17n.org>
14462
14463 * xdisp.c (SKIP_GLYPHS): New macro.
14464 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14465
14466 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14467
14468 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
14469
14470 2003-01-30 Dave Love <fx@gnu.org>
14471
14472 * alloc.c (Vgc_elapsed, gcs_done): New variables.
14473 (Fgarbage_collect): Use them.
14474 (init_alloc, syms_of_alloc): Set them up.
14475
14476 2003-01-30 Juanma Barranquero <lektu@terra.es>
14477
14478 * w32fns.c (init_external_image_libraries): Add missing operator.
14479
14480 2003-01-29 Jason Rumney <jasonr@gnu.org>
14481
14482 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
14483 an alternative name for jpeg.dll.
14484
14485 2003-01-29 Kenichi Handa <handa@m17n.org>
14486
14487 * xdisp.c (set_cursor_from_row): Pay attention to string display
14488 properties.
14489
14490 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
14491
14492 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
14493 <escape>.
14494 (keycode_to_xkeysym_table): Reformat and add more comments.
14495 (XTread_socket): Drop special case for backspace.
14496
14497 2003-01-28 Andrew Choi <akochoi@shaw.ca>
14498
14499 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
14500 values in old-style RGB specs.
14501
14502 2003-01-27 Juanma Barranquero <lektu@terra.es>
14503
14504 * w32fns.c (init_external_image_libraries): Try alternate names for the
14505 jpeg dll.
14506
14507 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14508
14509 * gtkutil.c (create_dialog, xg_separator_p)
14510 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
14511 before calling strcmp or strlen.
14512
14513 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14514
14515 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
14516 and handle image load failure.
14517
14518 2003-01-26 Jason Rumney <jasonr@gnu.org>
14519
14520 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
14521 New functions.
14522 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
14523 Disable color table lookups. Call jpeg library functions
14524 through pointers determined at runtime.
14525 (init_external_image_libraries): Try to load jpeg.dll.
14526
14527 2003-01-25 Richard M. Stallman <rms@gnu.org>
14528
14529 * lisp.h: Declare format2 instead of format1.
14530
14531 * fileio.c (barf_or_query_if_file_exists):
14532 Call format2 instead of format1.
14533
14534 * editfns.c (format2): New function, replaces format1
14535 but takes exactly two Lisp Objects as format args.
14536
14537 * buffer.c (Fkill_buffer): Call format2 instead of format1.
14538
14539 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14540
14541 * xterm.h: Change to return value of x_dispatch_event to int.
14542
14543 * xterm.c (x_filter_event): New function.
14544 (event_handler_gdk, XTread_socket): Call x_filter_event.
14545 (x_dispatch_event): Change to return value of finish.
14546 (event_handler_gdk): Use return value from x_dispatch_event.
14547
14548 * xfns.c (x_window): Call create_frame_xic for GTK version to
14549 initialize input methods.
14550
14551 * gtkutil.h: Add (void) prototypes.
14552
14553 * gtkutil.c (create_menus): Remove code that puts the help menu to
14554 the right.
14555
14556 2003-01-25 Jason Rumney <jasonr@gnu.org>
14557
14558 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
14559 [HAVE_PNG]: Sync with xfns.c version.
14560 (png_load): Adjust colors for Windows. Use Windows
14561 bitmaps. Disable color table lookups.
14562 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
14563 (init_png_functions): New function.
14564 (png_read_from_memory, png_load): Call png library functions
14565 through pointers determined at runtime.
14566 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
14567 (init_external_image_libraries): New function.
14568 (init_xfns): Call it.
14569
14570 2003-01-24 Andreas Schwab <schwab@suse.de>
14571
14572 * minibuf.c (Fminibuffer_message): Verify type of parameter.
14573
14574 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14575
14576 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
14577 of static initializer.
14578
14579 2003-01-24 Dave Love <fx@gnu.org>
14580
14581 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
14582 architectures.
14583
14584 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
14585 Use __alignof__.
14586
14587 2003-01-24 Kenichi Handa <handa@m17n.org>
14588
14589 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
14590 It it is nonzero, don't pretend that an invisible area doesn't exist.
14591 (command_loop_1): Call adjust_point_for_property with proper
14592 second arg.
14593
14594 2003-01-22 Jason Rumney <jasonr@gnu.org>
14595
14596 Sync changes with xterm.c and xfns.c.
14597
14598 * w32term.c (x_draw_glyph_string_foreground)
14599 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14600
14601 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
14602 phys_cursor's hpos is overwritten. This is still not completely
14603 correct, as it doesn't really make sense to use hpos at all to
14604 get the cursor glyph (as that is relative to the width of the
14605 characters on the line, which may have changed during the update).
14606
14607 * w32term.c (notice_overwritten_cursor): Handle the special case
14608 of the cursor being in the first blank non-text line at the
14609 end of a window.
14610
14611 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14612 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14613 Compute from the x position returned by x_draw_glyphs.
14614
14615 (x_display_and_set_cursor): Don't set phys_cursor_width here,
14616 except for NO_CURSOR and system caret, to make phys_cursor_width
14617 contain what its name suggests.
14618 (notice_overwritten_cursor): Consider the cursor image erased if
14619 the output area intersects the cursor image in y-direction.
14620
14621 * w32term.c (note_mode_line_or_margin_highlight): Rename from
14622 note_mode_line_highlight and extend.
14623
14624 * w32term.c (last_window): New variable.
14625 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
14626 (note_mouse_movement): Remove reimplemented code in #if 0.
14627
14628 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
14629 not update_mode_lines, and always set it to 1.
14630
14631 2003-01-21 Jason Rumney <jasonr@gnu.org>
14632
14633 * w32fns.c (IDC_HAND): Define it if system headers don't.
14634
14635 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
14636
14637 * w32term.h (struct w32_output): New member hand_cursor.
14638 (WM_EMACS_SETCURSOR): New message definition.
14639
14640 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
14641 function w32_define_cursor.
14642 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
14643 position, change member name output_data.x to output_data.w32 and
14644 add function w32_define_cursor.
14645 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
14646 and change member name output_data.x to output_data.w32.
14647 (w32_initialize_display_info):
14648 Setup dpyinfo->vertical_scroll_bar_cursor.
14649
14650 * w32fns.c (Vx_hand_shape): New variable.
14651 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
14652 WM_EMACS_SETCURSOR.
14653 (x-create-frame): Setup Cursor types.
14654
14655 2003-01-21 David Ponce <david@dponce.com>
14656
14657 * w32term.c (w32_encode_char): For DIM=1 charset, set
14658 ccl->reg[2] to -1 before calling ccl_driver.
14659 (Sync. with xterm.c x_encode_char change by Kenichi Handa
14660 <handa@m17n.org> on 2002-09-30.)
14661 (w32_draw_relief_rect): Declare all args.
14662 (w32_define_cursor): New.
14663
14664 * w32fns.c (w32_load_cursor): New function.
14665 (w32_init_class): Use it.
14666 (x_put_x_image): Declare all args.
14667
14668 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
14669
14670 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
14671
14672 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14673
14674 * gtkutil.c: Must include stdio.h before termhooks.h
14675
14676 2003-01-21 Dave Love <fx@gnu.org>
14677
14678 * alloc.c (Fgc_status): Print zombie list.
14679 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14680 Fix assignment of zombies.
14681 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14682 Don't take car of non-cons.
14683
14684 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14685
14686 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14687
14688 2003-01-20 David Ponce <david@dponce.com>
14689
14690 * w32menu.c (digest_single_submenu): Declare all args.
14691
14692 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
14693 changes in xmenu.c:
14694
14695 (parse_single_submenu): Use individual keymap's prompt
14696 string as pane name, if there is one.
14697 (set_frame_menubar): Save menu_items_n_panes from each call to
14698 parse_single_submenu and use it when calling digest_single_submenu.
14699
14700 2003-01-20 Steven Tamm <steventamm@mac.com>
14701
14702 * macterm.c (XTread_socket): Check for valid, visible window
14703 before sending a scroll-wheel event.
14704
14705 2003-01-20 Richard M. Stallman <rms@gnu.org>
14706
14707 * xdisp.c (redisplay_window): If mini window's buffer is not
14708 a minibuffer, then redisplay it like other windows.
14709
14710 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14711
14712 * gtkutil.c (xg_create_frame_widgets): Check if there is an
14713 external tool bar before setting tool bar height.
14714
14715 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14716
14717 * xterm.c (handle_one_xevent): Surround popup_activated
14718 with #ifdef:s for non-toolkit version.
14719
14720 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
14721 (gtkutil.o): New file.
14722 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
14723 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
14724
14725 * gtkutil.c: New file for GTK version.
14726
14727 * gtkutil.h: New file for GTK version.
14728
14729 * xterm.h: Add xt_or_gtk_widget.
14730 Include gtk files for USE_GTK.
14731 (struct x_output): Add toolbar_height.
14732 (struct x_output): Add GTK widgets and Gdk size_hints.
14733 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
14734 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
14735 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
14736
14737 * xterm.c: Include gtkutil.h for USE_GTK.
14738 (free_frame_menubar): Declare extern void for USE_GTK.
14739 (note_mouse_highlight): Check popup_activated for USE_GTK.
14740 (xt_action_hook): Don't compile if USE_GTK.
14741 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
14742 (xg_scroll_callback): New function.
14743 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
14744 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
14745 for USE_GTK.
14746 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
14747 xg_show_scroll_bar for USE_GTK.
14748 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
14749 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
14750 (event_handler_gdk): New function for USE_GTK.
14751 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
14752 (handle_one_xevent): Make sure widget is mapped before
14753 calling x_real_positions for USE_GTK.
14754 (XTread_socket): Add GTK event loop for USE_GTK.
14755 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
14756 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
14757 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
14758 (x_iconify_frame): Add code for USE_GTK.
14759 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
14760 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
14761 is in gtkutil.c.
14762 (x_term_init): Add initialization for GTK.
14763 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
14764
14765 * xmenu.c: Include gtkutil.h for USE_GTK.
14766 (Fx_popup_menu): Use current position if x and y is NIL.
14767 (single_menu_item, single_menu_item, Fx_popup_dialog):
14768 Check for USE_GTK.
14769 (popup_widget_loop): New function for USE_GTK.
14770 (x_activate_menubar): Add code for USE_GTK.
14771 (popup_activate_callback, popup_deactivate_callback)
14772 (menu_highlight_callback, menubar_selection_callback):
14773 Add USE_GTK versions.
14774 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
14775 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
14776 (free_frame_menubar): Only compile if not USE_GTK. GTK version
14777 is in gtkutil.c.
14778 (popup_selection_callback): New version for USE_GTK.
14779 (create_and_show_popup_menu): New fuction, one USE_GTK version and
14780 one USE_X_TOOLKIT version.
14781 (xmenu_show): Call create_and_show_popup_menu.
14782 (dialog_selection_callback): New version for USE_GTK.
14783 (create_and_show_dialog): New fuction, one USE_GTK version and
14784 one USE_X_TOOLKIT version.
14785 (xdialog_show): Call create_and_show_dialog.
14786
14787 * xfns.c: Include gtkutil for USE_GTK.
14788 (x_window_to_frame, x_any_window_to_frame)
14789 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
14790 (x_top_window_to_frame): Add code for USE_GTK.
14791 (x_set_background_color): Call xg_set_background_color for GTK.
14792 (x_set_menu_bar_lines): Check for USE_GTK.
14793 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
14794 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
14795 (x_window): Call xg_create_frame_widgets for USE_GTK.
14796 (Fx_create_frame): Check for USE_GTK
14797 (Fx_file_dialog): New implementation for USE_GTK.
14798
14799 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
14800 (update_menu_bar): Add check for USE_GTK.
14801 (update_tool_bar): Add check for USE_GTK and external tool bar.
14802 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
14803 (redisplay_internal): Add check for USE_GTK and popup_activated.
14804 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
14805 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
14806 (display_menu_bar): Add check for USE_GTK
14807
14808 * lisp.h (Vx_resource_name): Declare extern.
14809
14810 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
14811 for USE_GTK.
14812 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
14813
14814 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
14815 (FRAME_EXTERNAL_TOOL_BAR): New macro.
14816 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
14817
14818 * fileio.c (Fread_file_name): Add check for USE_GTK.
14819
14820 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
14821 Add check for USE_GTK.
14822
14823 * config.in: Added HAVE_GTK
14824
14825 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
14826
14827 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
14828
14829 * charset.h (Funibyte_char_to_multibyte): Export.
14830
14831 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14832
14833 * xmenu.c (mouse_position_for_popup): New function.
14834 (Fx_popup_menu): Call mouse_position_for_popup for X and
14835 mouse_position_hook for others.
14836
14837 2003-01-17 Kim F. Storm <storm@cua.dk>
14838
14839 * editfns.c (Finsert): Mention `string-make-multibyte' and
14840 `string-as-multibyte' in doc string.
14841
14842 2003-01-17 Kenichi Handa <handa@m17n.org>
14843
14844 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
14845
14846 * editfns.c (Fformat): Convert an unibyte char argument that is
14847 formatted by "%c" to multibyte if the total result must be a
14848 multibyte string.
14849
14850 2003-01-16 Kim F. Storm <storm@cua.dk>
14851
14852 * process.c (set-process-filter): Document unibyte/multibyte-ness
14853 of string argument.
14854
14855 2003-01-16 Kenichi Handa <handa@m17n.org>
14856
14857 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
14858
14859 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
14860 (re_search_2): Likewise.
14861
14862 2003-01-15 Kenichi Handa <handa@m17n.org>
14863
14864 * xdisp.c (message_dolog): Fix bug of the case that *Message*
14865 buffer is unibyte.
14866
14867 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
14868
14869 * fns.c (Fsubstring): Clarify doc string.
14870
14871 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
14872 (Fprevious_char_property_change)
14873 (Fnext_single_char_property_change)
14874 (Fprevious_single_char_property_change, Fnext_property_change)
14875 (Fnext_single_property_change, Fprevious_property_change)
14876 (Fprevious_single_property_change, Fadd_text_properties)
14877 (Fput_text_property, Fset_text_properties)
14878 (Fremove_text_properties, Fremove_list_of_text_properties)
14879 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
14880
14881 2003-01-14 Kim F. Storm <storm@cua.dk>
14882
14883 * process.h (struct Lisp_Process): New member plist replaces old
14884 member private_vars. All uses changed.
14885
14886 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
14887 (QCplist): Rename from QCvars. Change all uses.
14888 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
14889 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
14890 (syms_of_process): Intern, staticpro, defsubr these.
14891 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
14892
14893 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
14894
14895 * m/delta.h: Remove (obsolete).
14896
14897 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
14898
14899 * fileio.c (Fdelete_directory, Fdelete_file): Document the
14900 behaviour in front of symlinks.
14901 (Fdelete_file): Raise an error on directories.
14902
14903 2003-01-13 Dave Love <fx@gnu.org>
14904
14905 * fns.c (Freverse): Use QUIT.
14906
14907 2003-01-13 Richard M. Stallman <rms@gnu.org>
14908
14909 * minibuf.c (minibuffer_completion_contents):
14910 Error if point is inside prompt.
14911
14912 * keyboard.c (command_loop_1): Don't redisplay directly
14913 if there's a post-command-hook.
14914
14915 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
14916 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
14917
14918 2003-01-12 Kim F. Storm <storm@cua.dk>
14919
14920 * process.h (struct Lisp_Process): New member private_vars.
14921
14922 * process.c (QCvars): New variable.
14923 (syms_of_process): Intern and staticpro it.
14924 (Fset_process_contact): Removed function.
14925 (Fprocess_variable, Fset_process_variable): New functions.
14926 (syms_of_process): Defsubr them.
14927 (Fstart_process): Initialize private_vars plist to nil.
14928 (Fmake_network_process): New arg :vars to setup the private
14929 variables for new network process.
14930 (server_accept_connection): Copy server's private variables to
14931 client process.
14932
14933 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
14934 crashes). Code rewritten and simplified. Now directly aligns the
14935 pointer and recalculates pure_bytes_used, rather than aligning the
14936 size and adjusting the pointer.
14937
14938 2003-01-11 Kim F. Storm <storm@cua.dk>
14939
14940 * process.c (Fset_process_contact): New function.
14941 (syms_of_process): defsubr it.
14942 (make-network-process): Update doc.
14943
14944 2003-01-10 Andreas Schwab <schwab@suse.de>
14945
14946 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
14947 Reported by Berthold Gunreben <b.gunreben@web.de>.
14948
14949 2003-01-10 Dave Love <fx@gnu.org>
14950
14951 * composite.c (syms_of_composite): Make composition_hash_table weak.
14952
14953 2003-01-09 Kim F. Storm <storm@cua.dk>
14954
14955 * process.c (Fmake_network_process): Convert new port number
14956 to host byte order for `:service t' case. From Mario Lang.
14957
14958 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14959
14960 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
14961 instead of XtAppProcessEvent.
14962
14963 * xterm.c (handle_one_xevent): New function.
14964 (x_dispatch_event): New function.
14965 (XTread_socket): Call handle_one_xevent.
14966
14967 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
14968
14969 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
14970 call XQueryPointer to get coordinates.
14971 (popup_get_selection): Do not set popup_activated_flag to zero,
14972 let popup_deactivate_callback do that. Needed for Motif.
14973 Call x_dispatch_event instead of XtDispatchEvent.
14974 (xmenu_show): Calculate root coordinate from frame top/left position.
14975
14976 2003-01-08 Kim F. Storm <storm@cua.dk>
14977
14978 * process.c (server_accept_connection): Fix recording of new
14979 connection's local address in :local property of contact info.
14980 (Fmake_network_process): Record local network address for new
14981 client processes in :local property of contact info.
14982 (format-network-address): Add arg OMIT-PORT. Change callers.
14983
14984 2003-01-07 Dave Love <fx@gnu.org>
14985
14986 * Makefile.in (fns.o): Depend on coding.h.
14987
14988 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
14989
14990 * minibuf.c (Fread_variable): Doc fix.
14991
14992 * eval.c (Fuser_variable_p): Doc change. For custom variables,
14993 use the same test as for custom-variable-p.
14994
14995 2003-01-05 Richard M. Stallman <rms@gnu.org>
14996
14997 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
14998 Count LAST_LINE_MISFIT in scroll margin for end of window.
14999 Move label too_near_end before setting SCROLL_MARGIN_POS.
15000 Set LAST_LINE_MISFIT before jumping there.
15001
15002 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
15003 scroll_conservatively case. If scrolling that much doesn't change
15004 STARTP, move it down one line.
15005
15006 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
15007 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
15008
15009 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
15010 selected frame.
15011
15012 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
15013 (syms_of_keymap): Staticpro them.
15014 (Fapropos_internal): Initialize them and clear them out.
15015 Don't GCPRO them.
15016
15017 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
15018 Doc fixes.
15019
15020 * lisp.h: New misc type Lisp_Save_Value.
15021 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
15022 (XSAVE_VALUE): New macro.
15023 (struct Lisp_Save_Value): New data type.
15024 (union Lisp_Misc): Add u_save_value alternative.
15025 (make_save_value): Declare.
15026
15027 * alloc.c (make_save_value): New function.
15028
15029 * xterm.c (x_catch_errors): Save dpy using make_save_value.
15030 (x_catch_errors_unwind): Call XSync.
15031
15032 2003-01-01 Richard M. Stallman <rms@gnu.org>
15033
15034 * window.c (window_scroll_pixel_based): Partially undo last change.
15035
15036 * keyboard.c (command_loop_1): Call adjust_point_for_property
15037 in direct action cases for Qforward_char and Qbackward_char.
15038 Set already_adjusted so it won't be done twice.
15039
15040 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
15041
15042 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
15043 type definition of size_t.
15044
15045 2003-01-02 Steven Tamm <steventamm@mac.com>
15046
15047 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
15048 distinguish Carbon GUI builds from X11 builds on darwin.
15049
15050 2002-12-30 Steven Tamm <steventamm@mac.com>
15051
15052 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
15053 to default to t.
15054
15055 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
15056
15057 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
15058
15059 2002-12-28 Steven Tamm <steventamm@mac.com>
15060
15061 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
15062 allow building in a different directory than source. Uses some
15063 GNU Make extensions, but there is no other make on Mac OS X.
15064
15065 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
15066
15067 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
15068 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
15069 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
15070 (Fstring_to_number): Mention the returned value in the doc strings.
15071
15072 2002-12-23 Richard M. Stallman <rms@gnu.org>
15073
15074 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
15075 <scroll-down-aggressively>: Doc fix.
15076
15077 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
15078 string as pane name, if there is one.
15079 (set_frame_menubar): Save menu_items_n_panes from each call to
15080 parse_single_submenu and use it when calling digest_single_submenu.
15081
15082 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
15083 Don't try to make last line fully visible if it is past end of window.
15084
15085 2002-12-22 Steven Tamm <steventamm@mac.com>
15086
15087 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
15088 (mac_menu_show): Add support for hierarchical popup menus.
15089 (add_menu_item): Remove indentation support.
15090 (fill_submenu, fill_menu): Create hierarchical menus
15091 instead of using indentation.
15092
15093 2002-12-22 Richard M. Stallman <rms@gnu.org>
15094
15095 * xdisp.c (try_cursor_movement): Don't call try_window here.
15096 (redisplay_window): Never redisplay minibuffer when inactive.
15097
15098 * window.c (select_window_1): Undo 9/21 change.
15099
15100 2002-12-22 Steven Tamm <steventamm@mac.com>
15101
15102 * macterm.c (XTread_socket): Call KeyTranslate for control and
15103 meta to deal correctly shifted non-alpha characters, like C-S-5
15104 being treated like C-%. Do not look for shift key to deal
15105 with masking off control-key with mac-reverse-ctrl-meta.
15106
15107 2002-12-21 Richard M. Stallman <rms@gnu.org>
15108
15109 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
15110 If it is non-nil, run timers. Use an unwind-protect to requeue
15111 the events that were read ahead.
15112 (popup_get_selection_unwind): New subroutine.
15113 (popup_get_selection_queue): File-scope variable now holds that queue.
15114 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
15115 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
15116 Use an unwind-protect to pop down the dialog box.
15117 (xdialog_show_unwind): New subroutine implements that.
15118
15119 * xdisp.c (row_containing_pos): Change exit test using last_y.
15120 (try_window_id): Abort if row_containing_pos returns null.
15121
15122 * lread.c (load_error_handler): New function.
15123 (Fload): Handle errors in Fsubstitute_in_file_name.
15124 Don't expect Fsignal to return.
15125
15126 * eval.c: Errors and throws work right with interrupt blocking.
15127 (struct catchtag): New elt interrupt_input_blocked.
15128 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
15129 (internal_catch, Fcondition_case, internal_condition_case)
15130 (internal_condition_case_1, internal_condition_case_2): Save it.
15131 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
15132
15133 * editfns.c (Fformat): Add parens.
15134
15135 * dired.c (file_name_completion): Fix that change.
15136 Delete special quit-handling code; just use QUIT.
15137
15138 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
15139
15140 * dired.c (file_name_completion): Close directory on error
15141 just as in directory_files_internal.
15142
15143 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
15144
15145 * window.c (Fset_window_configuration): Set old_point to correct
15146 value when new_current_buffer == current_buffer.
15147
15148 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
15149
15150 Revisited my earlier fix for the following entry in etc/PROBLEMS:
15151 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15152 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15153
15154 These changes were in part based upon suggestions made by Peter
15155 'Luna' Runestig [peter@runestig.com].
15156
15157 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
15158 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
15159 (g_b_init_get_sid_identifier_authority ): Add several static
15160 global variables.
15161
15162 * w32.c (globals_of_w32): New function. Used to initialize those
15163 global variables that must always be initialized on startup even
15164 when the global variable initialized is non zero. Its primary
15165 purpose at this time is to set the global variables
15166 g_b_init_is_windows_9x, g_b_init_open_process_token,
15167 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
15168 g_b_init_get_sid_identifier_authority to 0 on startup.
15169 Called from main.
15170
15171 * w32.c (is_windows_9x): Perform initialization only if
15172 g_b_init_is_windows_9x is equal to 0. On initialization set
15173 g_b_init_is_windows_9x equal to 1.
15174
15175 * w32.c (open_process_token): Perform initialization only if
15176 g_b_init_open_process_token is equal to 0. On initialization set
15177 g_b_init_open_process_token equal to 1.
15178
15179 * w32.c (get_token_information): Perform initialization only if
15180 g_b_init_get_token_information is equal to 0. On initialization
15181 set g_b_init_get_token_information equal to 1.
15182
15183 * w32.c (lookup_account_sid): Perform initialization only if
15184 g_b_init_lookup_account_sid is equal to 0. On initialization
15185 set g_b_init_lookup_account_sid equal to 1.
15186
15187 * w32.c (get_sid_identifier_authority): Perform initialization
15188 only if g_b_init_get_sid_identifier_authority is equal to 0.
15189 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
15190
15191 * w32fns.c (globals_of_w32fns): New function. Used to initialize
15192 those global variables that must always be initialized on startup
15193 even when the global variable initialized is non zero.
15194 Its primary purpose at this time is to initialize the global variable
15195 track_mouse_event_fn.
15196
15197 * w32fns.c (w32_wnd_proc): Remove initialization of
15198 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
15199
15200 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
15201
15202 * w32menu.c (globals_of_w32menu): New function. Used to
15203 initialize those global variables that must always be initialized
15204 on startup even when the global variable initialized is non zero.
15205 Its primary purpose at this time is to initialize the global
15206 variables get_menu_item_info and set_menu_item_info.
15207
15208 * w32menu.c (initialize_frame_menubar): Remove initialization of
15209 get_menu_item_info and set_menu_item_info.
15210
15211 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
15212
15213 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
15214 Declare them.
15215
15216 * emacs.c (main): Call globals_of_w32 prior to calling
15217 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
15218 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
15219 is defined.
15220
15221 * w32term.c (x_update_window_begin): Fix Windows API error
15222 detected by BoundsChecker. Test to determine if
15223 w32_system_caret_hwnd is NULL prior to attempting to use
15224 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
15225
15226 * w32term.c (x_update_window_end): Fix Windows API error
15227 detected by BoundsChecker. Test to determine if
15228 w32_system_caret_hwnd is NULL prior to attempting to use
15229 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
15230
15231 2002-12-17 Kenichi Handa <handa@m17n.org>
15232
15233 * coding.c (coding_system_require_warning): New variable.
15234 (syms_of_coding): DEFVAR it.
15235
15236 * coding.h (coding_system_require_warning): Extern it.
15237
15238 * fileio.c (choose_write_coding_system): Even if
15239 Vcoding_system_for_write is non-nil, if
15240 coding_system_require_warning is nonzero, call
15241 Vselect_safe_coding_system_function.
15242
15243 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
15244
15245 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
15246 (lisp): Add font-core.
15247
15248 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
15249
15250 * textprop.c (text_read_only): New arg `propval'.
15251 (get_char_property_and_overlay): Remove unused var `next_overlay'.
15252 (verify_interval_modification): Use text_read_only's new arg.
15253
15254 2002-12-13 Kenichi Handa <handa@m17n.org>
15255
15256 * coding.c (Funencodable_char_position): Set pend correctly.
15257
15258 2002-12-12 Jason Rumney <jasonr@gnu.org>
15259
15260 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
15261 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
15262 Be more careful about when help_events are generated.
15263
15264 2002-12-12 Steven Tamm <steventamm@mac.com>
15265
15266 * macterm.c (mac_check_for_quit_char): Correctly set the
15267 modifiers of the event to 0.
15268 * mac.c (sys_select): Duplicate rfds before calling select to
15269 ensure that rfds survive the while loop.
15270
15271 2002-12-11 Kim F. Storm <storm@cua.dk>
15272
15273 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
15274 row_containing_pos returned NULL.
15275
15276 2002-12-10 Steven Tamm <steventamm@mac.com>
15277
15278 * mac.c (sys_read): Fix sys_read to not call select if IO is
15279 non-blocking.
15280 (sys_select): Fix sys_select to not use a timeout larger than
15281 the one given.
15282
15283 2002-12-10 Juanma Barranquero <lektu@terra.es>
15284
15285 * editfns.c (Fformat): Use alloca, not _alloca.
15286
15287 2002-12-09 Richard M. Stallman <rms@gnu.org>
15288
15289 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
15290 as the last thing.
15291
15292 2002-12-09 Dave Love <fx@gnu.org>
15293
15294 * s/sol2-8.h: Removed. (Not necessary.)
15295
15296 2002-12-09 Matthew Swift <swift@alum.mit.edu>
15297
15298 * editfns.c (Fformat): Handle precision in string conversion
15299 specifiers like libc functions do (ie, print at most that many
15300 characters).
15301
15302 2002-12-08 Richard M. Stallman <rms@gnu.org>
15303
15304 * xdisp.c (row_containing_pos): Check more carefully
15305 whether charpos is really in the row before returning it.
15306
15307 2002-12-07 Steven Tamm <steventamm@mac.com>
15308
15309 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
15310
15311 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
15312 each stack frame. This may change as it could be time consuming.
15313
15314 * macterm.c (mac_check_for_quit_char, quit_char_comp)
15315 (init_quit_char_handler, mac_determine_quit_char_modifiers)
15316 (mac_initialize): Add code to check for pressing of quit_char
15317 in the OS event queue.
15318
15319 * mac.c (sys_select): Call mac_check_for_quit_char every second
15320 while blocking on select.
15321
15322 * mac.c (sys_read): Use sys_select to test for input first
15323 before calling read, to allow C-g to break.
15324
15325 2002-12-07 Richard M. Stallman <rms@gnu.org>
15326
15327 * minibuf.c (Fcompleting_read): Doc fix.
15328
15329 * lread.c (syms_of_lread) <load-history>: Doc fix.
15330
15331 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
15332
15333 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
15334 autoload.
15335
15336 * data.c (Fdefalias): Record in load-history redefining an autoload.
15337
15338 * alloca.c: Undo ifdef change accidentally made on 12-04.
15339
15340 2002-12-06 Francesco Potorti` <pot@gnu.org>
15341
15342 * xfns.c (png_load): Avoid double gamma correction for PNG images.
15343
15344 2002-12-04 Richard M. Stallman <rms@gnu.org>
15345
15346 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
15347
15348 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
15349
15350 * alloca.c: Don't use #error.
15351
15352 2002-12-03 Dave Love <fx@gnu.org>
15353
15354 * buffer.c (Qucs_set_table_for_input): New.
15355 (Fget_buffer_create): Use it.
15356 (Qset_buffer_major_mode_hook): Deleted.
15357 (Fset_buffer_major_mode): Revert previous change.
15358 (init_buffer_once): Intern ucs-set-table-for-input.
15359 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
15360 Add &Qucs_set_table_for_input.
15361
15362 2002-12-03 Andreas Schwab <schwab@suse.de>
15363
15364 * callint.c (Fcall_interactively): Use next_event only if less
15365 than key_count.
15366
15367 2002-12-02 Andrew Choi <akochoi@shaw.ca>
15368
15369 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
15370 names to 255 characters.
15371
15372 * macterm.c (XTread_socket): If all frames have been collapsed,
15373 expand the first one before handling drag-and-drop events.
15374
15375 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
15376 which is detected by autoconf.
15377
15378 2002-12-01 Steven Tamm <steventamm@mac.com>
15379
15380 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
15381 offset in two hints table to allow prebinding to be redone and
15382 allow the executable to be stripped.
15383
15384 2002-11-29 Dave Love <fx@gnu.org>
15385
15386 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
15387 already provided.
15388
15389 2002-11-29 Richard M. Stallman <rms@gnu.org>
15390
15391 * xdisp.c (start_display): Check more intelligently for
15392 whether the line is continued.
15393 (move_it_vertically_backward): Clear it->continuation_lines_width.
15394
15395 2002-11-28 Dave Love <fx@gnu.org>
15396
15397 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
15398 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
15399
15400 2002-11-27 Steven Tamm <steventamm@mac.com>
15401
15402 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
15403 more descriptive error output from lread.c:Fload upon most require
15404 cycles during boostrapping.
15405
15406 2002-11-27 Jason Rumney <jasonr@gnu.org>
15407
15408 * fileio.c (Finsert_file_contents): Give a more appropriate error
15409 for files bigger than 2Gb when off_t is 32 bit.
15410
15411 * dired.c (Ffile_attributes): Don't return negative file sizes for
15412 files bigger than 2Gb when off_t is 32 bit.
15413
15414 2002-11-27 Dave Love <fx@gnu.org>
15415
15416 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15417
15418 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15419 Test GETPGRP_VOID instead.
15420 [BSD_TERMIOS]: Remove definitions (never used).
15421
15422 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15423 Don't define.
15424 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15425
15426 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15427
15428 2002-11-25 Jason Rumney <jasonr@gnu.org>
15429
15430 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15431 supported.
15432
15433 2002-11-25 Dave Love <fx@gnu.org>
15434
15435 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15436
15437 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15438
15439 2002-11-25 Andreas Schwab <schwab@suse.de>
15440
15441 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15442
15443 2002-11-24 Steven Tamm <steventamm@mac.com>
15444
15445 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15446 determine the size of pointers alloced in unexed space instead
15447 of using possibly invalid emacs_zone pointers. This fixes the
15448 binary incompatibility problems caused by updates to libSystem.B.
15449
15450 2002-11-24 Richard M. Stallman <rms@gnu.org>
15451
15452 * search.c (Fstring_match): Doc fix.
15453
15454 * callint.c (Fcall_interactively): If a command fails because
15455 `*' detects a read-only buffer, but RECORD_FLAG is set,
15456 record it anyway if the args don't actually do tty input.
15457
15458 2002-11-22 Dave Love <fx@gnu.org>
15459
15460 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15461
15462 * keyboard.c (interrupt_signal): Provide forward declaration.
15463 (kbd_buffer_store_event): Don't declare interrupt_signal.
15464
15465 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15466
15467 2002-11-21 Richard M. Stallman <rms@gnu.org>
15468
15469 * eval.c (interactive_p): Skip any number of bytecode
15470 and special form frames, in any order.
15471
15472 2002-11-20 Jason Rumney <jasonr@gnu.org>
15473
15474 * w32fns.c (convert_mono_to_color_image): New function.
15475 (xbm_load, xbm_load_image): Use it when foreground or background
15476 is explicitly set.
15477
15478 2002-11-19 Dave Love <fx@gnu.org>
15479
15480 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
15481
15482 2002-11-18 Jason Rumney <jasonr@gnu.org>
15483
15484 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
15485 (XPutPixel): Swap blue and red.
15486 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
15487 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
15488 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
15489 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
15490
15491 2002-11-18 Dave Love <fx@gnu.org>
15492
15493 * m/orion105.h (HAVE_ALLOCA): Don't define.
15494
15495 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
15496
15497 * m/intel386.h: Don't include alloca.h or define alloca.
15498
15499 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
15500 malloc, realloc, calloc.
15501
15502 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
15503 (bcmp): Don't define.
15504
15505 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
15506
15507 * m/amdahl.h: Don't define LIB_STANDARD.
15508
15509 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
15510
15511 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
15512
15513 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
15514 Don't include alloca.h.
15515
15516 * s/aix3-2.h (HAVE_FSYNC): Don't define.
15517
15518 * regex.c (_GNU_SOURCE): Don't define.
15519
15520 * process.c (_GNU_SOURCE): Don't define.
15521
15522 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
15523
15524 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
15525
15526 * s/sol2-8.h: Include sol2-6.h.
15527
15528 2002-11-18 Miles Bader <miles@gnu.org>
15529
15530 * dispextern.h (struct face): Add `overstrike' field.
15531 * xterm.c (x_draw_glyph_string_foreground)
15532 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15533 * xfaces.c (load_face_font): Set `face->overstrike' based on
15534 result from choose_face_font.
15535 (best_matching_font, choose_face_font): Add `needs_overstrike'
15536 argument, and use it to return whether overstriking is desirable
15537 for this face/font combo.
15538 (set_font_frame_param: Pass new argument to choose_face_font.
15539
15540 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15541
15542 This change is my fix for the following entry in etc/PROBLEMS:
15543 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15544 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15545
15546 * w32.c: Added wrapper functions around the win32 API functions
15547 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
15548 GetSidIdentifierAuthority. These wrapper functions serve two
15549 purposes:
15550 1. They ensure that the wrapped function can never be called
15551 when Emacs is running on an operating system on which they are
15552 not supported (Microsoft Windows 95 / 98 / ME).
15553 2. They call the wrapped functions via function pointers rather
15554 than calling them directly. This avoids taking advantage of the
15555 undocumented fact that although these functions are not supported
15556 in the 9x branch of Microsoft Windows, the functions do exist in
15557 the version of advapi32.dll that is found in the 9x branch of
15558 Microsoft Windows.
15559
15560 * w32.c (init_user_info): Replace the calls to the win32 API
15561 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
15562 and GetSidIdentifierAuthority with calls to the newly added
15563 wrapper functions.
15564
15565 * w32.h: Added extern declarations for the following functions:
15566 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
15567 syms_of_w32menu, and void syms_of_fontset.
15568
15569 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
15570 function pointer track_mouse_event_fn in the handler for the
15571 WM_SETFOCUS message.
15572
15573 * w32menu.c (initialize_frame_menubar): Add code to
15574 reinitialize the function pointers set_menu_item_info and
15575 get_menu_item_info.
15576
15577 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15578
15579 * sound.c: Added a partial implementation of play-sound-internal
15580 for Microsoft Windows. Added various #ifdef / #else / #endif
15581 code blocks to separate the code that will compile under
15582 Microsoft Windows from the code that is specific to GNU/Linux.
15583 Moved several blocks of code around to make this separation of code
15584 into Windows compatible and GNU/Linux compatible code blocks easier.
15585
15586 * makefile.w32-in: Include sound.c and link with WinMM.lib.
15587
15588 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
15589 added support for play-sound-internal under Windows would be
15590 included in the build of Emacs.
15591
15592 2002-11-16 Jason Rumney <jasonr@gnu.org>
15593
15594 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
15595
15596 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
15597
15598 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
15599
15600 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
15601 (adjust_point_for_property): Move out of display and invisible even if
15602 we were already inside before (in case a property was added while
15603 we weren't looking). Be more careful when handling invisible props.
15604 Skip invisible text as if it really wasn't there at all.
15605
15606 2002-11-15 Jason Rumney <jasonr@gnu.org>
15607
15608 * w32term.c (x_draw_image_foreground)
15609 (w32_draw_image_foreground_1): Use standard copy and invert
15610 operations to draw images.
15611
15612 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
15613 depth of 1.
15614 (xbm_read_bitmap_data): Invert bits as xbm is read in.
15615 (XPutPixel): Don't invert bits here.
15616
15617 2002-11-15 Jason Rumney <jasonr@gnu.org>
15618
15619 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
15620 (w32_draw_image_foreground_1): Handle image masks.
15621 (x_draw_image_glyph_string): Don't BitBlt transparently.
15622
15623 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
15624 (x_from_xcolors): Adjust RGB values for W32.
15625 (image_background, image_background_transparent)
15626 (postprocess_image, x_to_xcolors, x_disable_image)
15627 (x_build_heuristic_mask): Adapt for W32 and enable.
15628 (x_create_x_image_and_pixmap): Mark images with palettes as such.
15629 (xbm_load): Remove unused variable.
15630
15631 2002-11-14 Richard M. Stallman <rms@gnu.org>
15632
15633 * buffer.c (syms_of_buffer): Doc fix.
15634
15635 2002-11-14 Dave Love <fx@gnu.org>
15636
15637 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
15638
15639 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
15640 * xmenu.c (unuse_menu_items, digest_single_submenu):
15641 * xfns.c (x_put_x_image):
15642 * xdisp.c (message2_nolog, set_message):
15643 * undo.c (record_point):
15644 * terminfo.c (tparam):
15645 * syntax.c (scan_sexps_forward):
15646 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15647 * composite.c (update_compositions):
15648 * cm.c (calccost, cmgoto):
15649 * charset.c (c_string_width): Declare all args (per C99).
15650
15651 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
15652
15653 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
15654 Don't declare.
15655
15656 * emacs.c (main) [!VMS]: Avoid third arg.
15657
15658 * fns.c (Fcopy_sequence): Doc fix.
15659 (Fmap_char_table): Cast `call2'.
15660
15661 2002-11-14 Francesco Potorti` <pot@gnu.org>
15662
15663 * s/sol2-8.h: New file.
15664
15665 2002-11-14 Kim F. Storm <storm@cua.dk>
15666
15667 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
15668 dependency on `risky-local-variable' and the :propertize form.
15669
15670 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
15671
15672 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
15673
15674 * syntax.c (scan_sexps_forward): Undo last patch.
15675 Use a more obvious fix: check eob before updating the syntax table.
15676
15677 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
15678
15679 * syntax.c (scan_sexps_forward): Update syntax table before reading
15680 a char rather than after so we don't update the table past eob.
15681
15682 2002-11-09 Dave Love <fx@gnu.org>
15683
15684 * buffer.c (Fset_buffer_major_mode): Fix last change.
15685
15686 * regex.c (regexec): Fix pmatch declaration.
15687
15688 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
15689
15690 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
15691 to self-inserting characters.
15692 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
15693
15694 * coding.c (Vtranslation_table_for_input): New.
15695 (syms_of_coding): DEFVAR it.
15696
15697 2002-11-08 Juanma Barranquero <lektu@terra.es>
15698
15699 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
15700 window.
15701
15702 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15703
15704 * process.c (Fformat_network_address): Remove unused locals p,
15705 cp, and i.
15706
15707 2002-11-06 Dave Love <fx@gnu.org>
15708
15709 * buffer.c (Qset_buffer_major_mode_hook): New.
15710 (Fset_buffer_major_mode): Use it.
15711
15712 2002-11-06 Richard M. Stallman <rms@gnu.org>
15713
15714 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
15715 and stop_polling.
15716
15717 * process.c (wait_reading_process_input):
15718 Test POLLING_PROBLEM_IN_SELECT, not hpux.
15719 Avoid initialization for auto Lisp_Object var.
15720
15721 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
15722
15723 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
15724
15725 2002-11-05 Richard M. Stallman <rms@gnu.org>
15726
15727 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
15728
15729 * callint.c (Fcall_interactively): New local filter_specs.
15730 (Fcall_interactively): Check for progn as well as let.
15731 Add a gcpro.
15732 (Qprogn): New variable.
15733 (syms_of_callint): Staticpro and init Qprogn.
15734
15735 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
15736
15737 * lread.c (Feval_buffer): Doc fix.
15738
15739 2002-11-04 Dave Love <fx@gnu.org>
15740
15741 * keyboard.c (read_char): Always translate iff
15742 Vkeyboard_translate_table is a char table and c is valid.
15743
15744 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15745 and fix C types.
15746
15747 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
15748
15749 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
15750
15751 * editfns.c (get_pos_property): Don't hardcode Qfield.
15752
15753 * keyboard.c (adjust_point_for_property): Handle `display' prop on
15754 overlays. Also handle `invisible' prop.
15755
15756 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
15757
15758 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
15759 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
15760
15761 2002-11-01 Andreas Schwab <schwab@suse.de>
15762
15763 * editfns.c (Fmessage): Revert last change to properly handle %%.
15764
15765 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
15766
15767 * xmenu.c (unuse_menu_items): New fun.
15768 (menu_items_inuse): New var.
15769 (syms_of_xmenu): Initialize it.
15770 (init_menu_items): Use it to detect re-entrance.
15771 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
15772 (Fx_popup_menu): Remove spurious XSETFRAME.
15773
15774 * editfns.c (find_field): Make an exception for nil fields.
15775
15776 2002-11-01 Dave Love <fx@gnu.org>
15777
15778 * m/gec63.h: Deleted.
15779
15780 2002-10-31 Dave Love <fx@gnu.org>
15781
15782 * xterm.c (XTread_socket): Fix last change.
15783 (xaw_scroll_callback): Cast call_data to long to avoid warning.
15784
15785 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
15786
15787 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
15788
15789 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
15790
15791 * editfns.c (overlays_around, get_pos_property): New funs.
15792 (find_field): Use them.
15793 Also be careful not to modify POS before its last use.
15794 (Fmessage): Don't Fformat if there's nothing to format.
15795
15796 2002-10-30 Dave Love <fx@gnu.org>
15797
15798 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
15799 [HAVE_PTY_H]; Include pty.h.
15800
15801 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
15802
15803 * xterm.c (Qeql): Declare.
15804 (Vx_keysym_table): New.
15805 (syms_of_xterm): Initialize it.
15806 (XTread_socket): Use it. Deal with ASCII keysyms.
15807 (XSetIMValues) [HAVE_X11R6]: Prototype.
15808
15809 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
15810 (lispy_kana_keys): Comment out.
15811 (make_lispy_event) [XK_kana_A]: Comment out.
15812 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
15813 Fix sprintf call.
15814
15815 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
15816 regexp.h change).
15817 (TERMINFO, LIBS_TERMCAP): Define.
15818
15819 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
15820 (bcmp): Define conditional on HAVE_BCMP.
15821 (NO_SIOCTL_H): Don't define.
15822 (TIOCSIGSEND): Don't make conditional on IRIX6.
15823
15824 * s/sol2-5.h: Don't include strings.h.
15825 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
15826
15827 * s/irix6-0.h (IRIX6): Don't define.
15828 (bcopy, bcmp, bzero): Don't undef.
15829
15830 * s/irix6-5.h: Don't include strings.h.
15831 (IRIX6): Don't define.
15832 (bcopy, bcmp, bzero): Don't undef.
15833
15834 * syntax.c (Fforward_comment): Doc fix.
15835
15836 2002-10-29 Kim F. Storm <storm@cua.dk>
15837
15838 * process.c (Fsignal_process): Allow PROCESS to be specified by
15839 name in addition to pid (as integer or string).
15840
15841 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
15842
15843 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
15844 environments.
15845
15846 2002-10-27 Kim F. Storm <storm@cua.dk>
15847
15848 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15849
15850 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
15851
15852 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
15853
15854 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15855
15856 2002-10-26 Richard M. Stallman <rms@gnu.org>
15857
15858 * editfns.c (Fformat): Detect invalid format letters for floats.
15859
15860 2002-10-25 Kenichi Handa <handa@m17n.org>
15861
15862 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
15863 (x_set_title): Likewise.
15864
15865 2002-10-25 Juanma Barranquero <lektu@terra.es>
15866
15867 * macgui.h:
15868 * w32gui.h: Remove definition of XColor.
15869
15870 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
15871
15872 2002-10-24 Kim F. Storm <storm@cua.dk>
15873
15874 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
15875 Callers changed (supply dummy arg).
15876
15877 * lisp.h (get_window_cursor_type): Update prototype.
15878
15879 * w32term.c (x_display_and_set_cursor): Get active_cursor from
15880 get_window_cursor_type to track system caret.
15881
15882 2002-10-24 Kim F. Storm <storm@cua.dk>
15883
15884 * process.c (Fformat_network_address): New function.
15885 (syms_of_process): Defsubr it.
15886 (list_processes_1): Use it to format :local/:remote address if
15887 service/host is not set; before Emacs would crash in that case.
15888 (Fmake_network_process): Don't use Ffind_operation_coding_system
15889 to setup coding system if host or service is not set.
15890
15891 2002-10-23 Juanma Barranquero <lektu@terra.es>
15892
15893 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
15894
15895 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
15896 COLORREF.
15897
15898 * macgui.h:
15899 * w32gui.h: Add definition of XColor.
15900
15901 * macfns.c:
15902 * w32fns.c:
15903 * xfaces.c: Remove definition of XColor.
15904
15905 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
15906
15907 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
15908
15909 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
15910 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
15911 window if it is dedicated.
15912 (Fshrink_window): Add preserve_before as was done for enlarge_window.
15913 (Vspecial_display_function): Update docstring.
15914
15915 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
15916 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
15917 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
15918
15919 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
15920
15921 * casefiddle.c (casify_region): Don't treat a prefix char as part
15922 of a word when at the beginning.
15923
15924 2002-10-17 Juanma Barranquero <lektu@terra.es>
15925
15926 * lread.c (syms_of_lread): Fix typos.
15927
15928 2002-10-17 Dave Love <fx@gnu.org>
15929
15930 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
15931
15932 2002-10-16 Richard M. Stallman <rms@gnu.org>
15933
15934 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
15935
15936 2002-10-14 Juanma Barranquero <lektu@terra.es>
15937
15938 * w16select.c (syms_of_win16select): Fix docstring for
15939 `selection-coding-system'.
15940
15941 * w32select.c (syms_of_w32select): Likewise.
15942
15943 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
15944
15945 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
15946 a backslash-quoted char.
15947 (scan_lists, scan_sexps_forward): Pacify the compiler.
15948
15949 2002-10-13 Richard M. Stallman <rms@gnu.org>
15950
15951 * window.c (window_scroll): Set immediate_quit.
15952
15953 * print.c (print): When backquote form is the car of a list,
15954 output in old style. Use old_backquote_output to output all
15955 comma forms inside it in old style too.
15956
15957 * buffer.h (struct buffer): Move `undo_list' down below `name'.
15958
15959 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
15960
15961 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
15962 batch mode).
15963
15964 * lread.c (Fload): Doc fix (load-suffixes).
15965
15966 2002-10-10 Steven Tamm <steventamm@mac.com>
15967
15968 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
15969 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
15970 Also switch the default to Qnil from Qt.
15971
15972 2002-10-08 Kenichi Handa <handa@m17n.org>
15973
15974 * coding.c (code_convert_region): When we need more GAP for
15975 conversion, pay attention to the case that coding->produced is not
15976 greater than coding->consumed.
15977
15978 2002-10-07 Richard M. Stallman <rms@gnu.org>
15979
15980 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
15981
15982 2002-10-06 Andrew Choi <akochoi@shaw.ca>
15983
15984 * macmenu.c (mac_menu_show): Add j to count menu items; match
15985 menu_item_selection to it to find selected item.
15986
15987 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15988
15989 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
15990 cases. The correct fix is to pass ReparentNotify to Xt.
15991 The shell widget interprets ConfigureNotify differently depending
15992 on if it has been reparented or not.
15993
15994 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
15995
15996 * editfns.c (Fformat_time_string): Doc fix.
15997
15998 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
15999
16000 * fns.c (Flength): Doc fix.
16001
16002 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
16003
16004 * keyboard.c (keyremap): New struct.
16005 (read_key_sequence): Use it: globally replace keytran_foo with
16006 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
16007 keytran_next and fkey_next to just `next'.
16008
16009 2002-10-04 Steven Tamm <steventamm@mac.com>
16010
16011 * macterm.c (keycode_to_xkeysym_table): Change return to be
16012 treated like an X keysym.
16013
16014 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16015
16016 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
16017 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
16018 This is to also handle x/y changes that occur because of a resize.
16019
16020 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
16021
16022 * frame.c (Vdelete_frame_functions): New variable.
16023 (syms_of_frame): Initialize and defvar it.
16024 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
16025 it when frame's `tooltip' parameter is non-nil.
16026
16027 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
16028
16029 * w32fns.c (x_create_tip_frame): Likewise.
16030
16031 * macfns.c (x_create_tip_frame): Likewise.
16032
16033 2002-09-30 Kenichi Handa <handa@m17n.org>
16034
16035 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
16036 -1 before calling ccl_driver.
16037
16038 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
16039 Only when it is non-nil, handle composition sequence.
16040 (setup_coding_system) <0>: Don't force composition handling.
16041
16042 * Makefile.in (lisp, shortlisp): Add utf-16.elc
16043
16044 2002-09-29 Richard M. Stallman <rms@gnu.org>
16045
16046 * search.c (Freplace_match): Adjust match data for the substitution
16047 just made in the buffer.
16048
16049 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
16050 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
16051
16052 2002-09-27 Richard M. Stallman <rms@gnu.org>
16053
16054 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
16055 (read_char): Use them. Do all exits thru the end of the function.
16056
16057 2002-09-27 Kenichi Handa <handa@etl.go.jp>
16058
16059 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
16060 is nil.
16061
16062 2002-09-26 Richard M. Stallman <rms@gnu.org>
16063
16064 * regex.h (__restrict_arr): Don't define if already defined.
16065
16066 * coding.c (run_pre_post_conversion_on_str):
16067 Save and restore Vdeactivate_mark.
16068
16069 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
16070
16071 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
16072
16073 2002-09-26 Kenichi Handa <handa@etl.go.jp>
16074
16075 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
16076 nonzero, try face's family at first. Otherwise try FAMILY at first.
16077 (choose_face_font): If C is a single byte char or latin-1, call
16078 try_font_list with PREFER_FACE_FAMILY 1.
16079
16080 2002-09-21 Richard M. Stallman <rms@gnu.org>
16081
16082 * window.c (select_window_1): Don't select frame.
16083 Set frame's selected window only when frame itself is selected.
16084 (Fselect_window): Doc fix.
16085
16086 2002-09-18 Kim F. Storm <storm@cua.dk>
16087
16088 * process.c (make-network-process): Doc fix (there is no
16089 network-server-log-function hook).
16090
16091 2002-09-18 Richard M. Stallman <rms@gnu.org>
16092
16093 * print.c (print): Clear out the unused parts of Vprint_number_table.
16094 (syms_of_print): Doc fix for `print-number-table'.
16095
16096 * unexelf.c (unexec): Undo previous change.
16097
16098 2002-09-17 Andreas Schwab <schwab@suse.de>
16099
16100 * m/alpha.h [LINUX]: Don't define DATA_START.
16101
16102 2002-09-16 Dave Love <fx@gnu.org>
16103
16104 * unexelf.c (unexec): Deal with .got, reinstating change from
16105 25-08-1999.
16106
16107 2002-09-13 Richard M. Stallman <rms@gnu.org>
16108
16109 * s/sol2-6.h (UNEXEC): Comment out definition.
16110
16111 * unexsol.c (unexec): Don't downcase first letter of error msg.
16112
16113 * xfaces.c (Fcolor_supported_p): Just one arg is required.
16114
16115 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
16116
16117 * unexsol.c: Include buffer.h, charset.h, coding.h.
16118
16119 2002-09-11 Richard M. Stallman <rms@gnu.org>
16120
16121 * unexsol.c: Don't use report_file_error; do it by hand
16122 using dlerror.
16123
16124 * process.c (wait_reading_process_input, both versions):
16125 Before calling turn_on_atimers, call stop_polling.
16126
16127 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
16128
16129 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
16130 we go to too_near_end, call clear_glyph_matrix.
16131 (redisplay_window): After make_cursor_line_fully_visible,
16132 call clear_glyph_matrix and bypass `goto done'.
16133
16134 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
16135 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
16136
16137 2002-09-10 Richard M. Stallman <rms@gnu.org>
16138
16139 * fileio.c (Fdo_auto_save): Catch error making directory.
16140 Only call push_message if we need to.
16141 At the same time, make an unwind-protect to pop it.
16142 Rename local message_p to old_message_p.
16143 (do_auto_save_make_dir, do_auto_save_eh): New functions.
16144 (do_auto_save_unwind): Don't call pop_message.
16145
16146 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
16147
16148 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
16149
16150 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
16151
16152 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
16153
16154 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
16155
16156 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
16157 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
16158 (re_match_2_internal): Be more careful with infinite loops.
16159
16160 2002-09-10 Kim F. Storm <storm@cua.dk>
16161
16162 * macros.c (end_kbd_macro): New function.
16163 (Fend_kbd_macro): Use it.
16164
16165 * macros.h (end_kbd_macro): Declare extern.
16166
16167 * keyboard.c (Fdiscard_input): If defining keyboard macro,
16168 end and save it instead of discarding it.
16169
16170 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
16171
16172 * s/sol2-6.h: Fix typo. Add comment.
16173
16174 2002-09-09 Richard M. Stallman <rms@gnu.org>
16175
16176 * regex.c (regnum_t): Use signed int, not unsigned int.
16177
16178 * s/sol2-6.h: New file.
16179
16180 * s/sol2-5.h (UNEXEC): Definition deleted.
16181
16182 2002-09-08 Kim F. Storm <storm@cua.dk>
16183
16184 * macros.c (executing_macro_index): Change type to EMACS_INT.
16185 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
16186
16187 * macros.h (executing_macro_index): Change type to EMACS_INT.
16188
16189 2002-09-06 Richard M. Stallman <rms@gnu.org>
16190
16191 * casetab.c (set_case_table): Make canon table point to eqv table.
16192
16193 2002-09-06 Juanma Barranquero <lektu@terra.es>
16194
16195 * coding.c (syms_of_coding): Fix spacing.
16196
16197 * composite.c (Fcompose_region_internal)
16198 (Fcompose_string_internal): Likewise.
16199
16200 * data.c (Flsh): Likewise.
16201
16202 * fontset.c (Fset_fontset_font): Likewise.
16203
16204 * macfns.c (Fx_server_max_request_size): Likewise.
16205
16206 * w16select.c (syms_of_win16select): Likewise.
16207
16208 * w32select.c (syms_of_w32select): Likewise.
16209
16210 * xselect.c (syms_of_xselect): Likewise.
16211
16212 2002-09-05 Richard M. Stallman <rms@gnu.org>
16213
16214 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
16215 call EXTEND_RANGE_TABLE and return a proper value.
16216 (set_image_of_range): Don't call set_image_of_range_1
16217 if no TRANSLATE or if range includes all of Latin-1.
16218 Only call it for the Latin-1 part of the range.
16219 For other cases, make two separate ranges,
16220 one for the original specified characters and one for
16221 their case-conversions.
16222
16223 2002-09-04 Richard M. Stallman <rms@gnu.org>
16224
16225 * s/sol2-5.h (UNEXEC): Use unexsol.o.
16226
16227 * window.c (displayed_window_lines): Correct for one-off bug
16228 in HEIGHT on non-window displays.
16229
16230 * regex.c (set_image_of_range_1): New function.
16231 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
16232 Return a value to indicate running out of memory.
16233 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
16234 (extend_range_table_work_area): New subroutine.
16235 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
16236 Different calling conventions, and used from set_image_of_range{,_1}.
16237 (IMMEDIATE_QUIT_CHECK): Definitions moved.
16238
16239 2002-09-04 Juanma Barranquero <lektu@terra.es>
16240
16241 * makefile.w32-in: All dependencies updated.
16242
16243 2002-09-01 Richard M. Stallman <rms@gnu.org>
16244
16245 * unexsol.c: New file.
16246
16247 * xfns.c (Qbox): Declare external, don't define.
16248
16249 * xdisp.c (redisplay_window) <force-start case>:
16250 If point is on semi-visible last line, reposition
16251 it at previous line.
16252
16253 * alloc.c (display_malloc_warning): Use display-warning.
16254 (malloc_warning_1): Function deleted.
16255
16256 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
16257
16258 * lread.c (read1): Handle #! by skipping the line.
16259
16260 2002-08-31 Richard M. Stallman <rms@gnu.org>
16261
16262 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
16263 Don't include LDFLAGS.
16264 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
16265
16266 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
16267
16268 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
16269 member of x_display_info unless we compile for some window system.
16270
16271 2002-08-31 Kim F. Storm <storm@cua.dk>
16272
16273 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
16274 (get_window_cursor_type): Don't use them.
16275 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
16276
16277 2002-08-30 Kenichi Handa <handa@etl.go.jp>
16278
16279 * xdisp.c (get_next_display_element): Fix previous change.
16280
16281 2002-08-30 Andrew Choi <akochoi@shaw.ca>
16282
16283 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
16284 (expose_window): Use it to fix the display of overlapping
16285 rows (merge code from xterm.c).
16286
16287 * macfns.c (Qbox): Add extern declaration.
16288
16289 2002-08-30 Juanma Barranquero <lektu@terra.es>
16290
16291 * w32fns.c (Qbox): Make extern.
16292 (syms_of_w32fns): Remove initialization of Qbox.
16293
16294 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
16295
16296 * xfns.c (Fx_open_connection): Fix error message.
16297
16298 2002-08-30 Kim F. Storm <storm@cua.dk>
16299
16300 The following changes consolidates the handling of the cursor
16301 type in xdisp.c, moving duplicate code and functionality from
16302 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
16303
16304 * frame.h (enum text_cursor_kinds): Consolidated here.
16305 Added DEFAULT_CURSOR value.
16306 (struct frame) <desired_cursor, cursor_width>
16307 <blink_off_cursor, blink_off_cursor_width>: New fields.
16308 Consolidated from output_x, output_w32 and output_mac structs.
16309 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16310 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
16311
16312 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
16313 Variables consolidated here.
16314 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
16315 (Vcursor_in_non_selected_windows): Renamed from
16316 cursor_in_non_selected_windows and changed to Lisp_Object.
16317 (syms_of_xdisp): Define and staticpro new and moved variables.
16318 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
16319 consolidated here. Recognize Qhollow setting.
16320 (set_frame_cursor_types): New function to set frame cursor types
16321 based on the frame parameters.
16322 (get_window_cursor_type): New function to calculate new cursor
16323 type and width for the specified window. Based on duplicated
16324 code consolidated here.
16325 Enhancements: cursor-in-non-selected-windows may be a cursor type,
16326 check buffer-local alternate-cursor-type and blink-cursor-alist
16327 before using built-in blink off methods.
16328
16329 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
16330
16331 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
16332 (get_specified_cursor_type, get_window_cursor_type)
16333 (set_frame_cursor_types): Added prototypes.
16334
16335 * macfns.c (x_specified_cursor_type): Removed.
16336 (x_set_cursor_type): Use set_frame_cursor_types.
16337 (Qbar, Qbox): Removed.
16338 (syms_of_macfns): Don't intern or staticpro them.
16339
16340 * macterm.c (x_specified_cursor_type): Remove prototype.
16341 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16342 (x_display_and_set_cursor): Use get_window_cursor_type.
16343 Remove unused local variables cursor_non_selected, active_cursor.
16344 Redraw cursor if hbar cursor width changes.
16345 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
16346
16347 * macterm.h (enum text_cursor_kinds): Removed.
16348 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
16349 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16350 (FRAME_DESIRED_CURSOR): Macro removed.
16351
16352 * w32fns.c (Vblink_cursor_alist): Removed.
16353 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16354 (syms_of_w32fns): Don't intern, staticpro, or define them.
16355 (x_specified_cursor_type): Removed.
16356 (x_set_cursor_type): Use set_frame_cursor_types.
16357
16358 * w32term.c (x_specified_cursor_type): Remove prototype.
16359 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16360 (x_display_and_set_cursor): Use get_window_cursor_type.
16361 Remove unused local variables cursor_off_state.
16362 Redraw cursor if hbar cursor width changes.
16363 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
16364
16365 * w32term.h (enum text_cursor_kinds): Removed.
16366 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
16367 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16368 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16369 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16370 (struct w32_display_info) <x_highlight_frame>: Renamed member from
16371 w32_highlight_frame.
16372
16373 * xfns.c (Vblink_cursor_alist): Removed.
16374 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16375 (syms_of_xfns): Don't intern, staticpro, or define them.
16376 (x_specified_cursor_type): Removed.
16377 (x_set_cursor_type): Use set_frame_cursor_types.
16378
16379 * xterm.c (x_specified_cursor_type): Remove prototype.
16380 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16381 (x_display_and_set_cursor): Use get_window_cursor_type.
16382 Remove unused local variables cursor_off_state.
16383 Redraw cursor if hbar cursor width changes.
16384
16385 * xterm.h (enum text_cursor_kinds): Removed.
16386 (struct output_x) <current_cursor, desired_cursor, cursor_width>
16387 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16388 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16389 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16390 (x_specified_cursor_type): Remove prototype.
16391
16392 2002-08-28 Richard M. Stallman <rms@gnu.org>
16393
16394 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16395 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16396 (Vblink_cursor_alist): New variable.
16397 (syms_of_w32fns): Initialize and defvar it.
16398 (x_specified_cursor_type): Recognize Qbox for filled box.
16399 Exceptions are hollow boxes.
16400 (Qbox, Qhollow): New variables.
16401 (syms_of_w32fns): Initialize and staticpro them.
16402
16403 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16404 New macros.
16405 (struct w32_output): New fields blink_off_cursor,
16406 blink_off_cursor_width.
16407 (FRAME_CURSOR_WIDTH): New macro.
16408
16409 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16410 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16411
16412 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16413 for bar cursor.
16414
16415 * w32term.c (expose_overlaps): New function.
16416 (expose_window): Use it to fix the display of overlapping rows.
16417
16418 2002-08-28 Simon Josefsson <jas@extundo.com>
16419
16420 * xfns.c (Fx_open_connection): Improve help when X connection
16421 fails, xhost is insecure and xauth is better.
16422
16423 2002-08-28 Juanma Barranquero <lektu@terra.es>
16424
16425 * makefile.w32-in: Add missing dependencies on w32term.h and
16426 composite.h.
16427
16428 * emacs.c (USAGE1): Add missing newline.
16429
16430 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16431
16432 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16433
16434 2002-08-27 Richard M. Stallman <rms@gnu.org>
16435
16436 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16437 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16438 (Vblink_cursor_alist): New variable.
16439 (syms_of_xfns): Initialize and defvar it.
16440 (x_specified_cursor_type): Recognize Qbox for filled box.
16441 Exceptions are hollow boxes.
16442 (Qbox, Qhollow): New variables.
16443 (syms_of_xfns): Initialize and staticpro them.
16444
16445 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16446 New macros.
16447 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16448
16449 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16450 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16451
16452 * emacs.c (main): Handle --script.
16453 (USAGE1): Mention --script.
16454 (standard_args): Define sort order for --script.
16455
16456 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16457
16458 * xdisp.c (redisplay_updating_p): Variable removed.
16459 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16460 New variables.
16461 (init_iterator): Don't free realized faces if
16462 inhibit_free_realized_faces is set.
16463 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16464 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16465 initialize Qinhibit_free_realized_faces.
16466
16467 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
16468 when iterator is adding glyphs to a glyph matrix.
16469
16470 2002-08-27 Kenichi Handa <handa@etl.go.jp>
16471
16472 * xdisp.c (get_next_display_element): In unibyte case, don't use
16473 octal form for such eight-bit characters that can be converted to
16474 multibyte char.
16475
16476 2002-08-26 Kim F. Storm <storm@cua.dk>
16477
16478 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
16479 foreground and background colors. From Joe Buehler.
16480
16481 2002-08-26 Miles Bader <miles@gnu.org>
16482
16483 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
16484
16485 2002-08-25 Andrew Choi <akochoi@shaw.ca>
16486
16487 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
16488 defined instead of MAC_OSX.
16489
16490 * s/darwin.h (select): Define select to sys_select only if
16491 HAVE_CARBON is defined.
16492 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
16493 (DONT_REOPEN_PTY): #def it.
16494
16495 * macterm.c (XTread_socket): Remove code to call
16496 SendEventToEventTarget for keys with command modifiers when
16497 mac_command_key_is_meta is nil.
16498
16499 2002-08-24 Andreas Schwab <schwab@suse.de>
16500
16501 * eval.c (Fdefvar): Fix last change.
16502
16503 2002-08-23 Richard M. Stallman <rms@gnu.org>
16504
16505 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
16506 Record variables in load history as (defvar . VAR).
16507 (Fdefvar): Don't record in load history if no initial value.
16508 (Qdefvar): New variable.
16509 (syms_of_eval): Init and staticpro it.
16510
16511 * lread.c (syms_of_lread): Doc fix.
16512 (build_load_history): Use Fmember to see if a definition
16513 is already in the Vload_history element.
16514
16515 * process.c (Fstart_process): Remove /: from program name.
16516
16517 * emacs.c (decode_env_path): Don't add /: if file name handler
16518 has a `safe-magic' property.
16519
16520 * callproc.c (Fcall_process): Remove /: from program name.
16521
16522 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
16523
16524 * regex.c (PATFETCH): Remove the translating fetch.
16525 (PATFETCH_RAW): Rename to PATFETCH.
16526 (set_image_of_range): New fun.
16527 (SET_RANGE_TABLE_WORK_AREA): Use it.
16528 (regex_compile): Don't translate the pattern chars so eagerly.
16529 Only do it when inserting an `exactn' bytecode or when handling
16530 a char-range.
16531 (mutually_exclusive_p): Avoid empty statement.
16532
16533 2002-08-22 Kim F. Storm <storm@cua.dk>
16534
16535 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
16536 end up on a partially visible line; this reverts a specific part
16537 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
16538 display error which has been reported several times now.
16539 However it introduces the problem that changes was supposed to fix.
16540 See my comments in the source if you want to debug this further.
16541
16542 2002-08-20 Kenichi Handa <handa@etl.go.jp>
16543
16544 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16545
16546 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
16547
16548 * msdos.c (croak): Add `void' to definition.
16549
16550 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
16551 Don't define them, they are defined in msdos.c.
16552
16553 * mem-limits.h [MSDOS]: Declare etext.
16554
16555 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
16556 `const' since CORRECT_DIR_SEPS modifies its target.
16557
16558 2002-08-19 Kim F. Storm <storm@cua.dk>
16559
16560 * keyboard.c (Fclear_this_command_keys): Add optional arg
16561 KEEP-RECORD to avoid clearing lossage when we just want to clear
16562 the current key sequence (kmacro needs this).
16563
16564 2002-08-19 Kenichi Handa <handa@localhost>
16565
16566 * composite.c (run_composition_function): Call FUNC if it is fboundp.
16567
16568 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
16569 cons, return Qnil.
16570
16571 2002-08-17 Richard M. Stallman <rms@gnu.org>
16572
16573 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
16574
16575 * sysdep.c [!VMS]: Include sys/files.h.
16576
16577 * editfns.c (save_restriction_restore): Defend from unchained marker.
16578
16579 * buffer.c (overlays_at): Handle extending vec uniformly.
16580 (overlays_in): Handle extending vec from length 0 as in overlays_at.
16581
16582 2002-08-15 Andrew Choi <akochoi@shaw.ca>
16583
16584 * mac.c (init_mac_osx_environment): New function.
16585
16586 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
16587
16588 2002-08-14 Kim F. Storm <storm@cua.dk>
16589
16590 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
16591 executing macro before appending to it (when used from Lisp).
16592 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
16593 which is called prior to each iteration of macro (for kmacro.el).
16594 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
16595
16596 * lisp.h (Fexecute_kbd_macro): Update prototype.
16597
16598 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
16599
16600 2002-08-14 Kenichi Handa <handa@etl.go.jp>
16601
16602 * xselect.c (QUTF8_STRING): New variable.
16603 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
16604 (x_atom_to_symbol): Likewise.
16605 (x_get_local_selection): New argument local_request. If it is
16606 nonzero, call handler_fn with the second arg nil.
16607 (x_handle_selection_request): Call x_get_local_selection with
16608 local_request 0.
16609 (lisp_data_to_selection_data): Don't encode the string here.
16610 (Fx_get_selection_internal): Call x_get_local_selection with
16611 local_request 1.
16612 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
16613
16614 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
16615
16616 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
16617
16618 2002-08-13 Richard M. Stallman <rms@gnu.org>
16619
16620 * minibuf.c (Fminibufferp): New function.
16621 (syms_of_minibuf): Defsubr it.
16622 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
16623
16624 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
16625
16626 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
16627
16628 2002-08-12 Richard M. Stallman <rms@gnu.org>
16629
16630 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
16631 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
16632 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
16633 already.
16634
16635 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
16636
16637 2002-08-11 Andrew Choi <akochoi@shaw.ca>
16638
16639 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
16640 (Vmac_pass_command_to_system): New variable.
16641 (Vmac_pass_control_to_system): New variable.
16642 (do_mouse_moved): Check wp with is_emacs_window.
16643 (XTread_socket): Check window_ptr with is_emacs_window.
16644 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
16645 events back to Mac Toolbox for processing, depending on values of
16646 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
16647 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
16648 Vmac_pass_control_to_system.
16649
16650 2002-08-10 Kenichi Handa <handa@etl.go.jp>
16651
16652 * coding.c (unencodable_char_position): New function.
16653 (Funencodable_char_position): New function.
16654 (syms_of_coding): Defsubr Funencodable_char_position.
16655
16656 2002-08-10 Andrew Choi <akochoi@shaw.ca>
16657
16658 * mac.c (sys_select) [MAC_OSX]: New function.
16659
16660 * macterm.c (MakeMeTheFrontProcess): New function.
16661 (mac_initialize): Call MakeMeTheFrontProcess.
16662
16663 * s/darwin.h: Define select to sys_select.
16664
16665 2002-08-09 Richard M. Stallman <rms@gnu.org>
16666
16667 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
16668
16669 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
16670
16671 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
16672 end of the buffer.
16673
16674 2002-08-08 Ken Raeburn <raeburn@gnu.org>
16675
16676 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
16677
16678 * puresize.h (BASE_PURESIZE): Increase to 910000.
16679
16680 2002-08-08 Kenichi Handa <handa@etl.go.jp>
16681
16682 * coding.c (Ffind_operation_coding_system): For write-region, if
16683 VISIT is a filename, make it the target.
16684
16685 2002-08-07 Richard M. Stallman <rms@gnu.org>
16686
16687 * alloc.c (mark_object): Detect long lists for debugging.
16688 (mark_object_loop_halt): New variable.
16689
16690 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
16691
16692 * data.c (Fmake_variable_frame_local): Doc fix.
16693
16694 2002-08-01 David Ponce <david@dponce.com>
16695
16696 * w32menu.c (local_heap, local_alloc, local_free): New macros.
16697 (malloc_widget_value, free_widget_value)
16698 (w32_free_submenu_strings): Use them.
16699
16700 (push_submenu_start, push_submenu_end, push_left_right_boundary)
16701 (push_menu_pane, push_menu_item, single_keymap_panes)
16702 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
16703 (single_submenu, set_frame_menubar)
16704 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
16705
16706 (Fx_popup_menu): Don't show pop up menu until preceding one is
16707 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
16708
16709 * w32menu.c: Changes adapted from xmenu.c
16710 (set_frame_menubar): First parse all submenus,
16711 then make widget_value trees from them.
16712 Don't allocate any widget_value objects
16713 until we are done with the parsing.
16714 (parse_single_submenu): New function.
16715 (digest_single_submenu): New function.
16716 (single_submenu): Function deleted, replaced by those two.
16717
16718 2002-08-04 Andrew Choi <akochoi@shaw.ca>
16719
16720 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
16721 returns a valid window pointer before proceeding for keyDown and
16722 autoKey events.
16723
16724 2002-08-03 Andrew Choi <akochoi@shaw.ca>
16725
16726 * macterm.c (USE_CARBON_EVENTS): New macro.
16727 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
16728 (x_iconify_frame): Call CollapseWindow.
16729 (Vmac_reverse_ctrl_meta): New variable.
16730 (Vmac_wheel_button_is_mouse_2): New variable.
16731 (init_mac_drag_n_drop): New function.
16732 (mac_do_receive_drag): New function.
16733 (mac_handle_service_event): New function.
16734 (init_service_handler): New function.
16735 (mac_to_emacs_modifiers): New function.
16736 (mac_event_to_emacs_modifiers): New function.
16737 (mac_get_mouse_btn): New function.
16738 (mac_convert_event_ref): New function.
16739 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
16740 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
16741 mac_get_mouse_btn.
16742 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
16743
16744 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
16745 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
16746 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
16747 TOOL_BAR_EVENT for MAC_OS as well.
16748 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
16749 as for WINDOWS_NT.
16750 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
16751
16752 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
16753
16754 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
16755
16756 * xdisp.c (forward_to_next_line_start): Fix a condition that
16757 lead to a newline being skipped.
16758
16759 2002-08-02 Andrew Choi <akochoi@shaw.ca>
16760
16761 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
16762
16763 2002-08-01 Richard M. Stallman <rms@gnu.org>
16764
16765 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
16766
16767 2002-07-31 Andrew Choi <akochoi@shaw.ca>
16768
16769 * macfns.c: #undef init_process before #define-ing it.
16770
16771 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
16772 HAVE_CARBON is defined.
16773
16774 2002-07-31 Richard M. Stallman <rms@gnu.org>
16775
16776 * xmenu.c (set_frame_menubar): First parse all submenus,
16777 then make widget_value trees from them.
16778 Don't allocate any widget_value objects
16779 until we are done with the parsing.
16780 (parse_single_submenu): New function.
16781 (digest_single_submenu): New function.
16782 (single_submenu): Function deleted, replaced by those two.
16783
16784 2002-07-30 Juanma Barranquero <lektu@terra.es>
16785
16786 * w32proc.c (syms_of_ntproc): Fix docstring of
16787 `w32-get-true-file-attributes'.
16788
16789 2002-07-28 Richard M. Stallman <rms@gnu.org>
16790
16791 * s/hpux8.h (HPUX8): Define this before including hpux.h.
16792 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
16793
16794 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
16795
16796 * keyboard.c (make_lispy_event):
16797 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
16798 Explicitly clear up_modifier in event->modifiers.
16799
16800 2002-07-27 Richard M. Stallman <rms@gnu.org>
16801
16802 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
16803
16804 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16805 for bar cursor.
16806
16807 2002-07-26 Kenichi Handa <handa@etl.go.jp>
16808
16809 * coding.c (detect_coding_iso2022): While checking a byte sequence
16810 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
16811 it in the normal loop.
16812
16813 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
16814
16815 * xterm.c (expose_overlaps): New function.
16816 (expose_window): Use it to fix the display of overlapping rows.
16817
16818 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
16819
16820 2002-07-23 Ken Raeburn <raeburn@gnu.org>
16821
16822 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
16823 since it only depends on XUINT.
16824
16825 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
16826 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
16827 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
16828 Macros deleted.
16829
16830 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
16831 its value over other approaches.
16832 * sysdep.c (start_of_data): Don't define the function if a macro
16833 form has been defined.
16834
16835 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
16836
16837 * xdisp.c (redisplay_updating_p): New variable.
16838 (init_iterator): Don't free realized faces when
16839 redisplay_updating_p is set.
16840 (redisplay_internal): Set redisplay_updating_p while updating
16841 the display.
16842
16843 2002-07-23 Richard M. Stallman <rms@gnu.org>
16844
16845 * editfns.c (Fmessage): Treat "" like nil.
16846
16847 2002-07-23 Kenichi Handa <handa@etl.go.jp>
16848
16849 * xdisp.c (face_before_or_after_it_pos):
16850 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16851
16852 2002-07-22 Juanma Barranquero <lektu@terra.es>
16853
16854 * callproc.c (init_callproc) [DOS_NT]:
16855 Initialize Vshared_game_score_directory to nil.
16856 (syms_of_callproc) [DOS_NT]: Likewise.
16857
16858 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
16859
16860 * xdisp.c (display_line): Replace an abort with xassert.
16861
16862 2002-07-21 Richard M. Stallman <rms@gnu.org>
16863
16864 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
16865 and END_UNCHANGED when setting buffer_unchanged_p.
16866 Use current_matrix_up_to_date_p to decide whether to use
16867 try_cursor_movement.
16868
16869 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
16870
16871 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
16872
16873 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
16874 Set to nil if dir does not exist.
16875 (syms_of_callproc): Init unconditionally and simply.
16876
16877 * buffer.c (Fbuffer_list): Doc fix.
16878
16879 2002-07-21 Ken Raeburn <raeburn@gnu.org>
16880
16881 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
16882
16883 * buffer.c (mmap_realloc): When shrinking, make sure number of
16884 pages to unmap is rounded towards zero.
16885
16886 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
16887 (XSETINT): Deleted.
16888
16889 * m/att3b.h (XINT): Don't define.
16890 (VALBITS, VALMASK, XTYPE): Deleted.
16891 (DATA_SEG_BITS): Define.
16892 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
16893 ARRAY_MARK_FLAG): Deleted.
16894 (DATA_SEG_BITS): Define.
16895 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
16896 (DATA_SEG_BITS): Define.
16897
16898 2002-07-20 Richard M. Stallman <rms@gnu.org>
16899
16900 * print.c (print_error_message): New args CONTEXT and CALLER.
16901 Calls changed.
16902
16903 * lisp.h (print_error_message): Declare new args.
16904
16905 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
16906 and CONTEXT to print_error_message, don't print them here.
16907 For a Quit, don't use Vsignaling_function.
16908 Call message_log_maybe_newline.
16909
16910 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
16911
16912 2002-07-20 Kim F. Storm <storm@cua.dk>
16913
16914 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
16915
16916 2002-07-19 Ken Raeburn <raeburn@gnu.org>
16917
16918 * bytecode.c (struct byte_stack): Pointers into byte string now
16919 point to const.
16920 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
16921 const.
16922 * charset.h (BCOPY_SHORT): Source pointer now points to const.
16923 * coding.c (encode_eol, detect_coding, detect_eol):
16924 (decode_coding, encode_coding, detect_coding_system):
16925 Source strings now treated as const.
16926 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
16927 modify Lisp string contents.
16928 * coding.h (decode_coding, encode_coding, detect_coding,
16929 detect_eol): Declarations updated.
16930 * composite.c (compose_chars_in_text): Treat Lisp string contents
16931 as const.
16932 * dispnew.c (safe_bcopy): Source pointer now points to const.
16933 * lisp.h (STRING_COPYIN): New macro.
16934 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
16935 (internal_with_output_to_temp_buffer): Declarations updated.
16936 * print.c (temp_output_buffer_setup):
16937 (internal_with_output_to_temp_buffer): Buffer name argument is now
16938 pointer to const.
16939 * sound.c (struct sound_device): Function pointer field "write"
16940 buffer argument now points to const.
16941 (vox_write): Buffer argument points to const.
16942 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
16943 contents as const.
16944 * sysdep.c (emacs_write): Buffer pointer now const.
16945 * term.c (encode_terminal_code): Buffer pointer now const.
16946 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
16947 (x_face_list_fonts, x_update_menu_appearance):
16948 (hash_string_case_insensitive): Treat Lisp string contents as const.
16949
16950 2002-07-19 Juanma Barranquero <lektu@terra.es>
16951
16952 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
16953
16954 * fileio.c (syms_of_fileio): Likewise.
16955 (Ffile_name_as_directory): Fix argument name in docstring.
16956 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
16957
16958 2002-07-18 Richard M. Stallman <rms@gnu.org>
16959
16960 * data.c (Fdefalias): Doc fix.
16961
16962 2002-07-17 Dave Love <fx@gnu.org>
16963
16964 * intervals.h (text_property_stickiness): Use P_.
16965
16966 * ccl.c: Remove `emacs' conditionals.
16967 (ccl_backtrace_table): Fix size spec.
16968 (ccl_driver): Fix type errors.
16969
16970 2002-07-16 Ken Raeburn <raeburn@gnu.org>
16971
16972 * alloc.c (xstrdup, make_string, make_unibyte_string)
16973 (make_multibyte_string, build_string): String pointer args now
16974 point to const.
16975 * charset.c (find_charset_in_text, c_string_width):
16976 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
16977 * fileio.c (report_file_error):
16978 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
16979 (count_combining_before, count_combining_after, insert_1_both):
16980 (insert, insert_and_inherit, insert_string):
16981 (insert_before_markers, insert_before_markers_and_inherit):
16982 * lread.c (intern, oblookup, hash_string):
16983 * minibuf.c (temp_echo_area_glyphs):
16984 * search.c (fast_c_string_match_ignore_case):
16985 * sysdep.c (emacs_open, set_file_times):
16986 * xfaces.c (xstricmp):
16987 * xdisp.c (store_frame_title, string_char_and_length):
16988 (message_dolog, message2, message2_nolog, set_message): Likewise.
16989 (set_message_1): Cast message string argument to const pointer.
16990 * editfns.c (general_insert_function): Insertion function now
16991 takes pointer to const for input data.
16992 * charset.h (find_charset_in_text, c_string_width):
16993 (parse_str_as_multibyte): Declarations updated.
16994 * dispextern.h (xstricmp): Declaration updated.
16995 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
16996 (count_size_as_multibyte, count_combining_before):
16997 (count_combining_after, insert_1, insert_1_both, message_dolog):
16998 (insert, insert_and_inherit, insert_before_markers)
16999 (insert_before_markers_and_inherit, set_message, message2):
17000 (message2_dolog, build_string, make_string, make_unibyte_string):
17001 (make_multibyte_string, intern, oblookup, report_file_error):
17002 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
17003 (emacs_open, xstrdup): Declarations updated.
17004 * systime.h (set_file_times): Declaration updated.
17005
17006 * charset.c (find_charset_in_text, lisp_string_width): Use const
17007 for pointer to lisp string data.
17008 * charset.h (FETCH_STRING_CHAR_ADVANCE):
17009 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
17010 * coding.c (Ffind_coding_systems_region_interval):
17011 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
17012 (Fmake_directory_internal, Fdelete_directory):
17013 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
17014 * fontset.c (font_family_registry, fs_query_fontset):
17015 (list_fontsets):
17016 * frame.c (Fframe_parameter):
17017 * keyboard.c (cmd_error_internal):
17018 * keymap.c (Fdescribe_buffer_bindings):
17019 * lread.c (complete_filename_p, openp):
17020 * minibuf.c (Fminibuffer_complete_word):
17021 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
17022 (face_before_or_after_it_pos, next_element_from_string):
17023 (get_overlay_arrow_glyph_row, display_mode_element):
17024 (decode_mode_spec_coding):
17025 * xterm.c (same_x_server): Likewise.
17026
17027 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
17028 settings of non-existent fields.
17029
17030 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
17031 copy a lisp value.
17032
17033 * lread.c (Fintern_soft): Use string macros instead of
17034 Lisp_String fields.
17035 * keyboard.c (echo_char, parse_modifiers_uncached):
17036 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
17037 * textprop.c (validate_interval_range, interval_of): Likewise.
17038
17039 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
17040
17041 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17042 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
17043 XSTRING()->size_byte.
17044
17045 * lisp.h (SDATA, SREF): Produce rvalue.
17046 (SSET): New macro.
17047 * alloc.c (make_event_array): Use SSET for storing into a string.
17048 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
17049 a string.
17050 * casefiddle.c (casify_object): Use SSET.
17051 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17052 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
17053 address of string contents.
17054 * data.c (Faref): Use SDATA.
17055 (Faset): Use SDATA, SSET.
17056 * dired.c (directory_files_internal): Use SSET.
17057 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
17058 (Fread_file_name): Use SREF, SSET.
17059 * fns.c (concat): Use SSET.
17060 (concat, Fdelete): Use SDATA.
17061 * insdel.c (insert_from_string_1): Use SDATA.
17062 * keyboard.c (Fevent_convert_list): Use SREF.
17063 * lread.c (Fload): Use SDATA, SSET.
17064 * macfns.c (validate_x_resource_name): Use SSET.
17065 * process.c (status_message): Use SSET.
17066 * search.c (wordify): Use SDATA.
17067 (Freplace_match): Use SREF.
17068 * w32fns.c (validate_x_resource_name): Use SSET.
17069 * xfns.c (validate_x_resource_name): Use SSET.
17070 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
17071
17072 2002-07-16 Richard M. Stallman <rms@gnu.org>
17073
17074 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
17075
17076 * xdisp.c (reconsider_clip_changes):
17077 Don't test prevent_redisplay_optimizations_p.
17078 (redisplay_internal): Test prevent_redisplay_optimizations_p
17079 along with clip_changed in some cases.
17080 (try_window_id): Likewise.
17081 (redisplay_window): New local var buffer_unchanged_p.
17082
17083 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
17084
17085 * process.c (create_process): Test USG_SUBTTY_WORKS.
17086 (process_send_signal): Clean up handling of GID.
17087 Detect errors in ioctls meant to set GID.
17088
17089 * window.c (temp_output_buffer_show):
17090 Don't set prevent_redisplay_optimizations_p.
17091
17092 2002-07-15 Juanma Barranquero <lektu@terra.es>
17093
17094 * eval.c (Fdefvaralias): Add docstring argument.
17095
17096 2002-07-15 Ken Raeburn <raeburn@gnu.org>
17097
17098 * lisp.h (STRING_INTERVALS): Produce rvalue.
17099 (STRING_SET_INTERVALS): New macro.
17100 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
17101 * fns.c (Fstring_as_multibyte): Likewise.
17102 * intervals.c (balance_possible_root_interval, delete_interval)
17103 (create_root_interval, copy_intervals_to_string): Likewise.
17104 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
17105 instead of 0.
17106
17107 2002-07-14 Ken Raeburn <raeburn@gnu.org>
17108
17109 * lisp.h (STRING_SET_CHARS): New macro.
17110 (SCHARS, SBYTES): Produce rvalues.
17111 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
17112 * fns.c (concat): Likewise.
17113 * lread.c (read_vector): Likewise.
17114
17115 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
17116 (STRING_SET_UNIBYTE): New macro.
17117 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
17118 length of -1) changed to use STRING_SET_UNIBYTE.
17119 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
17120 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
17121 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
17122 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
17123 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
17124 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
17125 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
17126 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
17127 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
17128 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
17129 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
17130 STRING_BYTES or indirection changed to SCHARS, SBYTES,
17131 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
17132 unchanged for now.
17133
17134 2002-07-13 Kim F. Storm <storm@cua.dk>
17135
17136 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
17137
17138 2002-07-12 Richard M. Stallman <rms@gnu.org>
17139
17140 * fileio.c (Fwrite_region): Doc fix.
17141
17142 * print.c (print_error_message): Don't handle Vsignaling_function here.
17143
17144 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
17145 (command_loop_1): Avoid certain actions after memory-full error.
17146
17147 * eval.c (Fsignal): Don't call cancel_hourglass.
17148 For a memory-full error, don't call Vsignal_hook_function
17149 and don't set Vsignaling_function.
17150
17151 * process.c (process_send_signal): Add abort call.
17152
17153 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
17154
17155 * keymap.c (Fkey_binding): Fix typo.
17156
17157 2002-07-11 Richard M. Stallman <rms@gnu.org>
17158
17159 * alloc.c (Vmemory_full): New variable.
17160 (Vmemory_signal_data): Rename from memory_signal_data.
17161 Uses changed.
17162 (syms_of_alloc): Defvar them.
17163 (memory_full, buffer_memory_full): Set Vmemory_full.
17164
17165 * lisp.h (Vmemory_full): Add declaration.
17166 (current_column, indented_beyond_p): Change declaration.
17167
17168 * indent.c (last_known_column): Declare as double, not float.
17169 (current_column, current_column_1, string_display_width)
17170 (position_indentation): Return `double'.
17171 (indented_beyond_p): Arg `column' is `double'. Callers changed.
17172
17173 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
17174 (back_to_previous_visible_line_start)
17175 (reseat_at_next_visible_line_start, next_element_from_buffer):
17176 Use `double', not `float', when calling indented_beyond_p.
17177
17178 * s/hpux11.h (BROKEN_SA_RESTART): Define.
17179
17180 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
17181
17182 2002-07-11 Juanma Barranquero <lektu@terra.es>
17183
17184 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
17185 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
17186 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
17187 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
17188 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
17189 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
17190
17191 2002-07-10 Juanma Barranquero <lektu@terra.es>
17192
17193 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
17194 All callers changed.
17195
17196 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
17197
17198 * data.c (Fdefalias): Add an optional `docstring' argument.
17199 (set_internal, Fsetq_default): Use XCAR/XCDR.
17200
17201 * composite.c (HASH_VALUE, HASH_KEY):
17202 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
17203
17204 2002-07-09 Kenichi Handa <handa@etl.go.jp>
17205
17206 * callproc.c (Fcall_process): Fix previous change.
17207
17208 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
17209
17210 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
17211 Add support for hash-tables.
17212 (Ftry_completion): Return t even if the string appears multiple times.
17213
17214 * fns.c (Fnconc): Use XCDR.
17215 (Fprovide): Use CONSP and XCDR.
17216 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17217 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
17218 (Fmake_hash_table): Accept `:size nil'.
17219 (Fmakehash): Delete: moved to subr.el.
17220 (syms_of_fns): Don't defsubr makehash.
17221
17222 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17223 (HASH_TABLE_SIZE): Move from fns.c.
17224
17225 2002-07-07 Richard M. Stallman <rms@gnu.org>
17226
17227 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
17228 Instead just return 0 when there is something to be done.
17229 (try_scrolling): If make_cursor_line_fully_visible returns 0,
17230 retry scrolling as if cursor were off the bottom.
17231 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
17232 return CURSOR_MOVEMENT_MUST_SCROLL.
17233 (redisplay_window): If make_cursor_line_fully_visible returns 0,
17234 go to try_to_scroll.
17235
17236 * buffer.c (Fbuffer_local_value): Store current value into its binding
17237 so we get the up-to-date value for the binding that is loaded.
17238
17239 * eval.c (Fdefmacro): Doc fix.
17240
17241 2002-07-05 Dave Love <fx@gnu.org>
17242
17243 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
17244 correctly.
17245
17246 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
17247 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
17248 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
17249 CCL_LookupCharConstTbl.
17250 (syms_of_ccl): Defvar translation-hash-table-vector.
17251
17252 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17253
17254 * xdisp.c: Remove unused variable `face'.
17255
17256 2002-07-04 Juanma Barranquero <lektu@terra.es>
17257
17258 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
17259 obsolescence information.
17260
17261 2002-07-03 Andrew Choi <akochoi@shaw.ca>
17262
17263 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
17264 pattern. Search cache first.
17265 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
17266 for Japanese font.
17267 (XLoadQueryFont): Use it.
17268
17269 2002-07-02 Richard M. Stallman <rms@gnu.org>
17270
17271 * keymap.c (Fdefine_key): Doc fix.
17272
17273 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
17274
17275 2002-07-02 Juanma Barranquero <lektu@terra.es>
17276
17277 * keymap.c (syms_of_keymap): Fix typo.
17278
17279 2002-07-01 Andrew Choi <akochoi@shaw.ca>
17280
17281 * s/darwin.h: Define POSIX_SIGNALS.
17282
17283 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
17284 and FSRefMakePath to convert FSSpec returned with Apple Event to
17285 Posix pathname.
17286 (mac_initialize) [TARGET_API_MAC_CARBON]:
17287 Call init_required_apple_events and disable the `Quit' menu item
17288 provided automatically by the Carbon Toolbox.
17289
17290 2002-07-01 Dave Love <fx@gnu.org>
17291
17292 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
17293 for K&R.
17294
17295 * xterm.c: Fix prototype for K&R.
17296
17297 * term.c (costs_set): Declare static, non-initialized for pcc.
17298
17299 2002-07-01 Richard M. Stallman <rms@gnu.org>
17300
17301 * keyboard.c (timer_last_idleness_start_time): New variable.
17302 (timer_start_idle): Set that.
17303 (read_key_sequence): Use that to reset timer_idleness_start_time
17304 to previous value.
17305
17306 * window.c (Frecenter): With arg, set optional_new_start.
17307
17308 * xdisp.c (redisplay_internal): Make optional_new_start really work.
17309
17310 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
17311 buffer for completion.
17312
17313 2002-06-29 Ken Raeburn <raeburn@gnu.org>
17314
17315 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
17316
17317 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17318
17319 * keyboard.c (readable_filtered_events): New function that filters
17320 FOCUS_IN_EVENT depending on parameter.
17321 (readable_events): Calls readable_filtered_events, not filtering
17322 FOCUS_IN_EVENT.
17323 (get_filtered_input_pending): New function, filtering parameter passed
17324 to readable_filtered_events.
17325 (get_input_pending): Calls get_filtered_input_pending, not filtering
17326 FOCUS_IN_EVENT.
17327 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
17328 FOCUS_IN_EVENT.
17329
17330 * xterm.h (struct x_output): Add focus_state.
17331
17332 * xterm.c (x_focus_changed): New function.
17333 (x_detect_focus_change): New function.
17334 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
17335 EnterNotify and LeaveNotify to track X focus changes.
17336
17337 2002-06-28 Andreas Schwab <schwab@suse.de>
17338
17339 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
17340
17341 2002-06-27 Kim F. Storm <storm@cua.dk>
17342
17343 * xdisp.c (mode_line_string_list, mode_line_string_face)
17344 (mode_line_string_face_prop): New variables.
17345 (store_mode_line_string): New function.
17346 (display_mode_element): Use store_mode_line_string to
17347 add mode-line string elements to mode_line_string_list
17348 when mode_line_string_list is non-nil.
17349 (Fformat_mode_line): Now returns propertized string by
17350 default. New arg NO-PROPS to ignore properties.
17351 (decode_mode_spec): Only add two dashes for %- in propertized
17352 mode-line string.
17353 (syms_of_xdisp): Init and staticpro mode_line_string_list.
17354
17355 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
17356
17357 * minibuf.c (minibuffer_completion_contents): Add return type.
17358
17359 2002-06-27 Juanma Barranquero <lektu@terra.es>
17360
17361 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
17362
17363 2002-06-26 Juanma Barranquero <lektu@terra.es>
17364
17365 * fileio.c (read_file_name_cleanup): Add missing return.
17366
17367 2002-06-26 Richard M. Stallman <rms@gnu.org>
17368
17369 * window.c (Frecenter): Don't set force_start flag.
17370
17371 * minibuf.c (do_completion, Fminibuffer_complete_word)
17372 (Fminibuffer_completion_help): Complete just the text before point.
17373 (minibuffer_completion_contents): New function.
17374
17375 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
17376
17377 * frame.c (frames_bury_buffer): Function deleted.
17378
17379 2002-06-25 Miles Bader <miles@gnu.org>
17380
17381 * callint.c (Fcall_interactively): When checking to see if doprnt hit
17382 the end of callint_message, allow for a terminating '\0'.
17383
17384 2002-06-24 Juanma Barranquero <lektu@terra.es>
17385
17386 * w32select.c: Include composite.h.
17387
17388 * w16select.c: Likewise.
17389
17390 2002-06-24 Kenichi Handa <handa@etl.go.jp>
17391
17392 * callproc.c (Fcall_process): If code detection is necessary,
17393 call detect_coding directly here.
17394
17395 * coding.c (detect_eol): Preserve coding->cmp_data.
17396
17397 * w16select.c (Fw16_get_clipboard_data):
17398 * w32fns.c (w32_to_x_font):
17399 * w32select.c (Fw32_get_clipboard_data):
17400 * xselect.c (selection_data_to_lisp_data):
17401 * xterm.c (XTread_socket): Disable composition handling.
17402
17403 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
17404
17405 * print.c (temp_output_buffer_setup): Kill all local variables.
17406
17407 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17408
17409 * lread.c (Fread): Remove redundant and imprecise declaration.
17410
17411 * xfns.c (check_x_display_info): Use check_x_frame.
17412
17413 * .gdbinit (xprintsym): Use the new `xname' field.
17414 (xsymbol): Use it.
17415
17416 2002-06-22 Jason Rumney <jasonr@gnu.org>
17417
17418 * w32fns.c (file_dialog_callback): New function.
17419 (Fx_file_dialog): Allow selecting directories as well as files.
17420
17421 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17422
17423 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17424 OpenBSD. Add support for mipseb-*-netbsd* machines.
17425
17426 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17427
17428 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17429 black and white before scrolling. Restore frame background and
17430 foreground color after scrolling.
17431 (do_window_update): Call XClearWindow before calling expose_frame.
17432 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17433 FRAME_FOREGROUND_PIXEL of frame.
17434
17435 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17436 test Mac command key as <ALT> key.
17437
17438 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17439
17440 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17441
17442 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17443 Lookup keys in function-key-map immediately so that key-translation-map
17444 can be applied earlier.
17445 Remove function_key_possible and key_translation_possible, replaced
17446 by checking `keytran_start < t'.
17447
17448 * .gdbinit (xsymbol): Use the new `xname' field.
17449
17450 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17451
17452 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17453 test Mac command key as <ALT> key.
17454
17455 * mac.c (do_applescript): Call initialize_applescript if necessary
17456 when first called. Dispose of result_desc only when there is no error.
17457 (Fdo_applescript): Use %d format specifier instead of %ld.
17458
17459 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17460
17461 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17462 of FrontWindow for cases keyDown and autoKey.
17463
17464 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17465 Vdefault_fontset to Monaco with mac-roman coding.
17466
17467 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
17468 init_process before and after inclusion of Carbon/Carbon.h, resp.
17469
17470 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
17471 cursor_gc.
17472 (add_font_name_table_entry): New function.
17473 (init_font_name_table): Use add_font_name_table_entry; add italic,
17474 bold, and bold-italic entries for truetype fonts.
17475
17476 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
17477 for Mac too.
17478 (try_font_list) [MAC_OS]: If no font matches given registry, try
17479 fonts with any registry matching face_family.
17480 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
17481
17482 * s/darwin.h: If autoconf detects the Ncurses library, define
17483 LIBS_TERMCAP to -lncurses to use it.
17484
17485 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
17486
17487 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
17488
17489 2002-06-15 Richard M. Stallman <rms@gnu.org>
17490
17491 * window.c (Fset_window_configuration): Explicitly preserve
17492 the point value that new_current_buffer had at the start.
17493
17494 2002-06-14 Juanma Barranquero <lektu@terra.es>
17495
17496 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
17497 Fix typos.
17498
17499 2002-06-14 Kim F. Storm <storm@cua.dk>
17500
17501 * insdel.c (insert_1_both, insert_from_string_1)
17502 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
17503 insert happened in the end_unchanged region. Otherwise, the
17504 redisplay may be confused and duplicate the last line in the
17505 buffer [seen after save-buffer when require-final-newline==t].
17506
17507 2002-06-13 Jason Rumney <jasonr@gnu.org>
17508
17509 * w32.c (init_environment): Remove EMACSLOCKDIR.
17510 (stat): Swap _S_IFDIR and _S_IFREG.
17511
17512 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17513
17514 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
17515 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
17516 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
17517 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
17518 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
17519 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
17520 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
17521 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
17522 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
17523 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
17524 SELECTION_REQUEST_EVENT, selection_clear_event to
17525 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
17526 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
17527 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
17528 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
17529 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
17530 no_event to NO_EVENT.
17531
17532 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17533
17534 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
17535
17536 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
17537
17538 * intervals.c (textget): Don't forget to `return'.
17539 (lookup_char_property): Use XCAR/XCDR.
17540
17541 2002-06-12 Juanma Barranquero <lektu@terra.es>
17542
17543 * xdisp.c (Fformat_mode_line): Fix typo.
17544
17545 2002-06-12 Kim F. Storm <storm@cua.dk>
17546
17547 * xdisp.c (Fformat_mode_line): New function.
17548 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
17549 (store_frame_title_char, store_frame_title): Use unconditionally.
17550 (init_xdisp): Defsubr Fformat_mode_line.
17551 Initialize frame_title_buf etc. unconditionally.
17552
17553 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
17554
17555 * keyboard.c (read_key_sequence):
17556 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
17557 things through those maps after downcasing events.
17558 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
17559 applies after function-key-map.
17560 Make sure that keytran can be done in the middle in the sequence.
17561 Be careful not to throw away events past the one we downcase.
17562
17563 * lread.c (read_integer): Remove unused var `tem'.
17564 (read1): Fix int/Lisp_Object mixup.
17565
17566 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
17567
17568 2002-06-11 Richard M. Stallman <rms@gnu.org>
17569
17570 * keyboard.c (readable_events): Ignore any number of
17571 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
17572
17573 2002-06-09 Miles Bader <miles@gnu.org>
17574
17575 * xfaces.c (Ftty_supports_face_attributes_p): New function.
17576 (parse_rgb_list, tty_lookup_color): New functions.
17577 (tty_defined_color): Use `tty_lookup_color' to do all the work.
17578 (color_distance, Fcolor_distance): New functions.
17579 (TTY_SAME_COLOR_THRESHOLD): New macro.
17580 (Qtty_color_standard_values): New variable.
17581 (syms_of_xfaces): Initialize new vars & functions.
17582
17583 2002-06-08 Colin Walters <walters@verbum.org>
17584
17585 * textprop.c (Vchar_property_alias_alist): New variable.
17586 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
17587
17588 * intervals.c (lookup_char_property): New function for looking up
17589 overlay and text properties, created from textget.
17590 (textget): Use it.
17591
17592 * intervals.h (lookup_char_property): Declare.
17593 (Vchar_property_alias_alist): Declare.
17594
17595 * buffer.c (Foverlay_get): Use lookup_char_property.
17596
17597 2002-06-07 Sam Steingold <sds@gnu.org>
17598
17599 * xselect.c (lisp_data_to_selection_data): Fix last change:
17600 *data_ret is not a Lisp string, while unibyte_string is.
17601
17602 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
17603
17604 * xselect.c (lisp_data_to_selection_data): Fix last change:
17605 set size_ret.
17606
17607 2002-06-07 Andreas Schwab <schwab@suse.de>
17608
17609 * m/amdx86-64.h: New file.
17610
17611 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
17612
17613 * fns.c (Fstring_make_unibyte): Doc fix.
17614
17615 * xselect.c (lisp_data_to_selection_data): If the requested type
17616 is STRING, call string_make_unibyte to encode the selected text
17617 as a string.
17618
17619 * window.c (Fset_window_hscroll): Doc fix.
17620
17621 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17622
17623 * fileio.c (choose_write_coding_system):
17624 Call select-safe-coding-system properly.
17625
17626 2002-06-03 Richard M. Stallman <rms@gnu.org>
17627
17628 * xdisp.c (message_with_string): Error if STRING is not a string.
17629
17630 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
17631
17632 * fileio.c (choose_write_coding_system): Pass FILE arg to
17633 Vselect_safe_coding_system_function.
17634
17635 2002-06-03 Ken Raeburn <raeburn@gnu.org>
17636
17637 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
17638
17639 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
17640
17641 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
17642 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
17643 * keymap.c (describe_command): Likewise.
17644 * minibuf.c (read_minibuf): Likewise.
17645
17646 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
17647 Cast `current_column' return value to int.
17648 (back_to_previous_visible_line_start)
17649 (reseat_at_next_visible_line_start, next_element_from_buffer):
17650 Cast `indented_beyond_p' 3rd arg to float.
17651
17652 * indent.c (last_known_column): Now a float.
17653 (current_column_1, position_indentation, current_column)
17654 (string_display_width): Return float.
17655 (Fcurrent_column): Cast `current_column' return value to int.
17656 (Fcurrent_indentation): Cast `position_indentation' retval to int.
17657 (indented_beyond_p): Third arg now a float.
17658 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
17659
17660 * lisp.h (current_column): Now returns float.
17661 (indented_beyond_p): 3rd arg now a float.
17662
17663 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
17664
17665 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
17666 is Qcompound_text_with_extensions.
17667
17668 * xselect.c (lisp_data_to_selection_data): Always set selection
17669 type as string if x_encode_text returns streingp non-NULL.
17670
17671 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
17672
17673 2002-05-30 Richard M. Stallman <rms@gnu.org>
17674
17675 * window.c (Fset_window_configuration): Correct the handling
17676 of point in current buffer, to work with multiple windows.
17677
17678 2002-05-29 Colin Walters <walters@verbum.org>
17679
17680 * lread.c (Fread_from_string): Don't depend on order of evaluation
17681 for C function parameters.
17682
17683 2002-05-28 Richard M. Stallman <rms@gnu.org>
17684
17685 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
17686 way for blinked-off state and for a nonselected window.
17687
17688 * window.c (window_scroll_pixel_based): Don't call Fbolp;
17689 instead, see if the new start pos is at beginning of line.
17690
17691 * fileio.c (Fwrite_region): If START is a string, don't
17692 make any annotations.
17693
17694 * eval.c (syms_of_eval): Doc fix.
17695
17696 2002-05-28 Colin Walters <walters@debian.org>
17697
17698 * emacs.c (USAGE1): Add --no-splash.
17699 (standard_args): Ditto.
17700
17701 2002-05-28 Colin Walters <walters@gnu.org>
17702
17703 * lread.c (readchar_count): New variable.
17704 (readchar): Increment it.
17705 (unreadchar): Decrement it.
17706 (read_multibyte): Decrement it.
17707 (Vread_with_symbol_positions): New variable.
17708 (Vread_symbol_positions_list): New variable.
17709 (read_internal_start): New function, created from Fread and
17710 Fread_from_string. Handle Vread_symbol_positions_list and
17711 Vread_with_symbol_positions.
17712 (readevalloop, Fread, Fread_from_string): Use it.
17713 (read1): Use readchar_count to add symbol positions to
17714 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
17715 (syms_of_lread): DEFVAR_LISP and initialize them.
17716
17717 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
17718 (substitute_object_recurse, substitute_object_in_subtree)
17719 (substitute_in_interval): Prototype.
17720 (read_multibyte): Return c if it's less than zero.
17721
17722 2002-05-28 Kim F. Storm <storm@cua.dk>
17723
17724 * fileio.c (Fread_file_name_internal): Added brute-force
17725 speed up for using predicate file-directory-p.
17726
17727 2002-05-28 Kim F. Storm <storm@cua.dk>
17728
17729 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
17730 New variables.
17731 (syms_of_fileio): DEFVAR_LISP them.
17732 (read_file_name_cleanup): New unwind function.
17733 (Fread_file_name_internal): Only return completions satifying
17734 Vread_file_name_predicate. Temporarily unwind protect and rebind
17735 default-directory while checking completions against the predicate.
17736 (Fread_file_name): Added PREDICATE argument. Specbind it to
17737 Vread_file_name_predicate during completion.
17738 Call Vread_file_name_function to read the file name if non-nil.
17739
17740 * lisp.h (Fread_file_name): Now has 6 args.
17741
17742 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
17743 predicate for Fread_file_name when reading directory name.
17744 Supply Qnil for predicate in other calls to Fread_file_name.
17745
17746 2002-05-26 Miles Bader <miles@gnu.org>
17747
17748 * term.c (tty_capable_p): New function.
17749 * dispextern.h (tty_capable_p): New function declaration.
17750 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
17751 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
17752
17753 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
17754
17755 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
17756 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
17757 (Vwrite_region_annotate_functions): Docstring fix.
17758
17759 2002-05-23 Kim F. Storm <storm@cua.dk>
17760
17761 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
17762 phys_cursor's hpos is overwritten. This is still not completely
17763 correct, as it doesn't really make sense to use hpos at all to
17764 get the cursor glyph (as that is relative to the width of the
17765 characters on the line, which may have changed during the update).
17766
17767 2002-05-22 Jason Rumney <jasonr@gnu.org>
17768
17769 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
17770 Lisp_Object.
17771 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
17772 Use modified enumfont_t struct.
17773
17774 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17775
17776 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
17777 Handle the `hbar' cursor type.
17778 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17779
17780 * w32fns.c (Qhbar): New variable.
17781 (x_specified_cursor_type): Use it.
17782
17783 2002-05-21 Ken Raeburn <raeburn@gnu.org>
17784
17785 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
17786 now, when the address is needed.
17787
17788 2002-05-21 Colin Walters <walters@gnu.org>
17789
17790 * Makefile.in (shortlisp): Add font-core.el.
17791
17792 2002-05-20 Richard M. Stallman <rms@gnu.org>
17793
17794 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
17795
17796 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
17797 equivalent key bindings here.
17798
17799 2002-05-20 Ken Raeburn <raeburn@gnu.org>
17800
17801 Change symbol structure to contain a lisp object for the symbol
17802 name:
17803 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
17804 object field named "xname".
17805 (SYMBOL_NAME): New macro.
17806 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
17807 name field.
17808 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
17809 (mark_object, gc_sweep): Use symbol xname field and XSTRING
17810 instead of name field.
17811 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
17812 SYMBOL_NAME instead of XSYMBOL and name field.
17813 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
17814 instead of XSYMBOL and name field.
17815 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
17816 and SYMBOL_NAME instead of XSYMBOL and name field.
17817 * coding.c (Fread_coding_system, code_convert_region1)
17818 (code_convert_string1, code_convert_string_norecord)
17819 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
17820 XSYMBOL and name field.
17821 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
17822 (Fmake_variable_buffer_local, Fmake_local_variable)
17823 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
17824 of XSYMBOL and name field.
17825 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
17826 XSYMBOL and name field.
17827 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
17828 instead of XSYMBOL and name field.
17829 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
17830 XSYMBOL and name field.
17831 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
17832 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17833 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
17834 instead of XSYMBOL and name field.
17835 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
17836 (parse_modifiers, apply_modifiers, Fevent_convert_list)
17837 (parse_solitary_modifier, Fexecute_extended_command):
17838 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17839 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
17840 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
17841 of XSYMBOL and name field.
17842 (describe_command, describe_translation): Use SYMBOL_NAME and
17843 assignment instead of XSYMBOL and name field and XSETSTRING.
17844 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
17845 instead of XSYMBOL and name field.
17846 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
17847 name field and XSETSTRING.
17848 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17849 of XSYMBOL and name field.
17850 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
17851 assignment instead of XSYMBOL and name field and XSETSTRING.
17852 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
17853 XSTRING instead of XSYMBOL and name field.
17854 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
17855 and XSTRING instead of XSYMBOL and name field.
17856 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
17857 and XSTRING instead of XSYMBOL and name field.
17858 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
17859 XSTRING instead of XSYMBOL and name field.
17860 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17861 of XSYMBOL and name field.
17862 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
17863 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17864
17865 2002-05-19 Ken Raeburn <raeburn@gnu.org>
17866
17867 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
17868 and XCDR real rvalues in most configurations.
17869
17870 * buffer.c (fix_overlays_in_range, fix_overlays_before):
17871 Don't take the address of the cdr part of a cons cell; instead, track
17872 the parent cell and call XSETCDR, or set the variable for the head
17873 of the list if we haven't started down the list yet.
17874
17875 2002-05-19 Richard M. Stallman <rms@gnu.org>
17876
17877 * doc.c (reread_doc_file): Don't ask for confirmation.
17878
17879 2002-05-18 Jason Rumney <jasonr@gnu.org>
17880
17881 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
17882 (xbm_load_image): Use it.
17883 (xbm_load): Ditto.
17884 (xbm_read_bitmap_data): Reverted to xfns.c version.
17885 From David Ponce <david@dponce.com>.
17886
17887 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
17888
17889 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
17890 2.02 and later.
17891
17892 2002-05-16 Juanma Barranquero <lektu@terra.es>
17893
17894 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
17895
17896 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
17897
17898 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
17899 meaningful test.
17900 (read_char_minibuf_menu_prompt): Fix typo.
17901
17902 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
17903
17904 * eval.c (Fcommandp): Doc fix.
17905
17906 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
17907
17908 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
17909 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
17910 (Fset_keymap_parent): Gcpro a bit more.
17911 (access_keymap): Gcpro around meta_map call and around the main loop.
17912 (get_keyelt): Gcpro when following indirect references.
17913 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
17914 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
17915 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
17916 Remove useless ad-hoc remap code.
17917
17918 2002-05-13 Richard M. Stallman <rms@gnu.org>
17919
17920 * search.c (search_buffer): Give up boyer moore search if inverse
17921 translation change charset_base.
17922
17923 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
17924
17925 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
17926 characters is carried over from the previous block of text, adjust
17927 coding->produced to account for the extra character.
17928
17929 2002-05-11 Andreas Schwab <schwab@suse.de>
17930
17931 * coding.c (intersection): Keep the elements of the returned list
17932 in the same order as in the first list.
17933
17934 2002-05-11 Kim F. Storm <storm@cua.dk>
17935
17936 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
17937 only update cmm_size if realloc actually succeeds.
17938 Testing with initial size of 2 elements revealed that using
17939 realloc on GNU/Linux would cause a random trap in xmalloc
17940 later on, so I rewrote the code to use malloc/bcopy/free instead
17941 of realloc.
17942
17943 2002-05-10 Jason Rumney <jasonr@gnu.org>
17944
17945 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
17946
17947 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
17948
17949 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
17950 parens, to ensure correct evaluation order.
17951
17952 2002-05-10 Kim F. Storm <storm@cua.dk>
17953
17954 * keymap.c (Vemulation_mode_map_alists): New variable.
17955 (syms_of_keymap): DEFVAR_LISP it.
17956 (current_minor_maps): Process keymap alists in that list before
17957 minor-mode-overriding-map-alist and minor-mode-map-alist.
17958
17959 2002-05-09 Richard M. Stallman <rms@gnu.org>
17960
17961 * search.c (Freplace_match): Doc fix.
17962
17963 2002-05-09 Kim F. Storm <storm@cua.dk>
17964
17965 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17966 Enlarge cursor rectangle drawn around image with non-zero relief.
17967
17968 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
17969 Enlarge cursor rectangle drawn around image with non-zero relief.
17970
17971 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
17972 Enlarge cursor rectangle drawn around image with non-zero relief.
17973
17974 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
17975
17976 * xselect.c (lisp_data_to_selection_data): Don't set selection
17977 type if comes from the Lisp object's car. If the selection
17978 contains a pure ASCII text, always return QSTRING as its type.
17979
17980 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17981
17982 * mac.c (mac-cut-function): Doc fix.
17983
17984 2002-05-05 Richard M. Stallman <rms@gnu.org>
17985
17986 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
17987
17988 2002-05-04 Jason Rumney <jasonr@gnu.org>
17989
17990 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
17991 for event-click-count.
17992
17993 * process.c (init_process): Only add server subfeature if we can
17994 use non-blocking I/O.
17995
17996 2002-05-04 Andrew Choi <akochoi@shaw.ca>
17997
17998 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
17999 repeatedly.
18000
18001 2002-05-03 Jason Rumney <jasonr@gnu.org>
18002
18003 * process.c (Fmake_network_process): Only support server sockets
18004 when we can make them non-blocking.
18005
18006 * s/ms-w32.h (HAVE_SELECT): Define.
18007
18008 * w32.h (FILE_NDELAY): New flag.
18009
18010 * w32.c (sys_getpeername, fcntl): New functions.
18011 (_sys_read_ahead): Temporarily block on non-blocking sockets.
18012
18013 * w32proc.c: Include sys/file.h.
18014
18015 2002-05-03 Colin Walters <walters@verbum.org>
18016
18017 * callproc.c (Vgame_score_directory): Renamed to
18018 Vshared_game_score_directory.
18019
18020 2002-04-30 Richard M. Stallman <rms@gnu.org>
18021
18022 * s/gnu.h [emacs]: Include stdio.h.
18023 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
18024
18025 * eval.c (do_autoload): Error if called while preparing to dump.
18026
18027 * fns.c (Frequire): Error if need to load while preparing to dump.
18028
18029 2002-04-28 Colin Walters <walters@verbum.org>
18030
18031 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
18032 Default to "~/.emacs.d/games".
18033
18034 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
18035
18036 * lread.c (openp): Change arg exec_only to predicate.
18037 (build_load_history): Use XCAR/XCDR.
18038 (Flocate_file_internal): New fun.
18039 (syms_of_lread): Defsubr it.
18040 (Fload): Update call to openp.
18041
18042 * lisp.h (openp): Update prototype.
18043
18044 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
18045 * w32proc.c (sys_spawnve):
18046 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
18047 * w32.c (check_windows_init_file):
18048 * sound.c (Fplay_sound_internal):
18049 * process.c (Fstart_process):
18050 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
18051 * mac.c (run_mac_command):
18052 * emacs.c (init_cmdargs):
18053 * callproc.c (Fcall_process): Update call to openp.
18054
18055 * textprop.c (remove_properties): Don't use XCAR without CONSP.
18056
18057 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
18058
18059 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18060
18061 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
18062 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
18063
18064 2002-04-28 Richard M. Stallman <rms@gnu.org>
18065
18066 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
18067
18068 * eval.c (Fcommandp): New arg for_call_interactively.
18069 * lisp.h (Fcommandp): Declare new arg.
18070
18071 2002-04-28 Jason Rumney <jasonr@gnu.org>
18072
18073 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
18074
18075 * w32.c (stat, fstat): Use file index information to generate
18076 inodes for directories where available.
18077
18078 2002-04-26 Andrew Choi <akochoi@shaw.ca>
18079
18080 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
18081 [HAVE_CARBON]: Include Mac object files.
18082
18083 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
18084 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
18085 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
18086 MAC_OSX, and MAC_OS instead of macintosh.
18087
18088 * editfns.c [MAC_OS8]: Include stdio.h.
18089
18090 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
18091
18092 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
18093 Apple Monaco.
18094
18095 * process.c (QCfamily, QCfilte): Declare extern.
18096 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
18097 calling select.
18098
18099 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
18100
18101 * tparam.c [MAC_OSX]: Don't define BC and UP.
18102
18103 * config.in [HAVE_CARBON]: Add.
18104
18105 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
18106 Move here from mac/src and mac/inc.
18107
18108 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
18109
18110 2002-04-26 Gerd Moellmann <gerd@gnu.org>
18111
18112 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
18113 Compute phys_cursor_width from the x position returned
18114 by x_draw_glyhs, which is cheaper.
18115 (x_display_and_set_cursor): Compute the buffer-local value
18116 of `cursor-in-non-selected-windows' only when needed.
18117
18118 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18119
18120 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
18121 cursor on a stretch glyph has a width that depends on
18122 x_stretch_cursor_p.
18123
18124 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18125
18126 * abbrev.c (abbrev-start-location): Doc fix.
18127
18128 * indent.c (Fvertical_motion): Fix last change.
18129
18130 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18131
18132 * indent.c (Fvertical_motion): Move to the start of the line
18133 containing PT before moving up or down.
18134
18135 2002-04-24 Gerd Moellmann <gerd@gnu.org>
18136
18137 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
18138 case of writing a whole row, more or less analogous to the case of
18139 writing only parts of a row.
18140
18141 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
18142 0 for NO_CURSOR.
18143
18144 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
18145
18146 2002-04-23 Colin Walters <walters@verbum.org>
18147
18148 * buffer.c (syms_of_buffer): Doc fix.
18149
18150 2002-04-23 Gerd Moellmann <gerd@gnu.org>
18151
18152 * xterm.c (notice_overwritten_cursor): Handle the special case
18153 of the cursor being in the first blank non-text line at the
18154 end of a window.
18155
18156 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
18157 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
18158 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
18159 bar cursors only, to make phys_cursor_width contain what its name
18160 suggests.
18161 (notice_overwritten_cursor): Consider the cursor image erased if
18162 the output area intersects the cursor image in y-direction.
18163
18164 2002-04-23 Simon Marshall <simon@gnu.org>
18165
18166 * xfns.c (x_set_mouse_color): Change default for cross_cursor
18167 to XC_hand2.
18168
18169 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18170
18171 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
18172
18173 2002-04-22 Kim F. Storm <storm@cua.dk>
18174
18175 * textprop.c (remove_properties): Fixed trap for malformed plist.
18176
18177 2002-04-22 Richard M. Stallman <rms@gnu.org>
18178
18179 * cmds.c (Fend_of_line): Handle intangible text in mid line.
18180
18181 * window.c (make_window): Initialize height_fixed_p,
18182 last_cursor_off_p, and p->cursor_off_p slots.
18183
18184 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18185
18186 * fns.c (use-dialog-box): Doc fix.
18187
18188 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18189
18190 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
18191 variables `row', `i' and `area'.
18192 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
18193 toolkit library.
18194
18195 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
18196
18197 * xfaces.c (clear_font_table): Don't free the default font of
18198 a frame even if it's on another display.
18199 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
18200 that could be Qt.
18201
18202 2002-04-19 Juanma Barranquero <lektu@terra.es>
18203
18204 * indent.c (Fmove_to_column): Remove unused local variable
18205 `next_boundary_byte'.
18206 (current_column_1): Likewise.
18207
18208 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
18209
18210 * msdos.c (Qhbar): New variable.
18211 (syms_of_msdos): Intern and staticpro it.
18212 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
18213 cursor type.
18214
18215 2002-04-19 Dave Lambert <dlambert@acm.org>
18216
18217 Theses change implement an underscore-like (`hbar') cursor.
18218
18219 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
18220
18221 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
18222 Handle the `hbar' cursor type.
18223 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
18224
18225 * xfns.c (Qhbar): New variable.
18226 (syms_of_xfns): Intern and staticpro it.
18227 (x_specified_cursor_type): Handle `hbar' cursor.
18228
18229 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
18230 not defined.
18231
18232 2002-04-18 Richard M. Stallman <rms@gnu.org>
18233
18234 * textprop.c (remove_properties): New arg LIST allows scanning
18235 either a list or a plist.
18236 (interval_has_some_properties_list): New function, like
18237 interval_has_some_properties using list instead of plist.
18238 All callers changed.
18239 (Fremove_list_of_text_properties): New function.
18240 (syms_of_textprop): Defsubr it.
18241
18242 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18243
18244 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
18245
18246 2002-04-17 Juanma Barranquero <lektu@terra.es>
18247
18248 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
18249
18250 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18251
18252 * window.c (coordinates_in_window): Don't report on margin area
18253 if its width is zero.
18254
18255 2002-04-16 Jason Rumney <jasonr@gnu.org>
18256
18257 * w32fns.c (Fx_file_dialog): Decode file name before using.
18258
18259 * w32term.c (construct_drag_n_drop): Likewise.
18260
18261 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
18262
18263 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
18264 store load-history in pure space.
18265
18266 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
18267
18268 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
18269
18270 * xterm.c (Qlatin_1, Qutf_8): New vars.
18271 (syms_of_xterm): Initialize them.
18272 (XTread_socket): Eliminate incorrect optimization that tried to avoid
18273 decoding the output of X*LookupString.
18274 Always use latin-1 to decode the output of XLookupString.
18275 Try Xutf8LookupString if XmbLookupString failed.
18276
18277 * region-cache.c (new_region_cache): Use BEG.
18278
18279 2002-04-16 Gerd Moellmann <gerd@gnu.org>
18280
18281 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
18282 configuration files.
18283 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
18284 returns 0.
18285
18286 2002-04-15 Andreas Schwab <schwab@suse.de>
18287
18288 * config.in: Regenerated using autoheader.
18289
18290 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
18291 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
18292 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
18293 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
18294 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
18295 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
18296 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
18297 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
18298 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
18299 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
18300 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
18301 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
18302 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
18303 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
18304 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
18305 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
18306 STACK_DIRECTION, now set by autoconf.
18307
18308 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18309
18310 * dispnew.c (marginal_area_string): Sort arguments.
18311
18312 * dispextern.h (marginal_area_string): Add prototype.
18313
18314 2002-04-13 Richard M. Stallman <rms@gnu.org>
18315
18316 * fileio.c (Finsert_file_contents):
18317 Don't call temp_output_buffer_setup--do just part, by hand.
18318
18319 * coding.c (run_pre_post_conversion_on_str):
18320 Don't call temp_output_buffer_setup--do just part, by hand.
18321
18322 * keyboard.c (command_loop_1): Don't call start_hourglass
18323 or cancel_hourglass when executing a macro.
18324
18325 * marker.c (count_markers): New function.
18326
18327 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
18328 grow without limit. Move recently used elements to the front.
18329
18330 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
18331
18332 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
18333
18334 2002-04-12 Gerd Moellmann <gerd@gnu.org>
18335
18336 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
18337 rows marginal areas.
18338 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
18339 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
18340
18341 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
18342
18343 2002-04-12 Dave Love <fx@gnu.org>
18344
18345 * dispnew.c (marginal_area_string): New.
18346
18347 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
18348 (Qleft_margin, Qright_margin): Declare.
18349 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
18350
18351 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
18352 note_mode_line_highlight and extended.
18353
18354 * keyboard.c (Qleft_margin, Qright_margin): Declare.
18355 (make_lispy_event): Deal with mouse events in margins.
18356
18357 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
18358
18359 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
18360
18361 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
18362 than deactivating the mark if tmm is set to `lambda'.
18363 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
18364 Use a single event for HELP_EVENT.
18365 (Fexecute_extended_command): Save last_point_position.
18366
18367 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18368
18369 * lisp.h (Fpropertize): Add prototype.
18370
18371 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
18372
18373 2002-04-10 Colin Walters <walters@verbum.org>
18374
18375 * config.in: Add HAVE_SHARED_GAME_DIR.
18376
18377 * callproc.c (Vgame_score_directory): New variable.
18378 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
18379
18380 2002-04-10 Richard M. Stallman <rms@gnu.org>
18381
18382 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
18383
18384 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
18385
18386 * minibuf.c (read_minibuf): Use empty_string.
18387 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
18388 Short-circuit the search as soon as it "failed".
18389 (Fall_completions): Allow lambda forms and lists of strings for alist.
18390 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
18391 when require_match is nil.
18392 (Ftest_completion): Rename from `test_completion' and export to elisp.
18393 Call the predicate also when alist is a list.
18394 Obey Vcompletion_regexp_list.
18395 (do_completion, Fminibuffer_complete_and_exit): Use it.
18396 (Fassoc_string): Rename from `assoc_for_completion'.
18397 Allow list of strings as well and export to elisp.
18398
18399 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
18400
18401 * puresize.h (BASE_PURESIZE): Increase to 900KB.
18402
18403 2002-04-08 Juanma Barranquero <lektu@terra.es>
18404
18405 * w32.c (sys_accept): Don't hide variable `s'.
18406
18407 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18408
18409 * callint.c (Fcall_interactively): Use INTEGERP instead of
18410 NUMBERP for checking Vhistory_length.
18411
18412 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18413
18414 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18415 Doc fix to reflect it.
18416
18417 2002-04-04 Richard M. Stallman <rms@gnu.org>
18418
18419 * xdisp.c (display_mode_element): New arg RISKY.
18420 Disregard text props found or specified within a variable
18421 that isn't marked risky-local-variable.
18422 (Qrisky_local_variable): New variable.
18423 (syms_of_xdisp): Init and staticpro it.
18424
18425 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18426
18427 * undo.c (record_point): New fun.
18428 (record_delete, record_insert): Use it.
18429
18430 2002-04-03 Juanma Barranquero <lektu@terra.es>
18431
18432 * doc.c (Fdocumentation): Add missing parentheses.
18433 (Fdocumentation_property): Likewise.
18434
18435 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18436
18437 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18438 data is 0, just return nil.
18439
18440 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18441
18442 * msdos.c (syms_of_msdos): Fix last change with
18443 mouse_autoselect_window.
18444
18445 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18446
18447 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18448 mouse_autoselect_window.
18449
18450 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18451
18452 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18453 with system-specific keysyms. Use it also for unknown function keys.
18454
18455 * doc.c (reread_doc_file): Return whether reload was attempted.
18456 (Fdocumentation, Fdocumentation_property): Don't try to reload
18457 if the doc is 0 and only ask once.
18458
18459 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18460
18461 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18462
18463 * keyboard.c (read_char): If the event was Qselect_window,
18464 restore timer_idleness_start_time to its previous value.
18465
18466 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
18467
18468 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
18469
18470 * region-cache.c (new_region_cache): Use BEG.
18471
18472 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
18473 Use BEG and BEG_BYTE.
18474
18475 * doc.c (get_doc_string): Return nil if the location is wrong.
18476 (reread_doc_file): New fun.
18477 (Fdocumentation, Fdocumentation_property):
18478 Call it if get_doc_string fails.
18479 (Fsnarf_documentation): Make it work for a dumped Emacs.
18480
18481 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
18482 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
18483
18484 * charset.c (Fstring): Allow 0 arguments.
18485
18486 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
18487
18488 * process.c (DATAGRAM_CONN_P, list_processes_1)
18489 (Fprocess_datagram_address, Fset_process_datagram_address)
18490 (Fset_network_process_options, server_accept_connection):
18491 Fix some int/Lisp_Object confusions (thank you union types).
18492
18493 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18494
18495 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
18496
18497 * w32term.c: Likewise.
18498 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
18499
18500 * keyboard.c (Qselect_window): New symbol.
18501 (head_table): Use it.
18502 (keys_of_keyboard): Bound select-window event to handle-select-window.
18503 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
18504
18505 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
18506 (last_window): New variable.
18507 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
18508 (note_mouse_movement): Remove reimplemented code in #if 0.
18509 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
18510 Emacs windows.
18511
18512 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
18513
18514 2002-03-31 Gerd Moellmann <gerd@gnu.org>
18515
18516 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
18517 Callers changed.
18518
18519 2002-03-30 Richard M. Stallman <rms@gnu.org>
18520
18521 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
18522 loop whenever it stops making progress.
18523
18524 * widget.c (set_frame_size): Don't call change_frame_size.
18525
18526 2002-03-30 Gerd Moellmann <gerd@gnu.org>
18527
18528 * dispnew.c (direct_output_for_insert):
18529 Call mark_window_display_accurate.
18530
18531 2002-03-29 Jason Rumney <jasonr@gnu.org>
18532
18533 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
18534
18535 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
18536
18537 * Makefile.in (lread.o): Depend on coding.h.
18538
18539 * lread.c (openp, Fload): Encode the file name before passing it
18540 to `stat', `access', and `emacs_open'.
18541 (openp): GCPRO the encoded file name. Don't recompute Lisp
18542 strings unnecessarily.
18543
18544 2002-03-29 Kim F. Storm <storm@cua.dk>
18545
18546 * fns.c (Flax_plist_put): Doc fix.
18547
18548 2002-03-28 Miles Bader <miles@gnu.org>
18549
18550 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
18551
18552 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18553
18554 * process.c (set-network-process-options): Add usage.
18555 (make-network-process): Doc fix.
18556
18557 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
18558
18559 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
18560
18561 2002-03-26 Richard M. Stallman <rms@gnu.org>
18562
18563 * fns.c (Fsubstring_no_properties): New function.
18564 (Flax_plist_get, Flax_plist_put): New functions.
18565 (syms_of_fns): defsubr them.
18566
18567 * xdisp.c (update_menu_bar): Test only update_mode_lines;
18568 don't test or alter w->update_mode_line.
18569
18570 * window.c (Fdisplay_buffer): Doc fix.
18571
18572 2002-03-24 Richard M. Stallman <rms@gnu.org>
18573
18574 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
18575
18576 2002-03-24 Gerd Moellmann <gerd@gnu.org>
18577
18578 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
18579 (Fdefmacro): Handle `(declare ...)'.
18580 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
18581 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
18582
18583 2002-03-24 Jason Rumney <jasonr@gnu.org>
18584
18585 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
18586 (xbm_file_p): Add prototypes.
18587 (xbm_format, xbm_image_p): Sync with xfns.c.
18588 (reflect_byte): New function.
18589 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
18590 (xbm_load_image): Create bitmaps with a depth of 1.
18591 (init_xfns): Enable XBM images.
18592
18593 2002-03-23 Jason Rumney <jasonr@gnu.org>
18594
18595 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
18596 correctly. Do not pass up_modifier to keyboard buffer.
18597
18598 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
18599
18600 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
18601
18602 * Makefile.in (bootstrapclean): New target.
18603 (bootstrap-temacs, bootstrap-doc): Remove.
18604 (bootstrap-emacs): Use a bog-standard `temacs'.
18605 Don't bother to build a DOC file.
18606
18607 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
18608
18609 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
18610 in temacs even if !CANNOT_DUMP.
18611 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
18612
18613 * alloc.c (check_pure_size): Only output a warning.
18614
18615 2002-03-22 Jason Rumney <jasonr@gnu.org>
18616
18617 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
18618 supported.
18619
18620 * w32term.c (zv_bits): Declare as short, for word alignment.
18621 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
18622 (syms_of_w32term): Define x-use-underline-position-properties.
18623
18624 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
18625 (clear_image_cache): Block input, fix logic, clear matrices in
18626 all frames that share this cache.
18627
18628 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
18629
18630 * emacs.c (main): Update the Copyright year in the blurb printed
18631 by "emacs --version".
18632
18633 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
18634
18635 * xterm.c (XTread_socket): If XK_ISO_Lock and
18636 XK_ISO_Last_Group_Lock are defined, handle keysyms between
18637 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
18638
18639 2002-03-21 Kim F. Storm <storm@cua.dk>
18640
18641 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
18642 menu-bar bindings in keymap and local-map properties _are_ used.
18643 But try keymap property first in accordance with 2002-01-03 patch.
18644 Added comment describing why this is not always reliable.
18645 (tool_bar_items): Ditto for tool-bar.
18646
18647 2002-03-21 Jason Rumney <jasonr@gnu.org>
18648
18649 * w32fns.c (x_clear_image_1): Disable color table code.
18650
18651 2002-03-21 Kim F. Storm <storm@cua.dk>
18652
18653 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
18654 removed the wrong version of the DEFUN macro; fixed it.
18655
18656 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
18657 Fmember rather than Fmemq).
18658 (Fprovide): Check that subfeatures is a list.
18659
18660 * process.c (QCfeature, QCdatagram): Removed variables.
18661 (QCtype, Qdatagram): New variables.
18662 (network_process_featurep): Removed function.
18663 (Fmake_network_process): Removed :feature check.
18664 Use :type 'datagram instead of :datagram t to create a datagram
18665 socket. This allows us to add other connection types (e.g. raw
18666 sockets) later in a consistent manner.
18667 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
18668 supported subfeatures for feature make-network-process.
18669 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
18670 Intern and staticpro QCtype and Qdatagram.
18671 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
18672
18673 * xfns.c: (QCtype): Remove duplicate declaration and
18674 initialization (is now declared in process.c).
18675
18676 * w32fns.c: (QCtype): Remove duplicate declaration and
18677 initialization (is now declared in process.c).
18678
18679 2002-03-21 Richard M. Stallman <rms@gnu.org>
18680
18681 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
18682 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
18683 when jumping to `fail' to avoid undoing reg changes in the
18684 last iteration of the loop.
18685 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
18686
18687 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
18688 Depend on process.h.
18689
18690 2002-03-20 Jason Rumney <jasonr@gnu.org>
18691
18692 Most of the following changes are still conditional on HAVE_IMAGES
18693 which is not set by default on Windows.
18694
18695 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
18696
18697 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
18698 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
18699 (four_corners_best, x_clear_image_1, x_clear_image)
18700 (x_alloc_image_color, postprocess_image)
18701 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
18702 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
18703 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
18704
18705 * w32gui.h (struct XImage): Define.
18706
18707 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
18708 extract mouse co-ordinates.
18709
18710 2002-03-20 Jason Rumney <jasonr@gnu.org>
18711
18712 * w32.c (init_winsock): Dynamically load new server and UDP
18713 socket functions.
18714 (socket_to_fd): New function.
18715 (sys_socket): Use it.
18716 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
18717 (sys_recvfrom, sys_sendto): New wrapper functions.
18718
18719 * process.c (QCfamily, QCfilter): Remove duplicate declaration
18720 and initialization.
18721
18722 * makefile.w32-in (LIBS): Remove $(WSOCK32).
18723
18724 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
18725
18726 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
18727 Don't use "sun" as a variable, it's a predefined constant on Sun
18728 machines.
18729
18730 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18731
18732 * bytecode.c (Fbyte_code): Revert last change.
18733
18734 2002-03-19 Kim F. Storm <storm@cua.dk>
18735
18736 * makefile.w32-in (LIBS): Add $(WSOCK32).
18737 From David Ponce <dponce@voila.fr>.
18738
18739 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18740
18741 * process.c (wait_reading_process_input): Move variables `pname'
18742 and `pnamelen' down where they are used.
18743
18744 * bytecode.c (Fbyte_code): Discard unused computed value to
18745 prevent gcc warning.
18746
18747 * lisp.h (Fplist_member): Add prototype.
18748
18749 2002-03-18 Kim F. Storm <storm@cua.dk>
18750
18751 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
18752 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
18753
18754 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
18755 Remove explicit GNU_LINUX settings for datagram support.
18756
18757 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18758
18759 * process.c (Fmake_network_process): Remove unused variable `sa'.
18760 Doc fix. Add usage:.
18761 (set_socket_options): Remove unused variables `optnum' and `opttype'.
18762
18763 2002-03-17 Richard M. Stallman <rms@gnu.org>
18764
18765 * xdisp.c (cursor_type_changed): New variable.
18766 (redisplay_internal): Redisplay all windows if cursor_type_changed.
18767 Clear it when clearing windows_or_buffers_changed.
18768 (try_cursor_movement, redisplay_window, try_window_id)
18769 (try_window_reusing_current_matrix): Test cursor_type_changed
18770 along with windows_or_buffers_changed.
18771
18772 * window.h (cursor_type_changed): New variable.
18773
18774 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
18775 not update_mode_lines, and always set it to 1.
18776
18777 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
18778 if no frames needed redrawing.
18779
18780 2002-03-17 Kim F. Storm <storm@cua.dk>
18781
18782 The following changes add support for network server processes,
18783 datagram connections, and local (unix) sockets.
18784
18785 * process.h (struct Lisp_Process): New member log.
18786 Doc fix: Member command used to indicate stopped network process.
18787 Doc fix: Member childp contains plist for network process.
18788 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
18789
18790 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
18791 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
18792 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
18793 New variables.
18794 (NETCONN1_P): New macro.
18795 (DATAGRAM_SOCKETS): New conditional symbol.
18796 (datagram_address): New array.
18797 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
18798 (status_message): Use concat3.
18799 (Fprocess_status): Add `listen' status to doc string. Return `stop'
18800 for a stopped network process.
18801 (Fset_process_buffer): Update contact plist for network process.
18802 (Fset_process_filter): Ditto. Don't enable input for stopped
18803 network processes. Server must listen, even if filter is t.
18804 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
18805 New functions.
18806 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
18807 (Fprocess_contact): Added KEY argument. Handle datagrams.
18808 (list_processes_1): Optionally show only processes with the query
18809 on exit flag set. Dynamically adjust column widths. Omit tty
18810 column if not needed. Report stopped network processes.
18811 Identify server and datagram network processes.
18812 (Flist_processes): New optional arg `query-only'.
18813 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
18814 (conv_lisp_to_sockaddr, set_socket_options)
18815 (network_process_featurep, unwind_request_sigio): New helper functions.
18816 (Fprocess_datagram_address, Fset_process_datagram_address):
18817 (Fset_network_process_options): New lisp functions.
18818 (Fopen_network_stream): Removed. Now defined in simple.el.
18819 (Fmake_network_process): New lisp function. Code is based on previous
18820 Fopen_network_stream, but heavily reworked with new property list based
18821 argument list, support for datagrams, server processes, and local
18822 sockets in addition to old client-only functionality.
18823 (server_accept_connection): New function.
18824 (wait_reading_process_input): Use it to handle incoming connects.
18825 Do not enable input on a new connection if process is stopped.
18826 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
18827 (send_process): Handle datagram sockets.
18828 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
18829 network process is indicated by setting command field to t .
18830 (Fprocess_send_eof): No-op if datagram connection.
18831 (Fstatus_notify): Don't read input for a stream server socket or a
18832 stopped network process.
18833 (init_process): Initialize datagram_address array.
18834 (syms_of_process): Intern and staticpro new variables, defsubr new
18835 functions.
18836
18837 2002-03-16 Jason Rumney <jasonr@gnu.org>
18838
18839 * w32fns.c (w32_to_all_x_charsets): Return correct type in
18840 startup case.
18841
18842 2002-03-16 Richard M. Stallman <rms@gnu.org>
18843
18844 * xdisp.c (redisplay_internal, redisplay_windows):
18845 Use list_of_error to call internal_condition_case_1.
18846 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
18847 so as to catch all errors with no possibility of debugger redisplay.
18848 (list_of_error): New variable.
18849 (syms_of_xdisp): Init and staticpro it.
18850
18851 * print.c (print_object): Delete `\ ' from printed rep of frame.
18852
18853 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
18854
18855 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
18856 until its implementation is fixed.
18857
18858 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18859
18860 * xfns.c (png_load): Remove unused variable `gamma_str'.
18861
18862 2002-03-14 Richard M. Stallman <rms@gnu.org>
18863
18864 * xfns.c (x_real_positions): Handle failure in XQueryTree.
18865
18866 2002-03-14 Miles Bader <miles@gnu.org>
18867
18868 * intervals.c (adjust_for_invis_intang): New function.
18869 (set_point_both): Use `adjust_for_invis_intang' to do most of the
18870 work for dealing with invisible+intangible regions. Do so before
18871 and after both forward and backward movements, to handle both
18872 front-sticky and rear-sticky cases.
18873 * textprop.c (text_property_stickiness): Function moved here from
18874 `editfns.c'.
18875 * intervals.h (text_property_stickiness): New declaration.
18876 * editfns.c (char_property_eq): Function removed.
18877 (text_property_stickiness): Function moved to `textprop.c'.
18878
18879 2002-03-13 Jason Rumney <jasonr@gnu.org>
18880
18881 * config.in: Add STRFTIME_NO_POSIX2.
18882
18883 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
18884 and %OX when underlying strftime does not.
18885
18886 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
18887
18888 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
18889 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
18890 line) to avoid annoying flicker.
18891 (xm_scroll_callback): Get rid of the now unnecessary kludge.
18892 (XTread_socket): Mark it static.
18893
18894 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
18895
18896 2002-03-13 Kim F. Storm <storm@cua.dk>
18897
18898 * puresize.h (BASE_PURESIZE): Increase to 775000.
18899
18900 2002-03-12 Juanma Barranquero <lektu@terra.es>
18901
18902 * editfns.c (syms_of_editfns): Fix typo.
18903
18904 2002-03-12 Gerd Moellmann <gerd@gnu.org>
18905
18906 * xsmfns.c: Include stdio.h because termhooks.h needs it.
18907 Include termopt.h for interrupt_input.
18908
18909 2002-03-11 Andreas Schwab <schwab@suse.de>
18910
18911 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
18912
18913 2002-03-11 Gerd Moellmann <gerd@gnu.org>
18914
18915 * xterm.c (note_mouse_movement): Put code for
18916 x_autoselect_window_p in #if 0.
18917
18918 * lread.c (Fload): Don't assume that message_with_string uses the
18919 string it is given like a C string.
18920
18921 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18922
18923 * xterm.h (x_session_check_input, x_session_initialize): Declare.
18924
18925 * xterm.c (XTread_socket): Add call to x_session_check_input and
18926 x_session_have_connection.
18927 (x_initialize): Add call to x_session_initialize.
18928
18929 * termhooks.h (enum event_kind): Add save_session_event.
18930
18931 * keyboard.c: Add Emacs event save_session_event.
18932
18933 * emacs.c (main): Add call to syms_of_xsmfns.
18934
18935 * lisp.h (syms_of_xsmfns): Declare extern.
18936
18937 * config.in: Add HAVE_X_SM.
18938
18939 * Makefile.in (LIBXT): Add -lSM -lICE
18940 if HAVE_X_SM and not USE_X_TOOLKIT.
18941 (XOBJ): New file xsmfns.c added.
18942
18943 * xsmfns.c: New file for X session management.
18944
18945 2002-03-09 Jason Rumney <jasonr@gnu.org>
18946
18947 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
18948 read-only when setting modified time.
18949
18950 2002-03-08 Gerd Moellmann <gerd@gnu.org>
18951
18952 * xdisp.c (move_it_vertically_backward): At the end of the function,
18953 when moving forward by lines, treat terminal frames specially.
18954
18955 * keyboard.c (echo_char): Make sure to add a separator between
18956 keys even if echo_dash hasn't been called.
18957
18958 * xdisp.c: Use new string macros.
18959 (update_echo_area): Pass number of bytes to message3 instead of
18960 number of chars.
18961 (set_message_1): Don't access a string's size_byte directly.
18962 (decode_mode_spec_coding): Use number of bytes of eoltype string
18963 instead number of chars.
18964
18965 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
18966
18967 2002-03-08 Juanma Barranquero <lektu@terra.es>
18968
18969 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
18970 24-bit.
18971
18972 2002-03-06 Jason Rumney <jasonr@gnu.org>
18973
18974 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
18975
18976 2002-03-06 Gerd Moellmann <gerd@gnu.org>
18977
18978 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
18979 (cancel_echoing, echo_length, echo_truncate): Changed to
18980 work with new kboard definition.
18981 (echo_now): Use message3_nolog instead of message2_nolog.
18982
18983 * alloc.c (mark_kboards): Mark echo_string.
18984
18985 * keyboard.h (ECHOBUFSIZE): Removed.
18986 (struct kboard): Member echoptr removed, member echobuf renamed
18987 to echo_string.
18988
18989 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
18990 message3 instead of message2 to display the message using STRING's
18991 text properties.
18992
18993 2002-03-05 Andreas Schwab <schwab@suse.de>
18994
18995 * xdisp.c (hscroll_margin): Change to EMACS_INT.
18996
18997 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
18998
18999 * frame.c (default-frame-alist): Explain that setting it doesn't
19000 affect existing frames.
19001
19002 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
19003
19004 * indent.c (skip_invisible): Fix my brain fart.
19005
19006 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
19007
19008 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
19009
19010 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
19011 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
19012 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
19013 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
19014 and variables to use EMACS_INT instead of just int.
19015
19016 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
19017
19018 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
19019
19020 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
19021 environment, pass it down with corrected value.
19022
19023 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19024
19025 * lread.c (read_filtered_event): Do not call start_hourglass
19026 before returning.
19027
19028 2002-03-04 Juanma Barranquero <lektu@terra.es>
19029
19030 * w32term.c (x_display_and_set_cursor): Fix typo.
19031
19032 2002-03-03 Richard M. Stallman <rms@gnu.org>
19033
19034 * fileio.c (Fmake_temp_name): Doc fix.
19035
19036 2002-03-03 Gary Wong <gtw@gnu.org>
19037
19038 * termcap.c [!emacs]: Replace ospeed for building standalone
19039 libtermcap, for binary compatibility.
19040
19041 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
19042
19043 2002-03-03 Richard M. Stallman <rms@gnu.org>
19044
19045 * xrdb.c (file_p): Rename arg `path' to `filename'.
19046
19047 * abbrev.c (Fexpand_abbrev): Increment plist as use count
19048 only if it is an integer.
19049
19050 * xfns.c (png_load): Set screen_gamma based on f->gamma.
19051 If png_get_sRGB gives an answer, call png_set_gamma
19052 using the default image gamma value.
19053
19054 * lread.c (read1): When reading from a file, default string to
19055 multibyte only if it has some multibyte characters.
19056
19057 * print.c (print_object): Output multibyte chars 128...255
19058 using \x even if ! print_escape_multibyte.
19059
19060 * xdisp.c (display_mode_element): Move the places where
19061 bytepos, charpos, this, and lisp_string are set.
19062 Use lisp_string to set bytepos.
19063
19064 * xdisp.c (redisplay_internal):
19065 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
19066
19067 * xdisp.c (display_mode_element): Merge properties specified with
19068 :propertize onto those that come with the string.
19069
19070 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
19071
19072 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
19073 automatic-hscrolling. Users changed.
19074 <hscroll-margin>: Renamed from automatic-hscroll-margin.
19075 Users changed.
19076 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
19077
19078 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
19079
19080 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
19081
19082 2002-03-02 Kim F. Storm <storm@cua.dk>
19083
19084 * window.c (Fminibuffer_selected_window): New function.
19085 (syms_of_window): Defsubr it.
19086
19087 2002-03-01 Kim F. Storm <storm@cua.dk>
19088
19089 * window.h (struct window): New member phys_cursor_width.
19090
19091 * window.c (make_window, replace_window): Init phys_cursor_width.
19092
19093 * xterm.c (x_display_and_set_cursor): Blink box cursor using
19094 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19095
19096 * w32term.c (x_display_and_set_cursor): Blink box cursor using
19097 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19098
19099 * lisp.h (GCPRO6): New macro.
19100
19101 * process.c (Fopen_network_stream): Use GCPRO6.
19102
19103 2002-03-01 Kim F. Storm <storm@cua.dk>
19104
19105 * process.c (Qconnect, Qfailed): New variables.
19106 (syms_of_process): Intern and staticpro them.
19107 (Fprocess_status): Document connect and failed return values.
19108 [NON_BLOCKING_CONNECT]: New conditional.
19109 (connect_wait_mask, num_pending_connects): New variables.
19110 (status_message): Convert Qfailed status.
19111 (Fopen_network_stream): Added support for non-blocking connect.
19112 New optional args: filter, sentinel, non_blocking. Doc updated.
19113 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
19114 (deactivate_process): Handle pending non-blocking connect.
19115 (wait_reading_process_input): Poll for status of non-blocking
19116 connects. Exec sentinel directly when connect succeeds.
19117 (status_notify): Don't read process output if not yet connected.
19118
19119 2002-02-28 Kim F. Storm <storm@cua.dk>
19120
19121 * window.c: (minibuf_selected_window): Renamed from
19122 Vminibuf_selected_window. Users changed.
19123 (syms_of_window): Staticpro it.
19124
19125 2002-02-26 Kim F. Storm <storm@cua.dk>
19126
19127 The following changes add a new Vminibuf_selected_window variable
19128 which is similar to Vminibuf_scroll_window, but which is only set
19129 on entry to the minibuffer (from a non-minibuffer window):
19130
19131 * window.c: (Vminibuf_selected_window): New variable.
19132 (struct save_window_data): New member minibuf_selected_window.
19133 (Fset_window_configuration): Restore Vminibuf_selected_window.
19134 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
19135 Set minibuf_scroll_window member to nil if minibuf_level is 0.
19136 (compare_window_configurations): Compare minibuf_selected_window.
19137
19138 * window.h: (Vminibuf_selected_window): Declare extern.
19139
19140 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
19141 entry to minibuffer or on entry from a non-minibuffer window.
19142
19143 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
19144 Vminibuf_selected_window instead of Vminibuf_scroll_window.
19145
19146 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
19147 instead of Vminibuf_scroll_window when deciding in which window
19148 the region should be highlighted. Consequently, the region remains
19149 highlighteded even when a completion buffer is also displayed.
19150
19151 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
19152
19153 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
19154
19155 * xselect.c (Qcompound_text_with_extensions): Renamed from
19156 Qcompound_text_no_extensions.
19157 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
19158
19159 2002-02-26 Juanma Barranquero <lektu@terra.es>
19160
19161 * w32proc.c (syms_of_ntproc): Doc fix.
19162
19163 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19164
19165 * intervals.h: Include "dispextern.h" unconditionally.
19166
19167 2002-02-24 Jason Rumney <jasonr@gnu.org>
19168
19169 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
19170 and disp-table.elc.
19171 (lisp): Add emacs-lisp/backquote.elc.
19172
19173 2002-02-24 Kim F. Storm <storm@cua.dk>
19174
19175 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
19176 The validation of the event type was too strict as it didn't
19177 allow string events; buffer names are used in bindings for
19178 menu-bar-select-buffer (see `menu-bar-update-buffers').
19179
19180 2002-02-23 Kim F. Storm <storm@cua.dk>
19181
19182 The following changes rework my patch of 2002-02-06 which
19183 added command remapping by entering the commands directly into
19184 the keymaps. Now, command remapping uses an explicit `remap'
19185 prefix in the keymaps, i.e. [remap COMMAND].
19186
19187 * keymap.c (Qremap, remap_command_vector): New variables.
19188 (is_command_symbol): Remove function.
19189 (Fdefine_key): No longer accept a symbol for KEY.
19190 Added validation of [remap COMMAND] argument for KEY.
19191 The DEF is no longer required to be a symbol when remapping a command.
19192 (Fremap_command): New function to remap command through keymaps.
19193 (Flookup_key): Perform command remapping initiated by
19194 Fremap_command directly for speed.
19195 (Fkey_binding): Use Fremap_command for command remapping.
19196 (where_is_internal): Handle new command remapping representation.
19197 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
19198 staticpro them. Defsubr Fremap_command.
19199
19200 * keymap.h (Fremap_command): Declare extern.
19201 (is_command_symbol): Remove extern.
19202
19203 * keyboard.c (command_loop_1): Use Fremap_command for command
19204 remapping; now try command remapping for all symbols.
19205
19206 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19207
19208 * coding.h (run_pre_post_conversion_on_str): Add prototype.
19209
19210 2002-02-23 Jason Rumney <jasonr@gnu.org>
19211
19212 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
19213 on the string before encoding it.
19214 (Fw32_get_clipboard_data): Run post-read-conversion on the string
19215 after decoding it.
19216
19217 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
19218
19219 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19220
19221 * w32term.c (enter_timestamp): Remove unused static variable to
19222 prevent warning.
19223
19224 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
19225
19226 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19227
19228 * w16select.c (Fw16_get_clipboard_data): Fix last change.
19229
19230 * xselect.c (selection_data_to_lisp_data): Fix last change.
19231
19232 2002-02-22 Jason Rumney <jasonr@gnu.org>
19233
19234 * w32term.h (struct w32_output): New member menu_command_in_progress.
19235
19236 * w32menu.c (menubar_selection_callback): Free the menu and
19237 clear the menu_command_in_progress flag.
19238
19239 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
19240 (menu_free_timer): New variable.
19241 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
19242 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
19243 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
19244 menu command is in progress.
19245 <WM_COMMAND>: Set the menu_command_in_progress flag.
19246 Kill any menu_free_timer that is running.
19247
19248 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
19249 Call ExtTextOutA rather than ExtTextOut.
19250
19251 2002-02-22 Eli Zaretskii <eliz@gnu.org>
19252
19253 * puresize.h (BASE_PURESIZE): Increase to 755000.
19254
19255 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19256
19257 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
19258 on the string before encoding it.
19259 (Fw16_get_clipboard_data): Run post-read-conversion on the string
19260 after decoding it.
19261
19262 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19263
19264 Support for ICCCM Extended Segments in X selections:
19265
19266 * xselect.c <Qcompound_text_no_extensions>: New variable.
19267 (syms_of_xselect): Intern and staticpro it.
19268 (selection_data_to_lisp_data): Run post-read-conversion on decoded
19269 selection text.
19270 (lisp_data_to_selection_data): If next-selection-coding-system is
19271 compound-text-no-extensions, set the type of selection to be
19272 compound-text.
19273
19274 * xterm.h (x_encode_text): Update prototype.
19275
19276 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
19277 callers changed. If SELECTIONP is non-zero, run the
19278 pre-write-conversion function before encoding the selection text.
19279
19280 2002-02-21 Kim F. Storm <storm@cua.dk>
19281
19282 * frame.c (syms_of_frame): Change mouse-highlight default to t.
19283
19284 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
19285 Correct composing of language-change event.
19286
19287 2002-02-20 Kim F. Storm <storm@cua.dk>
19288
19289 * keyboard.c (menu_bar_items): Don't include keymap or local-map
19290 bindings at PT when building menu (the menu is not updated often
19291 enough for this to work reliable).
19292 (tool_bar_items): Likewise.
19293 (current_active_maps): Removed unused (and buggy) function.
19294
19295 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19296
19297 * xfns.c (gif_load): Use correct width and height for GIF images.
19298
19299 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
19300
19301 * floatfns.c (Fatan): Accept an optional second arg and call
19302 atan2 if passed 2 args.
19303
19304 2002-02-18 Jason Rumney <jasonr@gnu.org>
19305
19306 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
19307
19308 2002-02-17 Jason Rumney <jasonr@gnu.org>
19309
19310 * w32term.c (x_autoselect_window_p): New variable.
19311 (syms_of_w32term): DEFVAR_BOOL and initialize it.
19312 (note_mouse_movement): Use it.
19313
19314 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
19315
19316 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
19317
19318 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19319 New variables.
19320 (syms_of_w32fns): Intern and staticpro them.
19321 (x_frame_parms) <"fullscreen">: New parameter.
19322 (x_fullscreen_move, x_set_fullscreen): New functions.
19323 (x_set_frame_parameters): Support Qfullscreen.
19324 (x_real_positions): Save x/y_pixels_diff frame params.
19325 (x_figure_window_size): Support full-screen frames.
19326 (Fx_create_frame): Default the fullscreen parameter.
19327
19328 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
19329 (x_fullscreen_adjust): New functions.
19330 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
19331 fullscreen. Call x_check_fullscreen_move, and set the
19332 want_fullscreen member of output_data.w32
19333 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
19334
19335 * w32term.h: New enum for FULLSCREEN_* constants.
19336 (struct w32_output): New members want_fullscreen, x_pixels_diff,
19337 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
19338 (x-fullscreen-adjust): New prototype.
19339
19340 2002-02-17 Kim F. Storm <storm@cua.dk>
19341
19342 * frame.c (Vmouse_highlight): New variable.
19343 (syms_of_frame): DEFVAR_LISP it.
19344
19345 * frame.h (Vmouse_highlight): Declare extern.
19346
19347 * xterm.h (struct x_display_info): Add mouse_face_hidden.
19348
19349 * xterm.c (disable_mouse_highlight): Removed variable.
19350 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19351 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19352 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
19353 and on after keyboard input.
19354 (x_term_init): Initialize mouse_face_hidden.
19355
19356 * msdos.h (struct display_info): Add mouse_face_hidden.
19357
19358 * msdos.c (disable_mouse_highlight): Removed variable.
19359 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19360 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19361 (internal_terminal_init): Initialize mouse_face_hidden.
19362 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
19363 and on after keyboard input.
19364
19365 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
19366
19367 * w32term.c (disable_mouse_highlight): Removed variable.
19368 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
19369 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19370 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
19371 and on after keyboard input.
19372 (w32_initialize_display_info): Initialize mouse_face_hidden.
19373
19374 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
19375
19376 * msdos.c (last_mouse_window): New variable.
19377 (dos_rawgetc): Fix last change--if the mouse is in the same window
19378 as recorded in last_mouse_window, don't select this window.
19379
19380 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
19381
19382 * msdos.c (x_autoselect_window_p): New variable.
19383 (syms_of_msdos): Defvar it.
19384 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
19385 which the last mouse movement occured, unless it is already selected.
19386
19387 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
19388 New variables.
19389 (syms_of_xdisp): DEVFAR them.
19390 (hscroll_window_tree): Use automatic_hscroll_margin and
19391 Vautomatic_hscroll_step to compute the amount of window scrolling.
19392
19393 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19394
19395 * xterm.c (x-autoselect-window): New variable.
19396 (note_mouse_movement): Use it.
19397
19398 * keyboard.c: Do not include "systime.h" twice.
19399
19400 2002-02-15 Andreas Schwab <schwab@suse.de>
19401
19402 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
19403
19404 * alloc.c (NSTATICS): Increase to 1280.
19405
19406 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19407
19408 * alloc.c (NSTATICS): Bump to 1026.
19409
19410 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19411 (Vx_super_keysym): New variables.
19412 (syms_of_xterm): DEFVAR_LISP them.
19413 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19414 variables to determine which keys to use for the various modifiers.
19415
19416 2002-02-13 Kim F. Storm <storm@cua.dk>
19417
19418 * window.c: (Vmode_line_in_non_selected_windows): Removed.
19419 (mode_line_in_non_selected_windows): New variable.
19420 (syms_of_window): DEFVAR_BOOL it.
19421
19422 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19423 Use mode_line_in_non_selected_windows.
19424 (mode_line_in_non_selected_windows): Declare extern.
19425 (Vmode_line_in_non_selected_windows): Removed extern.
19426
19427 2002-02-13 Richard M. Stallman <rms@gnu.org>
19428
19429 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19430 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19431 (Fclear_this_command_keys): Doc fixes.
19432
19433 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19434 (update_face_from_frame_parameter): Increment face_change_count
19435 and windows_or_buffers_changed to force redisplay using changed faces.
19436
19437 * xdisp.c (QCpropertize): New variable.
19438 (mode_line_proptrans_alist): New variable.
19439 (display_mode_element): New arg PROPS; all calls changed.
19440 Implement this, for strings.
19441 Handle literal output of strings by sharing the
19442 main-line code for strings, using local var `literal'.
19443 Handle :propertize feature.
19444 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19445 mode_line_proptrans_alist.
19446
19447 2002-02-11 Kim F. Storm <storm@cua.dk>
19448
19449 * window.c: (Vmode_line_in_non_selected_windows): New variable.
19450 (syms_of_window): DEFVAR_LISP it.
19451
19452 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19453 (CURRENT_MODE_LINE_FACE_ID): Use it.
19454 (Vmode_line_in_non_selected_windows): Declare extern.
19455
19456 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19457 to get mode line face.
19458
19459 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19460
19461 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19462 variables; cus-start.el doesn't need them anymore.
19463
19464 2002-02-09 Kim F. Storm <storm@cua.dk>
19465
19466 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
19467 reduction. This fixes a display problem where stray newlines were
19468 inserted in the window (corrected by C-l). Clarified code (IMHO).
19469
19470 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
19471
19472 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
19473
19474 * xdisp.c (display_mode_lines): Fix last change.
19475
19476 2002-02-09 Jason Rumney <jasonr@gnu.org>
19477
19478 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
19479 match each other.
19480 (w32_load_system_font): Prevent Cleartype fonts from loading.
19481 (Fx_show_tip): Ensure tip frames are above other topmost windows.
19482
19483 2002-02-09 Kim F. Storm <storm@cua.dk>
19484
19485 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
19486 (CURRENT_MODE_LINE_HEIGHT): Use it.
19487 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
19488
19489 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
19490 (pos_visible_p, handle_face_prop): Likewise.
19491 (display_mode_lines): Likewise, but for the real selected window.
19492 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
19493
19494 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
19495 in non-selected windows.
19496 (realize_basic_faces): Realize it.
19497 (syms_of_term): Intern and staticpro it.
19498
19499 2002-02-08 Kim F. Storm <storm@cua.dk>
19500
19501 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
19502 Changed mail addresses to emacs-devel@gnu.org.
19503
19504 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
19505
19506 * fileio.c (Fsubstitute_in_file_name): If the file name includes
19507 ~user, and there's no such user, don't discard everything before ~user.
19508
19509 * floatfns.c (Fround): Doc fix.
19510
19511 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19512
19513 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
19514
19515 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
19516
19517 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
19518
19519 2002-02-07 Kim F. Storm <storm@cua.dk>
19520
19521 * keymap.c (where_is_internal): Only check whether definition is
19522 remapped if it fulfills is_command_symbol.
19523
19524 2002-02-07 Andreas Schwab <schwab@suse.de>
19525
19526 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
19527
19528 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
19529
19530 2002-02-06 Kim F. Storm <storm@cua.dk>
19531
19532 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
19533 defining command remapping. Doc updated.
19534 (Flookup_key): Remap command through keymap if KEY is a symbol.
19535 (is_command_symbol): New function.
19536 (Fkey_binding): Use it. New optional argument NO-REMAP.
19537 Doc updated. Callers changed. Perform command remapping via
19538 recursive call unless that arg is non-nil.
19539 (where_is_internal): New argument no_remap. Callers changed.
19540 Call recursively to find original key bindings for a remapped
19541 comand unless that arg is non-nil.
19542 (Fwhere_is_internal): New optional argument NO-REMAP.
19543 Doc updated. Callers changed. Pass arg to where_is_internal.
19544
19545 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
19546 (is_command_symbol): Add prototype.
19547
19548 * keyboard.c (Vthis_original_command): New variable.
19549 (syms_of_keyboard): DEFVAR_LISP it.
19550 (command_loop_1): Set it, and perform command remapping.
19551
19552 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19553
19554 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
19555
19556 2002-02-06 Jason Rumney <jasonr@gnu.org>
19557
19558 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
19559
19560 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
19561
19562 * charset.c (get_charset_id): Use if-else instead of ?:.
19563
19564 2002-02-06 Richard M. Stallman <rms@gnu.org>
19565
19566 * filelock.c (S_ISLNK): Define if not defined.
19567
19568 2002-02-03 Richard M. Stallman <rms@gnu.org>
19569
19570 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
19571
19572 * lread.c (read1): Redesign strategy for force_multibyte and
19573 force_singlebyte. Now is_multibyte records whether read_buffer
19574 is multibyte. Encountering any multibyte character makes it so.
19575
19576 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
19577
19578 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
19579 with the same sequence, map that sequence to f10 rather than f0.
19580
19581 2002-02-03 Andreas Schwab <schwab@suse.de>
19582
19583 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
19584 latter never being defined on GNU/Linux.
19585
19586 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
19587
19588 * xfaces.c (realize_default_face): Don't set the weight and slant of
19589 the default face to Qnormal, unless these attributes are unspecified.
19590
19591 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19592
19593 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
19594 Call cancel_hourglass unconditionally.
19595
19596 * eval.c (Fsignal): Remove duplicated declaration of
19597 the variable `display_hourglass_p'.
19598
19599 2002-01-31 Richard M. Stallman <rms@gnu.org>
19600
19601 * editfns.c (region_limit): Nicer error message.
19602
19603 * coding.c (decode_composition_emacs_mule):
19604 Give up if NCOMPONENT gets too large to index `component'.
19605
19606 * callint.c (check_mark): New arg to specify clearer error message.
19607 Callers changed.
19608
19609 2002-01-27 Richard M. Stallman <rms@gnu.org>
19610
19611 * minibuf.c (Fcompleting_read): Doc fix.
19612
19613 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19614
19615 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
19616 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
19617 Fix doc-strings.
19618
19619 2002-01-26 Richard M. Stallman <rms@gnu.org>
19620
19621 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
19622
19623 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
19624 and scroll_up_aggressively.
19625
19626 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19627
19628 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
19629
19630 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
19631
19632 * textprop.c (Fnext_property_change, Fnext_single_property_change)
19633 (Fprevious_property_change, Fprevious_single_property_change):
19634 Stay within the narrowed-buffer boundaries.
19635
19636 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
19637
19638 * term.c (Ftty_display_color_cells): New function.
19639 (syms_of_term): Defsubr it.
19640 (Ftty_display_color_cells, Ftty_display_color_p): Change the
19641 argument name to DISPLAY. Doc fix.
19642
19643 * dispextern.h: Add prototype for set_tty_color_mode and
19644 tty_setup_colors.
19645
19646 2002-01-24 Jason Rumney <jasonr@gnu.org>
19647
19648 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
19649 If region left to draw is not what was expected, mark the frame as
19650 garbaged.
19651
19652 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
19653 Combine the regions returned by BeginPaint and GetUpdateRect.
19654
19655 2002-01-23 Jason Rumney <jasonr@gnu.org>
19656
19657 * w32term.c (x_update_window_begin): Only hide caret if
19658 w32_use_visible_system_caret is set.
19659 (x_update_window_end): Only show caret if
19660 w32_use_visible_system_caret is set.
19661 (syms_of_w32term): Handle SystemParametersInfo call failing.
19662
19663 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
19664
19665 2002-01-22 Richard M. Stallman <rms@gnu.org>
19666
19667 * unexelf.c (unexec): Define n so as to cause compilation error
19668 for the code where people have often written n instead of nn.
19669
19670 * .gdbinit (hookpost-run): Defined.
19671
19672 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19673
19674 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
19675
19676 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19677
19678 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
19679 if fullscreen is being set.
19680
19681 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19682
19683 * minibuf.c (Fminibuffer_contents)
19684 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
19685 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
19686
19687 2002-01-21 Richard M. Stallman <rms@gnu.org>
19688
19689 * window.c (check_frame_size): Fix minimum height calculation.
19690
19691 2002-01-20 Ken Raeburn <raeburn@gnu.org>
19692
19693 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
19694 height before comparison.
19695 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
19696
19697 2002-01-20 Jason Rumney <jasonr@gnu.org>
19698
19699 * w32term.c (w32_system_caret_width): Remove.
19700 (w32_use_visible_system_caret): New user flag.
19701 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
19702 Windows reports a screen reader running.
19703 (x_update_window_begin): Hide the system caret.
19704 (x_update_window_end): Show the system caret.
19705 (x_display_and_set_cursor): Don't draw a cursor when
19706 w32_use_visible_system_caret is set. Do not adjust width.
19707
19708 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
19709 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
19710 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
19711 the user requests it. Use system default width when creating.
19712 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
19713
19714 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
19715 New window messages.
19716
19717 2002-01-20 Richard M. Stallman <rms@gnu.org>
19718
19719 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
19720
19721 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19722
19723 * doprnt.c (doprnt1): Fix typos in error call.
19724
19725 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
19726
19727 * unexelf.c (unexec) [__sgi]: Support the .got sections.
19728
19729 2002-01-20 Jason Rumney <jasonr@gnu.org>
19730
19731 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
19732 that Windows returns. If a double check fails, try to guess how
19733 ExtTextOut is going to act.
19734
19735 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
19736 in place of stricmp.
19737 (w32_list_synthesized_fonts): Removed.
19738 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
19739 (struct enumfont_t): New element; list.
19740 (enum_font_cb2): List all style and charset variations of a font.
19741 (Fw32_select_font): New optional argument; include_proportional.
19742 Exclude vertical fonts. Exclude proportional fonts unless
19743 include_proportional is non-nil.
19744 (w32_enable_synthesized_fonts): Change to a boolean.
19745 (Fw32_send_sys_command): Doc fix.
19746
19747 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19748
19749 * dispnew.c (update_frame): Move the variable `tem' to the block
19750 where it is used.
19751
19752 2002-01-19 Jason Rumney <jasonr@gnu.org>
19753
19754 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
19755 call to face-set-after-frame-default.
19756
19757 2002-01-18 Richard M. Stallman <rms@gnu.org>
19758
19759 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
19760 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
19761
19762 2002-01-17 Richard M. Stallman <rms@gnu.org>
19763
19764 * window.c (enlarge_window): When exceeding size of parent,
19765 directly delete all the siblings instead of trying to resize it.
19766
19767 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19768
19769 * term.c (set_tty_color_mode): Remove unused variable `tem'.
19770
19771 2002-01-16 Henrik Enberg <henrik@enberg.org>
19772
19773 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
19774
19775 2002-01-16 Kim F. Storm <storm@cua.dk>
19776
19777 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
19778 is invisible. This can happen if cursor is on top line of a
19779 window, and we switch to a buffer with a header line.
19780
19781 * w32term.c (x_erase_phys_cursor): Ditto.
19782
19783 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19784
19785 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
19786 `dont_resize' only when used.
19787
19788 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
19789
19790 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
19791
19792 * xdisp.c (display_mode_element): When computing charpos, depend
19793 on multibyteness of elt, not the text in field.
19794
19795 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19796
19797 * buffer.c (Fkill_all_local_variables):
19798 Increment `update_mode_lines' only once.
19799
19800 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19801
19802 * lisp.h (adjust_after_replace_noundo)
19803 (Fupdate_coding_systems_internal): Add prototypes.
19804
19805 * sound.c (Fplay_sound): Initialize header_size also for :data case.
19806
19807 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
19808
19809 Support for the --color command-line argument and tty-color-mode
19810 frame parameter:
19811
19812 * term.c (tty_default_color_capabilities, tty_setup_colors)
19813 (set_tty_color_mode): New functions.
19814 (term_init): Call tty_default_color_capabilities.
19815 (Qtty_color_mode_alist): New variable.
19816 (syms_of_term): Intern and staticpro it.
19817
19818 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
19819 frames.
19820 (do_switch_frame): For termcap frames, switch the tty
19821 color mode as specified by the frame's parameters.
19822 (Qtty_color_mode): New variable.
19823 (syms_of_frame): Intern and staticpro it.
19824
19825 * emacs.c (USAGE2): Add the --color option.
19826 (standard_args): Ditto.
19827
19828 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19829
19830 * xterm.h (struct x_output): New members want_fullscreen,
19831 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
19832 y_pixels_outer_diff.
19833 New enum for FULLSCREEN_* constants.
19834 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
19835 is NULL.
19836 (x_fullscreen_adjust): Add prototype.
19837
19838 * emacs.c (USAGE2): Add the new full-screen arguments.
19839 (standard_args): Ditto.
19840
19841 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19842 New variables.
19843 (syms_of_xfns): Intern and staticpro them.
19844 (x_frame_parms) <"fullscreen">: New parameter.
19845 (x_fullscreen_move, x_set_fullscreen): New functions.
19846 (x_set_frame_parameters): Support for Qfullscreen.
19847 (x_real_positions): More accurate computation of the frame position.
19848 (x_figure_window_size): Support full-screen frames.
19849 (Fx_create_frame): Default the fullscreen parameter.
19850
19851 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
19852 (XTread_socket) <Expose>: Call x_check_fullscreen.
19853 <ConfigureNotify>: Don't resize to fullscreen.
19854 Call x_check_fullscreen_move, and set the want_fullscreen member of
19855 output_data.x.
19856
19857 2002-01-13 Jason Rumney <jasonr@gnu.org>
19858
19859 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
19860 for mice with more than 3 buttons.
19861
19862 * w32term.c (parse_button): New parameter xbutton. Callers changed.
19863 (w32_read_socket): Handle new "XBUTTON" messages.
19864
19865 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
19866 (syms_of_w32fns): DEFVAR_BOOL it.
19867 (w32_wnd_proc): Handle new "XBUTTON" messages.
19868
19869 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19870
19871 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
19872
19873 2002-01-13 Andreas Schwab <schwab@suse.de>
19874
19875 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
19876
19877 2002-01-12 Andreas Schwab <schwab@suse.de>
19878
19879 * .gdbinit (xbuffer): Remove address operator since data is now a
19880 pointer.
19881
19882 2002-01-11 Richard M. Stallman <rms@gnu.org>
19883
19884 * insdel.c (adjust_after_replace_noundo): New function.
19885
19886 * coding.c (code_convert_region): Don't copy old text if undo disabled.
19887
19888 2002-01-09 Jason Rumney <jasonr@gnu.org>
19889
19890 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
19891 when checking for multiple frames.
19892
19893 2002-01-08 Richard M. Stallman <rms@gnu.org>
19894
19895 * window.c (delete_window): Rewrite the code for changing the
19896 selected window to handle the case where WINDOW is not a leaf.
19897
19898 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
19899
19900 * process.c (send_process): Set src_multibyte to 1 after the call
19901 top setup_coding_system, not before the call.
19902
19903 2002-01-07 Jason Rumney <jasonr@gnu.org>
19904
19905 * xmenu.c (set_frame_menubar, xmenu_show):
19906 (xdialog_show): Initialize wv->help to Qnil.
19907
19908 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
19909 (w32_dialog_show): Initialize wv->help to Qnil.
19910
19911 2002-01-06 Jason Rumney <jasonr@gnu.org>
19912
19913 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
19914
19915 * w32menu.c (w32_menu_display_help): Revert last change.
19916
19917 * xmenu.c (menu_highlight_callback): Revert last change.
19918
19919 2002-01-06 Andreas Schwab <schwab@suse.de>
19920
19921 * insdel.c (make_gap_larger): Make sure buffer size does not
19922 overflow range of int.
19923
19924 2002-01-05 Jason Rumney <jasonr@gnu.org>
19925
19926 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
19927 OVERLAPS_P.
19928
19929 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
19930
19931 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
19932 to the left or to the right of the pointer, put it against
19933 the left screen edge.
19934 (x_frame_parms): Add missing braces around initializer.
19935
19936 * w32term.c (x_setup_relief_colors): Don't compute an image's
19937 background color if it doesn't have a Pixmap.
19938 (notice_overwritten_cursor): Don't depend on
19939 output_cursor and updated_area. Compare pixel coordinates with
19940 window's cursor pixel coordinates.
19941 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
19942 Call notice_overwritten_cursor with new arg list.
19943 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
19944 unconditionally.
19945 (x_draw_image_relief): Use predefined macro instead of
19946 constant when the value of `tool_bar_button_relief' is negative.
19947
19948 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
19949
19950 2002-01-04 Richard M. Stallman <rms@gnu.org>
19951
19952 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
19953
19954 2002-01-03 Richard M. Stallman <rms@gnu.org>
19955
19956 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
19957 (Fkey_binding): Try the `keymap' property map first.
19958 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
19959 minor mode bindings.
19960
19961 2002-01-03 Kim F. Storm <storm@cua.dk>
19962
19963 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
19964
19965 2002-01-02 Richard M. Stallman <rms@gnu.org>
19966
19967 * keyboard.c (read_key_sequence): Handle the keymap property
19968 before minor mode maps.
19969
19970 * editfns.c (Fformat): Update thissize from field_width
19971 based on the actual width, in the string case.
19972
19973 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19974
19975 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
19976 when used as truth value to prevent gcc warnings.
19977
19978 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
19979 * w32proc.c: Include <config.h>.
19980
19981 2002-01-01 Andreas Schwab <schwab@suse.de>
19982
19983 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
19984 not EMACS_INT, to make them compatible with DEFVAR_INT.
19985 * lisp.h (max_specpdl_size): Adjust declaration.
19986
19987 2002-01-01 Richard M. Stallman <rms@gnu.org>
19988
19989 * print.c (print_object): Test print_escape_nonascii only for
19990 unibyte strings.
19991 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
19992 when outputting to a multibyte buffer.
19993
19994 2001-12-29 Richard M. Stallman <rms@gnu.org>
19995
19996 * print.c (print_object): In multibyte string, use hex escapes.
19997 Use octal only for unibyte strings.
19998 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
19999
20000 * lread.c (read_escape): New arg BYTEREP for reporting whether
20001 escape forces unibyte or multibyte.
20002 (read1): When reading a string, take note of that info.
20003
20004 2001-12-29 Ken Raeburn <raeburn@gnu.org>
20005
20006 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
20007 comparison to test lisp value returned by Fget.
20008
20009 2001-12-29 Richard M. Stallman <rms@gnu.org>
20010
20011 * lisp.h (max_specpdl_size): Add declaration.
20012
20013 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
20014
20015 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
20016 Handle modifier bits. Correct typo in error message.
20017
20018 2001-12-28 Richard M. Stallman <rms@gnu.org>
20019
20020 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
20021 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
20022 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20023 Update calls to Fdefine_abbrev.
20024 (write_abbrev): Update for changed data format.
20025 Don't list "system" abbrevs.
20026 (Fexpand_abbrev): Update use count with new data format.
20027 (describe_abbrev): Update for changed data format.
20028 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
20029
20030 * config.in (HAVE_MBSINIT): Add #undef.
20031
20032 * strftime.c (mbsinit): Define as no-op if not available.
20033
20034 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
20035 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
20036
20037 * keymap.c (Flookup_key): Error message if key has wrong data type.
20038 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
20039 (exclude_key): New variable.
20040
20041 2001-12-28 Gerd Moellmann <gerd@gnu.org>
20042
20043 * xterm.c (x_setup_relief_colors): Don't compute an image's
20044 background color if it doesn't have a Pixmap.
20045
20046 * xterm.c (notice_overwritten_cursor): Don't depend on
20047 output_cursor and updated_area. Compare pixel coordinates with
20048 window's cursor pixel coordinates.
20049 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20050 Call notice_overwritten_cursor with new arg list.
20051 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20052 unconditionally.
20053
20054 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
20055 height of the cursor line to the amount to scroll.
20056
20057 2001-12-27 Richard M. Stallman <rms@gnu.org>
20058
20059 * intervals.c (set_point_both): The position after an invisible,
20060 intangible character is not an acceptable stopping point.
20061
20062 2001-12-27 Ken Raeburn <raeburn@gnu.org>
20063
20064 * window.c (enlarge_window): In new preserve_before code, convert
20065 CURBEG from lisp object to integer before doing arithmetic.
20066
20067 2001-12-27 Richard M. Stallman <rms@gnu.org>
20068
20069 * bytecode.c (Fbyte_code): Undo previous change.
20070
20071 2001-12-26 Kim F. Storm <storm@cua.dk>
20072
20073 * keyboard.c (record_char): Ignore duplicate help-echo events only
20074 separated by mouse-movement. When tracking mouse, only record
20075 first and last mouse-movement event in same window.
20076 Don't record mouse-movement events in keyboard macros.
20077
20078 2001-12-25 Richard M. Stallman <rms@gnu.org>
20079
20080 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
20081 (Fenlarge_window): New arg PRESERVE_BEFORE.
20082
20083 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
20084 instead of Fstring_as_unibyte.
20085
20086 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20087
20088 The following changes remove mocklisp support:
20089
20090 * mocklisp.h, mocklisp.c: Files removed.
20091
20092 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
20093 `Qmocklisp' and `Qmocklisp_arguments'.
20094 Remove prototype of syms_of_mocklisp.
20095
20096 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
20097
20098 * callint.c: Do not include mocklisp.h.
20099 (Fcall_interactively): Do not test for mocklisp case.
20100
20101 * eval.c: Remove variables `Qmocklisp_arguments',
20102 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
20103 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
20104 Do not test for mocklisp case.
20105 (Fwhile): Remove unused variable `tem'.
20106 (syms_of_eval): Remove variable `moclisp-arguments'.
20107
20108 * data.c (wrong_type_argument): Remove mocklisp case.
20109
20110 * doc.c (Fdocumentation): Remove mocklisp case.
20111
20112 * emacs.c (main): Do not call syms_of_mocklisp.
20113
20114 2001-12-21 Richard M. Stallman <rms@gnu.org>
20115
20116 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
20117 to the left or to the right of the pointer, put it against
20118 the left screen edge.
20119
20120 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
20121
20122 * Makefile.in (distclean): Remove .gdbinit if we are building
20123 outside the source tree.
20124
20125 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
20126
20127 * w32.c (emacs_root_dir): New function.
20128
20129 * msdos.c (emacs_root_dir): New function.
20130
20131 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
20132 of the current drive as the fallback for default_directory.
20133
20134 * dired.c (file_name_completion): Run the elements of
20135 completion-ignored-extensions through ENCODE_FILE.
20136
20137 * lisp.h (scmp): Remove prototype, since it's now a static
20138 function private to dired.c.
20139
20140 2001-12-18 Richard M. Stallman <rms@gnu.org>
20141
20142 * dired.c (scmp): Function moved from minibuf.c.
20143 Delete multibyte handling--used only on encoded strings.
20144
20145 * minibuf.c (scmp): Function moved to dired.c.
20146
20147 * fns.c (merge): Add QUIT call.
20148
20149 2001-12-18 Dave Love <fx@gnu.org>
20150
20151 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
20152 language/georgian.el.
20153
20154 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
20155
20156 * Makefile.in (lisp, shortlisp): Synchronize with changes to
20157 lisp/Makefile.in:DONTCOMPILE.
20158
20159 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20160
20161 * xdisp.c (window_box_height): Do not return negative values.
20162 From Gerd Moellmann <gerd@gnu.org>.
20163
20164 * keyboard.c (head_table): Add missing braces around initializer.
20165
20166 * term.c (keys): Likewise.
20167
20168 * xfns.c (x_frame_parms, visual_classes): Likewise.
20169
20170 2001-12-17 Sam Steingold <sds@gnu.org>
20171
20172 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
20173 patch (COMPOSING_P, not COMPOSING).
20174
20175 2001-12-17 Richard M. Stallman <rms@gnu.org>
20176
20177 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
20178
20179 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
20180 before calling decode_coding.
20181
20182 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
20183
20184 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
20185 instead of only for COMPOSITION_DISABLED.
20186
20187 2001-12-16 Richard M. Stallman <rms@gnu.org>
20188
20189 * alloc.c (pure_alloc): After overflow, allocate just a small block.
20190
20191 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
20192
20193 * buffer.h (struct buffer): New field `display_error_modiff'.
20194 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
20195
20196 * window.c (Frecenter): Clear display_error_modiff field.
20197
20198 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
20199 Call redisplay_window, but not if display_error_modiff field says no.
20200 (redisplay_window_error): New function.
20201 (displayed_buffer): New variable.
20202 (redisplay_internal, redisplay_windows): Call the new functions
20203 instead of redisplay_window directly.
20204
20205 2001-12-15 Richard M. Stallman <rms@gnu.org>
20206
20207 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
20208
20209 2001-12-14 Andrew Innes <andrewi@gnu.org>
20210
20211 * makefile.w32-in (EMACSLOADPATH): Define.
20212 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
20213 (bootstrap-temacs): Remove dependency on bootstrap-clean.
20214
20215 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
20216
20217 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
20218 parameter have a numeric value all the time.
20219
20220 * w32fns.c (x_report_frame_params): Likewise.
20221
20222 2001-12-12 Richard M. Stallman <rms@gnu.org>
20223
20224 * fileio.c (Fwrite_region): Doc fix.
20225
20226 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
20227 (redisplay_internal): Call clear_image_cache only for window terminals.
20228
20229 2001-12-12 Gerd Moellmann <gerd@gnu.org>
20230
20231 * xdisp.c (move_it_vertically_backward): Change heuristic
20232 for the case that we didn't move far enough initially.
20233
20234 * window.c (Frecenter): Simplify computation in the case of window
20235 system frames and ARG < 0; use window_box_height.
20236
20237 2001-12-11 Richard M. Stallman <rms@gnu.org>
20238
20239 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
20240 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
20241
20242 2001-12-11 Andrew Innes <andrewi@gnu.org>
20243
20244 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
20245 arg is negative.
20246
20247 2001-12-11 Richard M. Stallman <rms@gnu.org>
20248
20249 * m/hp800.h: Split the __hpux conditional into the parts
20250 that are right for GNU/Linux too and the parts that are not.
20251 Use the former if GNU_LINUX.
20252 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
20253
20254 * s/gnu-linux.h (GNU_LINUX): Defined.
20255
20256 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20257
20258 * macros.c, msdos.c, w16select.c: Change doc-string comments to
20259 `new style' [w/`doc:' keyword].
20260
20261 2001-12-10 Jason Rumney <jasonr@gnu.org>
20262
20263 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
20264 before using.
20265
20266 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20267
20268 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
20269 keyword].
20270
20271 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
20272
20273 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
20274
20275 * s/hpux10.h (srand48): Don't undefine.
20276
20277 2001-12-09 Jason Rumney <jasonr@gnu.org>
20278
20279 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
20280 Add comment to explain where the struct came from.
20281 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
20282 (add_menu_item): Process pop-up menus first to avoid memory leak.
20283 (add_menu_item, w32_menu_display_help): Use `help' field as
20284 Lisp_Object.
20285 (w32_free_submenu_strings): Only free owner-drawn strings.
20286
20287 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20288
20289 * COPYING: Moved back.
20290
20291 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
20292 Add parentheses around && within ||.
20293
20294 * indent.c (compute_motion): Likewise.
20295
20296 * intervals.c (merge_properties_sticky): Likewise.
20297
20298 * coding.c (setup_coding_system, shrink_encoding_region)
20299 (Fdecode_sjis_char): Likewise.
20300
20301 2001-12-07 Andreas Schwab <schwab@suse.de>
20302
20303 * xdisp.c (display_mode_element): Don't read past end of string if
20304 it ends with '%'.
20305
20306 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
20307 can hold.
20308
20309 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
20310 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
20311 type changed to Lisp_Object.
20312 (syms_of_data): DEFVAR_LISP them.
20313
20314 2001-12-07 Richard M. Stallman <rms@gnu.org>
20315
20316 * callproc.c (init_callproc): Set Vdata_directory based on the source
20317 location whenever Emacs was run uninstalled.
20318
20319 2001-12-06 Paul Eggert <eggert@twinsun.com>
20320
20321 * config.in (HAVE_WORKING_VFORK): New #undefs.
20322 * process.c (create_process):
20323 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
20324 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
20325 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
20326 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
20327 * m/intel386.h (HAVE_VFORK): Likewise.
20328 * m/mips-siemens.h (HAVE_VFORK): Likewise.
20329 * m/mips.h (HAVE_VFORK): Likewise.
20330 * s/freebsd.h (vfork): Remove #define.
20331 * s/lynxos.h (HAVE_VFORK): Remove #undef.
20332 * s/usg5-4-2.h: Fix comment about vfork.
20333
20334 2001-12-06 Richard M. Stallman <rms@gnu.org>
20335
20336 * s/hpux10.h (random): Add undef.
20337 (HAVE_RANDOM): Define it just once.
20338
20339 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
20340
20341 * eval.c: Undo last change: the standard syntax is not wanted.
20342
20343 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
20344
20345 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
20346 scroll bars of the frame before deleting the frame itself. If the
20347 frame has a widget, delete the frame with XtDestroyWidget, and do
20348 not call XDestroyWindow before that.
20349
20350 2001-12-06 Kim F. Storm <storm@cua.dk>
20351
20352 * xfns.c (x_report_frame_params): Return actual fringe widths.
20353
20354 * w32fns.c (x_report_frame_params): Return actual fringe widths.
20355
20356 2001-12-05 Andrew Innes <andrewi@gnu.org>
20357
20358 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
20359 excessively large.
20360
20361 * insdel.c (make_gap_larger): New function.
20362 (make_gap_smaller): New function.
20363 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
20364 Call make_gap_smaller if arg is negative.
20365
20366 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
20367
20368 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
20369 Pass a dummy argument when calling interrupt_signal.
20370 (parse_menu_item): Mark disabled items before checking for empty def.
20371 (read_char_minibuf_menu_prompt): Make safety more visible.
20372 (read_key_sequence): Add a `first_unbound' variable.
20373 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
20374 unbound prefix as soon as we can detect it.
20375
20376 * doc.c (Fsnarf_documentation): Add prototype.
20377 (get_doc_string): Handle negative arguments.
20378 (Fdocumentation): Use AREF and ASIZE.
20379 Move the calls to get_doc_string to a single place.
20380 Don't confuse an interactive-spec for a docstring reference.
20381 (Fdocumentation_property): Take advantage of the fact that
20382 get_doc_string now ignores the sign of the docstring position.
20383
20384 * eval.c: Use standard syntax for usage in docstrings.
20385
20386 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20387
20388 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
20389
20390 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20391
20392 * xterm.c (x_draw_image_relief): Use predefined macro instead of
20393 constant when the value of `tool_bar_button_relief' is negative.
20394
20395 2001-12-02 Richard M. Stallman <rms@gnu.org>
20396
20397 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
20398 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
20399
20400 * fileio.c (read_non_regular): Delete Fsignal call.
20401
20402 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
20403
20404 * lisp.h (run_hook_list_with_args): Undo last change.
20405
20406 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20407
20408 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20409
20410 2001-12-01 Jason Rumney <jasonr@gnu.org>
20411
20412 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20413
20414 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20415 [!WM_MOUSELEAVE]: Define.
20416
20417 * w32menu.c (current_popup_menu, get_menu_item_info):
20418 (set_menu_item_info): New vars.
20419 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20420 (w32_menu_show): Set current_popup_menu.
20421 (add_menu_item): Allocate new strings for owner-drawn menu items
20422 and help strings.
20423 Use owner-draw for disabled menu items again.
20424 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20425 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20426
20427 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20428 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20429 <WM_EXITMENULOOP>: Free menu strings.
20430 <WM_MOUSELEAVE>: Stop tracking mouse.
20431 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20432
20433 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20434 and mouse face.
20435
20436 2001-12-01 Kim F. Storm <storm@cua.dk>
20437
20438 The following changes add left-fringe and right-fringe
20439 frame parameters to adjust fringe widths, or remove one or
20440 both fringes.
20441
20442 * frame.h (struct frame): Remove trunc_area_pixel_width and
20443 trunc_area_cols fields.
20444 (Qleft_fringe, Qright_fringe): Declare.
20445 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20446
20447 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20448 (syms_of_frame): Initialize them.
20449
20450 * window.c (coordinates_in_window): Handle separate left and right
20451 fringe widths.
20452
20453 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20454 and fringe_cols fields.
20455 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20456 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20457 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20458 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20459 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20460 (x_compute_fringe_widths): Add prototype.
20461
20462 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20463 fill fringe evenly with small dashes.
20464 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20465 clip the new ZV bitmap to avoid jitter between rows.
20466 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
20467 background. Don't draw fringe bitmaps if fringe width is zero.
20468 (x_compute_fringe_widths): New function.
20469 (x_new_font, x_set_window_size_1): Use it.
20470
20471 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
20472 (x_set_frame_parameters): Process `font' parameter before other
20473 parameters as fringe widths depend on it.
20474 (x_set_fringe_width): New function.
20475 (x_figure_window_size): Use x_compute_fringe_widths.
20476 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
20477 parameters.
20478
20479 * widget.c (set_frame_size): Use x_compute_fringe_widths.
20480 (EmacsFrameSetCharSize): Ditto.
20481
20482 * w32term.h: Merged changes from xterm.h.
20483 * w32term.c: Merged changes from xterm.c.
20484 * w32fns.c: Merged changes from xfns.c.
20485
20486 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20487
20488 * COPYING: Removed.
20489
20490 2001-11-29 Dave Love <fx@gnu.org>
20491
20492 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
20493 extra extra slot.
20494 (detect_coding_mask): Fix call of detect_coding_iso2022.
20495
20496 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20497
20498 * fileio.c (file-name-coding-system)
20499 (default-file-name-coding-system): Doc fix (links to referenced
20500 variables added).
20501
20502 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20503
20504 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
20505 Add dummy uses of gcproN variables.
20506
20507 * category.c (describe_category, describe_category_1)
20508 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
20509 (syms_of_category): Don't defsubr Sdescribe_categories.
20510
20511 2001-11-28 Richard M. Stallman <rms@gnu.org>
20512
20513 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
20514
20515 * Makefile.in (lispdir): New variable, referring to build dir.
20516 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
20517
20518 2001-11-28 Andrew Innes <andrewi@gnu.org>
20519
20520 * w32menu.c (w32_menu_display_help): Actually add the new argument
20521 OWNER.
20522
20523 2001-11-28 Jason Rumney <jasonr@gnu.org>
20524
20525 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
20526 menu items. From David Ponce <dponce@wanadoo.fr>.
20527 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
20528 conditionally.
20529 (w32_menu_display_help): New argument OWNER. Rewritten to store a
20530 help event in the owner frame's keyboard buffer.
20531
20532 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
20533 (Fx_show_tip): Don't subtract last width from row width.
20534
20535 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
20536 (w32_read_socket): Use EQ to compare frames.
20537
20538 2001-11-28 Gerd Moellmann <gerd@gnu.org>
20539
20540 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20541 OVERLAPS_P.
20542
20543 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20544
20545 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
20546 `gcpro3' and `gcpro4'.
20547
20548 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
20549
20550 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20551
20552 * ccl.c: Use AREF and ASIZE.
20553
20554 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
20555
20556 * lisp.h (run_hook_list_with_args): Remove.
20557 (LIST_END_P): Fix call to wrong_type_argument.
20558 (make_fixnum_or_float): Use EMACS_INT rather than int.
20559
20560 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
20561
20562 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
20563 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
20564
20565 * eval.c: Use AREF and ASIZE.
20566 (Ffetch_bytecode): Add the file name to the error message.
20567
20568 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
20569 which match the end of the file-name.
20570 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
20571 is not a valid env var, but leave it as is instead.
20572
20573 * keymap.c (access_keymap): Handle t bindings like nil bindings.
20574 Make nil bindings in char-tables transparent.
20575 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
20576
20577 2001-11-26 Richard M. Stallman <rms@gnu.org>
20578
20579 * textprop.c (set_text_properties_1): Allow START, END in either order.
20580 Do nothing if range is empty.
20581
20582 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
20583
20584 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
20585 (clean): Not here.
20586
20587 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20588
20589 * textprop.c (set_text_properties_1): Clearly mark that the
20590 interval should not be empty.
20591
20592 * intervals.c (graft_intervals_into_buffer):
20593 Don't call set_text_properties_1 on an empty interval.
20594
20595 2001-11-25 Richard M. Stallman <rms@gnu.org>
20596
20597 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
20598
20599 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
20600 don't lose the data in it.
20601
20602 2001-11-25 Juanma Barranquero <lektu@terra.es>
20603
20604 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
20605
20606 * buffer.c (Fkill_buffer): Likewise.
20607
20608 * print.c (temp_output_buffer_setup): Likewise.
20609
20610 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20611
20612 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
20613
20614 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
20615
20616 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
20617 Niemitalo <kon@iki.fi>.
20618
20619 2001-11-25 Jason Rumney <jasonr@gnu.org>
20620
20621 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
20622
20623 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
20624 (Fx_show_tip): Block input during frame creation.
20625 (Fx_show_tip, Fx_hide_tip): Enable.
20626
20627 2001-11-24 Richard M. Stallman <rms@gnu.org>
20628
20629 * lread.c (Fload): Detect recursive load error for more than 3
20630 nestings of the same file.
20631 (Vrecursive_load_depth_limit): Variable deleted.
20632 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
20633
20634 2001-11-24 Jason Rumney <jasonr@gnu.org>
20635
20636 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
20637 mouse position if either left or top is not specified.
20638
20639 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
20640 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
20641 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
20642 (my_create_tip_window): Assign tip_window.
20643 (x_create_tip_frame): Use same defaults as X.
20644 (compute_tip_xy): Remove unused variable. Use full screen width.
20645 (Fx_show_tip): Do not double height. Call ShowWindow directly.
20646
20647 * w32term.c (x_after_update_window_line): Doc fix.
20648 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
20649 frames.
20650 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
20651
20652 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
20653 for all Windowed systems.
20654
20655 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
20656
20657 * msdos.c (IT_clear_screen): If the frame's faces are not yet
20658 realized, use the initial screen colors to clear the screen.
20659
20660 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20661
20662 * textprop.c (Fset_text_properties): Remove unused variables
20663 `unchanged', `prev_changed', `s' and `len'.
20664
20665 * search.c (Freplace_match): Remove unused variable `inslen'.
20666
20667 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
20668
20669 2001-11-22 Jason Rumney <jasonr@gnu.org>
20670
20671 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
20672 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
20673 (my_create_tip_window): New function.
20674 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
20675 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
20676
20677 2001-11-20 Jason Rumney <jasonr@gnu.org>
20678
20679 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
20680 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
20681
20682 * w32fns.c (Vw32_system_coding_system): Remove.
20683 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
20684
20685 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
20686
20687 * fileio.c (Fwrite_region): Move choose_write_coding_system to
20688 after build_annotations.
20689
20690 * syntax.c (describe_syntax): Add dummy arg.
20691 (describe_syntax_1): Update call to describe_vector.
20692
20693 * category.c (describe_category): Add dummy arg.
20694 (describe_category_1): Update call to describe_vector.
20695
20696 * keymap.c (Fdescribe_vector): Add `describer' parameter.
20697 (describe_command, describe_translation): Add dummy second param.
20698 (describe_map): Call elt_describer with two arguments.
20699 (describe_vector_princ): Add `fun' parameter.
20700 Call it instead of the hardcoded `princ'.
20701 (describe_vector): Add arg `args'.
20702 Pass it as a new second argument to elt_describer.
20703
20704 * keymap.h (describe_vector): Update prototype.
20705
20706 * frame.c: Don't include keymap.h any more.
20707 (keys_of_frame): Remove.
20708
20709 * lisp.h (keys_of_frame): Remove declaration.
20710
20711 * emacs.c (main): Don't call `keys_of_frame' any more.
20712
20713 2001-11-14 Andreas Schwab <schwab@suse.de>
20714
20715 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
20716 if defined, 0 otherwise.
20717 (MAP_FAILED): Define if not defined and use it to test mmap failure.
20718 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
20719
20720 2001-11-19 Richard M. Stallman <rms@gnu.org>
20721
20722 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
20723
20724 2001-11-18 Jason Rumney <jasonr@gnu.org>
20725
20726 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
20727 (x_draw_bar_cursor): If the background color of the glyph under
20728 the cursor equals the frame's cursor color, use the glyph's
20729 foreground color for drawing the bar cursor.
20730 (x_after_update_window_line): Clear internal border in different
20731 circumstances.
20732 (w32_set_vertical_scroll_bar): Check for width and height > 0.
20733 (w32_draw_relief_rect): Correct relief by 1 pixel.
20734 (x_set_glyph_string_background_width):
20735 Set extends_to_end_of_line_p if the row's fill_line_p is set and
20736 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
20737 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
20738 if cursor_in_non_selected_windows is false.
20739 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
20740 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
20741 Notice if cursor gets overwritten.
20742 (notice_overwritten_cursor): Renamed from
20743 note_overwritten_text_cursor. Rewritten to take glyph widths
20744 into account, and to take X positions as parameters.
20745 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20746 around call to x_draw_glyphs.
20747 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20748 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20749 color to use for image glyph reliefs.
20750 (x_draw_image_relief): Accept zero tool_bar_button_relief.
20751 (glyph_rect): Remove unused variable `area'.
20752
20753 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
20754 some items.
20755 (x_set_internal_border_width): Set frame garbaged when window
20756 doesn't exist yet.
20757 (Fx_create_frame): Accept zero tool_bar_button_relief.
20758 (x_clear_image_1, four_corners_best, image_background)
20759 (image_background_transparent): New functions.
20760 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20761 (gs_format): Add `:background' entry.
20762 (lookup_image): Set IMG's background color if specified.
20763 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20764 when appropriate.
20765 (x_clear_image_1): Reset `background_valid' and
20766 `background_transparent_valid' fields.
20767 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20768 calculating it here. Set IMG's background_transparent field.
20769 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20770 (enum png_keyword_index): Add PNG_BACKGROUND.
20771 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20772 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20773 (enum gif_keyword_index): Add GIF_BACKGROUND.
20774 (enum gs_keyword_index): Add GS_BACKGROUND.
20775 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20776 Pre-calculate image background color where necessary.
20777 (x_create_x_image_and_pixmap, xbm_load, gs_load):
20778 Use display info's n_cbits entry for screen depth.
20779 (Fx_show_tip): Remove unused variables `buffer', `top',
20780 `left', `max_width' and `max_height'.
20781
20782 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
20783
20784 2001-11-18 Gerd Moellmann <gerd@gnu.org>
20785
20786 * puresize.h (BASE_PURESIZE): Increase to 750000.
20787
20788 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20789
20790 * frame.c (Fframe_live_p): Doc fix.
20791
20792 2001-11-18 Richard M. Stallman <rms@gnu.org>
20793
20794 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
20795 (message_dolog_marker3): New static variables hold three markers.
20796 (syms_of_xdisp): Initialize and staticpro them.
20797 (message_dolog): Use message_dolog_marker1..3 instead of
20798 allocating markers each time. Unchain them when done.
20799
20800 2001-11-17 Richard M. Stallman <rms@gnu.org>
20801
20802 * doc.c (Fsnarf_documentation): Doc fix.
20803
20804 2001-11-17 Andreas Schwab <schwab@suse.de>
20805
20806 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
20807
20808 2001-11-17 Richard M. Stallman <rms@gnu.org>
20809
20810 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
20811
20812 2001-11-17 Jason Rumney <jasonr@gnu.org>
20813
20814 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
20815
20816 2001-11-17 Gerd Moellmann <gerd@gnu.org>
20817
20818 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
20819 with invalid position.
20820
20821 2001-11-16 Richard M. Stallman <rms@gnu.org>
20822
20823 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
20824
20825 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
20826 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
20827 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
20828
20829 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
20830
20831 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20832
20833 * fileio.c (build_annotations): Split off the tail.
20834 (build_annotations_2): New fun. Extracted from build_annotations.
20835 (Fwrite_region): Split the call to build_annotations into two
20836 calls to build_annotations and build_annotations_2.
20837
20838 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20839
20840 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
20841 clear_waiting_for_input with argument.
20842
20843 * xterm.h (x_update_cursor): Remove duplicated prototype.
20844
20845 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
20846
20847 * xterm.c (waiting_for_input): Remove unnecessary declaration.
20848
20849 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
20850
20851 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20852
20853 * fileio.c (choose_write_coding_system): New fun, extracted
20854 from Fwrite_region.
20855 (Fwrite_region): Use it.
20856
20857 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
20858 (funcall_lambda, run_hook_with_args): Make static and add prototype.
20859 (ml_apply, find_handler_clause): Add prototype.
20860
20861 2001-11-16 Eli Zaretskii <eliz@gnu.org>
20862
20863 * config.in: Add #undef HAVE_COFF_H.
20864
20865 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
20866 Required for ISC 4.1.
20867
20868 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
20869
20870 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
20871 Andrew Wiseman <a.wiseman@btclick.com>.
20872
20873 2001-11-16 Kim F. Storm <storm@cua.dk>
20874
20875 The following changes are made to clean up the various internal
20876 references to the fringes to actually use the term `fringe' for
20877 them. Previously, they were called `flags areas', `bitmap areas',
20878 `left/right side of windows', or implicitly as `flags' or
20879 `bitmaps':
20880
20881 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
20882 Comments fixed. Use renamed symbols.
20883
20884 * dispnew.c: Comment fix. Use renamed symbols.
20885
20886 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
20887 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
20888 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
20889
20890 * msdos.c: Comment fix.
20891
20892 * w32fns.c: Use renamed symbols.
20893
20894 * w32term.c: Comment fixes. Use renamed symbols.
20895 (fringe_bitmap_type): Renamed from bitmap_type.
20896 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20897 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
20898 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20899
20900 * w32term.h: Comment fixes. Use renamed symbols.
20901 (fringes_extra): Renamed from flags_areas_extra.
20902 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20903 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20904 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20905 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20906 (FRAME_X_LEFT_FRINGE_WIDTH):
20907 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20908 (FRAME_X_RIGHT_FRINGE_WIDTH):
20909 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20910
20911 * widget.c: Use renamed symbols.
20912
20913 * window.c: Comment fixes. Use renamed symbols.
20914 (coordinates-in-window-p): Doc fix.
20915
20916 * xdisp.c: Comment fixes. Use renamed symbols.
20917
20918 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
20919
20920 * xfns.c: Use renamed symbols.
20921
20922 * xterm.c: Comment fixes. Use renamed symbols.
20923 (fringe_bitmap_type): Renamed from bitmap_type.
20924 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
20925 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
20926 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
20927
20928 * xterm.h: Comment fixes. Use renamed symbols.
20929 (fringes_extra): Renamed from flags_areas_extra.
20930 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
20931 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
20932 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
20933 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
20934 (FRAME_X_LEFT_FRINGE_WIDTH):
20935 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
20936 (FRAME_X_RIGHT_FRINGE_WIDTH):
20937 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
20938
20939 2001-11-15 Jason Rumney <jasonr@gnu.org>
20940
20941 * w32menu.c (add-menu-item): Make help_echo and radio buttons
20942 work for most menu items. From David Ponce
20943 <david.ponce@wanadoo.fr>.
20944
20945 2001-11-15 Gerd Moellmann <gerd@gnu.org>
20946
20947 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
20948 Some x_set_* function expect to be called even if old and new
20949 value are equal.
20950
20951 * xdisp.c (build_desired_tool_bar_string): Accept zero
20952 tool_bar_button_relief.
20953
20954 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
20955
20956 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
20957
20958 * xterm.c (x_draw_bar_cursor): If the background color of the
20959 glyph under the cursor equals the frame's cursor color, use
20960 the glyph's foreground color for drawing the bar cursor.
20961
20962 * dispnew.c (direct_output_forward_char): Fix character/byte
20963 position comparison.
20964
20965 2001-11-15 Miles Bader <miles@gnu.org>
20966
20967 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
20968 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
20969 Update arguments to find_field.
20970 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
20971 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
20972 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
20973 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
20974
20975 2001-11-14 Richard M. Stallman <rms@gnu.org>
20976
20977 * editfns.c (Fpropertize): Allow call with 1 arg.
20978
20979 * dispextern.h (image_background, image_background_transparent):
20980 Conditionalize on HAVE_X_WINDOWS.
20981
20982 2001-11-13 Richard M. Stallman <rms@gnu.org>
20983
20984 * print.c (Fprin1_to_string): Doc fix.
20985
20986 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
20987
20988 * floatfns.c (Fceiling, Ffloor): Doc fixes.
20989
20990 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
20991
20992 * fileio.c (Ffile_accessible_directory_p): Doc fix.
20993
20994 * eval.c (syms_of_eval): Doc fix.
20995
20996 * coding.c (syms_of_coding): Doc fix.
20997
20998 * doc.c (Fsnarf_documentation): Doc fix.
20999
21000 * dispnew.c (syms_of_display): Doc fix.
21001
21002 * category.c (Fget_unused_category): Doc fix.
21003
21004 * buffer.c (syms_of_buffer): Doc fixes.
21005
21006 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
21007
21008 * print.c (prin1, print): Doc fix.
21009
21010 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21011
21012 * fontset.h: Remove declarations of variables
21013 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
21014
21015 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
21016 `Vclip_large_size_font'.
21017
21018 2001-11-13 Jason Rumney <jasonr@gnu.org>
21019
21020 * w32fns.c: Doc fix.
21021
21022 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21023
21024 * xfaces.c (Fface_attributes_as_vector): Doc fix.
21025
21026 * fns.c: Doc fix.
21027
21028 * emacs.c: Doc fix.
21029
21030 * coding.c: Doc fix.
21031
21032 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
21033 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
21034 `new style' [w/`doc:' keyword].
21035
21036 2001-11-12 Richard M. Stallman <rms@gnu.org>
21037
21038 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
21039 LeaveNotify events. Only FocusIn and FocusOut do that now.
21040 (x_display_and_set_cursor): Do display hollow cursors in active
21041 minibuffer windows when they are not selected.
21042
21043 2001-11-12 Jason Rumney <jasonr@gnu.org>
21044
21045 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
21046 * w32term.c: Change doc-string comments to `new style'
21047 [w/`doc:' keyword]. Doc fixes.
21048
21049 * w32fns.c: Don't define max.
21050 (Fx_open_connection): Only execute once.
21051
21052 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21053
21054 * ccl.c: Change macros to use do-while block instead of if-else.
21055 Use braces to follow GNU Coding Standards.
21056
21057 2001-11-11 Richard M. Stallman <rms@gnu.org>
21058
21059 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
21060
21061 * lread.c (read_escape): Use end_of_file_error for reporting eof.
21062
21063 * insdel.c (replace_range): Use adjust_markers_for_replace
21064 instead of adjust_markers_for_delete and adjust_markers_for_insert.
21065
21066 * intervals.h (set_text_properties, set_text_properties_1): Declare.
21067
21068 * textprop.c (set_text_properties_1): New subroutine
21069 broken out of set_text_properties.
21070 (set_text_properties): Use set_text_properties_1.
21071
21072 * intervals.c (graft_intervals_into_buffer):
21073 Use set_text_properties_1 to clear out properties.
21074
21075 * search.c (Freplace_match): Use replace_range to insert
21076 and delete. Don't request property inheritance from
21077 surrounding text.
21078
21079 2001-11-10 Jason Rumney <jasonr@gnu.org>
21080
21081 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
21082 vertical fonts. Allow them if face name is explicitly specified.
21083 Do not give up if we find a font that cannot be converted to an xlfd.
21084
21085 2001-11-10 Gerd Moellmann <gerd@gnu.org>
21086
21087 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
21088 instead of malloc/free.
21089
21090 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21091
21092 * xfaces.c (merge_face_vectors): Use braces to follow GNU
21093 Coding Standards.
21094 (Finternal_set_lisp_face_attribute): Likewise.
21095
21096 * buffer.c (Fbury_buffer): Likewise.
21097
21098 * indent.c (current_column_1): Remove unused variable `prev_col'.
21099
21100 * coding.c (encode_coding): Use precomputed value of `src'.
21101 (encode_coding): Remove unused variable `src_end'.
21102 (code_convert_region): Remove unused variables `count'.
21103
21104 2001-11-07 Jason Rumney <jasonr@gnu.org>
21105
21106 * w32term.c (x_display_and_set_cursor): Do not move system caret
21107 if cursor_glyph is NULL.
21108
21109 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21110
21111 * keymap.c (access_keymap): Fix compilation error.
21112
21113 2001-11-07 Miles Bader <miles@gnu.org>
21114
21115 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
21116
21117 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21118
21119 * intervals.c (graft_intervals_into_buffer):
21120 Remove #ifdef'd-out code.
21121 (graft_intervals_into_buffer): Remove unused variable `middle'.
21122
21123 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
21124 code (eval-current-buffer).
21125 Change doc-string comments to `new style' [w/`doc:' keyword].
21126
21127 2001-11-06 Richard M. Stallman <rms@gnu.org>
21128
21129 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
21130
21131 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
21132
21133 * lread.c (read1): Fix behavior with nested backquoting.
21134
21135 * keyboard.c (make_lispy_event): Check integerness and fix
21136 Lisp_Object/int mixup.
21137
21138 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21139
21140 * fns.c (copy_hash_table): Remove unused variable `v'.
21141
21142 * fontset.c (fontset_font_pattern): Remove unused variable
21143 `family_registry'.
21144
21145 * indent.c (current_column_1): Remove unused variable `prev_col'.
21146
21147 2001-11-05 Richard M. Stallman <rms@gnu.org>
21148
21149 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
21150
21151 * buffer.c (Fkill_buffer): Don't delete auto save file
21152 if buffer is modified.
21153
21154 2001-11-05 Andrew Innes <andrewi@gnu.org>
21155
21156 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
21157 CHECK_NUMBER_CDR.
21158
21159 2001-11-05 Richard M. Stallman <rms@gnu.org>
21160
21161 * unexelf.c (unexec): Minor changes; clean up comments.
21162
21163 2001-11-05 Sam Steingold <sds@gnu.org>
21164
21165 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
21166
21167 2001-11-05 Andreas Schwab <schwab@suse.de>
21168
21169 * sound.c (sound_perror): Save errno from being clobbered.
21170
21171 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
21172
21173 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
21174 the program image directly.
21175
21176 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21177
21178 * buffer.h (Fbuffer_local_value): Add prototype.
21179
21180 2001-11-04 Richard M. Stallman <rms@gnu.org>
21181
21182 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
21183 and CHECK_BUFFER.
21184
21185 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
21186 (record_char): Likewise.
21187
21188 * keyboard.c (make_lispy_event): Don't insist a drag event must
21189 move to a different buffer position. Instead, check for moving at
21190 least double_click_fuzz.
21191
21192 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
21193
21194 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
21195
21196 * indent.c (current_column_1, Fmove_to_column): Separate the code
21197 for display-table glyphs from the code for buffer text, to fix
21198 bugs in the former.
21199
21200 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
21201
21202 * buffer.c (Fbuffer_local_value): New function.
21203 (syms_of_buffer): Defsubr it.
21204
21205 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
21206 value of `cursor-in-non-selected-windows'.
21207
21208 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
21209 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
21210 (syms_of_xdisp): Initialize it.
21211
21212 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21213
21214 * xfns.c (Fx_create_frame): Doc fix.
21215
21216 * coding.c: Change doc-string comments to `new style' [w/`doc:'
21217 keyword].
21218
21219 * eval.c (top_level_value, top_level_set): Remove commented and
21220 #ifdef'd-out code.
21221 (Fdefvar): Fix usage in doc-string.
21222
21223 2001-11-03 Richard M. Stallman <rms@gnu.org>
21224
21225 * xfns.c: Include unistd.h, if it exists.
21226
21227 * editfns.c: Move the include of ctype.h after unistd.h.
21228
21229 * gmalloc.c: Test BROKEN_PROTOTYPES.
21230
21231 2001-11-03 Ken Raeburn <raeburn@gnu.org>
21232
21233 * lisp.h (CHECK_STRING_CAR): New macro.
21234 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
21235 treating XCAR and XCDR as lvalues.
21236 (openp): Use CHECK_STRING_CAR.
21237 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
21238
21239 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
21240
21241 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
21242 (SIGMASKTYPE): Define.
21243
21244 * syssignal.h (sigunblock): Don't define if already defined.
21245
21246 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21247
21248 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
21249 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
21250 Fix typos in comments.
21251
21252 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
21253 and #ifdef'd-out code.
21254 Fix and reindent comments.
21255
21256 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
21257
21258 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
21259 argument `i' in macros.
21260
21261 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
21262 `i' in macros.
21263
21264 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
21265 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
21266 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
21267 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
21268 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
21269 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
21270 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
21271 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
21272 in macros.
21273
21274 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
21275 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
21276 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
21277 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
21278 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
21279 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
21280 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
21281 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
21282 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
21283 (remove unused second argument).
21284
21285 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
21286
21287 * syntax.c (describe_syntax): New wrapper.
21288 (Finternal_describe_syntax_value): Rename from describe_syntax.
21289 Don't insert space at front and \n at the end.
21290 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
21291
21292 * regex.c (re_wctype): Try to fix some warnings.
21293 (regcomp, regexec): Don't forget the __restrict.
21294
21295 2001-11-02 Richard M. Stallman <rms@gnu.org>
21296
21297 * textprop.c (Fget_char_property): Doc fix.
21298
21299 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21300
21301 * process.c (Fstart_process): Add usage to doc-string.
21302
21303 * data.c (Fsetq_default): Ditto.
21304
21305 * callint.c (Finteractive): Ditto.
21306
21307 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
21308
21309 * macros.c: Don't include keymap.h any more.
21310
21311 2001-11-01 Richard M. Stallman <rms@gnu.org>
21312
21313 * data.c (Fmake_local_variable): Doc fix.
21314
21315 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
21316 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
21317
21318 * keymap.c (Fdescribe_buffer_bindings): Print character property
21319 bindings along with or instead of the buffer local map.
21320 Make the overriding maps override what they should.
21321
21322 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21323
21324 * window.c (grow_mini_window): Fix typo in comment.
21325
21326 2001-11-01 Gerd Moellmann <gerd@gnu.org>
21327
21328 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
21329 (XTset_vertical_scroll_bar): Likewise.
21330
21331 * xfns.c (x_build_heuristic_mask): Use four_corners_best
21332 instead of IMAGE_BACKGROUND.
21333
21334 * xfns.c (four_corners_best): Reindent.
21335
21336 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
21337 Handle :box so that it is possible to specify sexprs.
21338
21339 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
21340
21341 * s/hpux11.h: New file.
21342
21343 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21344
21345 * emacs.c (USAGE1): Show command line option --no-window-system
21346 instead of --no-windows in usage.
21347 (standard_args): Rename --no-windows to --no-window-system.
21348 (bug_reporting_address): Follow Emacs coding conventions.
21349
21350 * eval.c (Fcommandp): Doc fix.
21351 Change doc-string comments to `new style' [w/`doc:' keyword].
21352
21353 * frame.c (Fframe_live_p): Doc fix.
21354
21355 * buffer.c (selective-display-ellipses): Doc fix.
21356
21357 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21358
21359 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
21360
21361 * xfaces.c (realize_x_face): If C is not a single-byte character,
21362 set the face's colors_copied_bitwise_p instead of the defaulted_p
21363 members which have a different meaning.
21364 (free_face_colors): Do nothing for a face whose colors have been
21365 copied bitwise.
21366
21367 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
21368
21369 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21370
21371 * marker.c, mocklisp.c: Change doc-string comments to `new style'
21372 [w/`doc:' keyword].
21373
21374 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21375
21376 * fns.c (require_unwind): Return Lisp_Object.
21377
21378 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21379
21380 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
21381 (last-input-char): Revert doc-string to be the same as the
21382 doc-string of `last-input-event'.
21383
21384 * xdisp.c: Fix typos in comments.
21385
21386 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21387
21388 * window.c (grow_mini_window): Handle case that the root
21389 window is already smaller than the nominal mininum height.
21390
21391 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
21392
21393 * emacs.c (main): Don't call keys_of_macros any more.
21394
21395 * lisp.h (keys_of_macros): Remove.
21396
21397 * macros.c (keys_of_macros): Remove.
21398
21399 * xfaces.c (Fface_attribute_relative_p): Declare args.
21400
21401 2001-10-30 Jason Rumney <jasonr@gnu.org>
21402
21403 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
21404 (enum_font_cb2): Ignore fonts with vertical orientation.
21405
21406 2001-10-30 Richard M. Stallman <rms@gnu.org>
21407
21408 * keyboard.c (Finput_pending_p): Doc fix.
21409
21410 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21411
21412 * xterm.c (x_after_update_window_line): Don't run the code
21413 clearing in borders for rows whose visible height is 0.
21414
21415 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21416 resized_p flag is set. If not set, use the much less flickering
21417 method previously used.
21418
21419 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21420
21421 * frame.h (struct frame) <resized_p>: New member.
21422
21423 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21424 as large as the number of bytes to convert.
21425
21426 * lread.c (to_multibyte): New function.
21427 (read1): Use it.
21428
21429 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21430
21431 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21432
21433 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21434
21435 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21436 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21437 if the row's fill_line_p is set and drawing the last glyph with
21438 DRAW_IMAGE_{RAISED,SUNKEN}.
21439
21440 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21441
21442 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21443
21444 * xmenu.c: Include coding.h and charset.h.
21445 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21446 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21447 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21448 Explicitly set wv->help. Use `TRUE' rather than `True'.
21449 (menu_help_callback): Use empty_string.
21450
21451 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21452 (Fx_popup_dialog): Explicitly init f.
21453 (w32_menu_display_help): Use empty_string.
21454
21455 2001-10-29 Richard M. Stallman <rms@gnu.org>
21456
21457 * fns.c (Frequire): Detect recursive try to require the same
21458 feature 3 or more levels deep, and get error.
21459 (require_unwind): New subroutine.
21460 (require_nesting_list): New variable.
21461 (syms_of_fns): Init and staticpro it.
21462
21463 * print.c (print_object): Clarify indication of insertion type.
21464
21465 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21466
21467 * coding.c (syms_of_coding): Document that locale-coding-system is
21468 used for decoding input on X.
21469
21470 * window.c (Fscroll_left, Fscroll_right): Doc fix.
21471
21472 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21473
21474 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
21475 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
21476
21477 2001-10-29 Gerd Moellmann <gerd@gnu.org>
21478
21479 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
21480 use NO_CURSOR if cursor_in_non_selected_windows is false.
21481
21482 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
21483 the slant attribute if FRAME is t.
21484
21485 * xfns.c (x_set_internal_border_width): Set frame garbaged
21486 when X window doesn't exist yet.
21487
21488 * xterm.c (x_after_update_window_line): Clear internal border
21489 in different circumstances.
21490
21491 * xterm.c (XTread_socket) <KeyPress>: Don't use
21492 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
21493 <handa@etl.go.jp>.
21494
21495 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
21496
21497 * m/ibms390.h: New file. From Adam Thornton
21498 <athornton@sinenomine.net>.
21499
21500 2001-10-28 Gerd Moellmann <gerd@gnu.org>
21501
21502 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
21503
21504 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
21505 a loop counter.
21506
21507 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21508
21509 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
21510
21511 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
21512 keyword].
21513 Fix typos in comments.
21514
21515 * emacs.c (bug_reporting_address): New function.
21516 Use it when displaying usage message.
21517
21518 * minibuf.c (read_minibuf): Remove unused external declaration of
21519 variable `Qread_only'.
21520
21521 * keymap.c (access_keymap): Remove unused variable `charset'.
21522
21523 2001-10-28 Miles Bader <miles@gnu.org>
21524
21525 * xfaces.c (merge_face_heights): Handle TO being relative as well.
21526 Remove #ifdef'd-out code.
21527 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
21528 (syms_of_xfaces): Initialize them.
21529
21530 2001-10-27 Jason Rumney <jasonr@gnu.org>
21531
21532 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
21533 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
21534 position using the system caret.
21535
21536 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
21537 (w32_system_caret_height, w32_system_caret_x)
21538 (w32_system_caret_y): New variables for tracking system caret.
21539 (w32_initialize): Initialize them.
21540 (x_display_and_set_cursor): Make system caret follow the active cursor.
21541
21542 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
21543 New messages types.
21544
21545 * w32term.c (note_mouse_highlight): Clear old help_echo.
21546
21547 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21548
21549 * xterm.c: Fix typo in a comment.
21550
21551 * emacs.c: Fix typos in comments.
21552 Remove unnecessary spaces.
21553 Change doc-string comments to `new style' [w/`doc:' keyword].
21554 (USAGE2): Fix typos in usage string.
21555
21556 * xterm.c: Fix typo in a comment.
21557
21558 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
21559 emacs.c.
21560
21561 2001-10-27 Gerd Moellmann <gerd@gnu.org>
21562
21563 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
21564 instead of 1/2 line_height in the heuristic for skipping
21565 farther backward when target_y was not reached.
21566
21567 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
21568 Display errno only if non-zero.
21569 (sound_warning): New function.
21570 (vox_configure): Don't treat failing to set sample rate as error.
21571 (various places): Improve error messages.
21572
21573 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
21574
21575 * fileio.c (Faccess_file): Run the argument filename through
21576 Fexpand_file_name, before using it.
21577
21578 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
21579 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
21580
21581 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21582
21583 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
21584
21585 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21586 Fix clearing in the case of scroll bars on the right.
21587
21588 2001-10-26 Juanma Barranquero <lektu@terra.es>
21589
21590 * w32gui.h (XImage): Add a dummy typedef.
21591
21592 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21593
21594 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
21595
21596 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
21597
21598 * frame.c (Fframe_parameter): Fix last change.
21599
21600 * fileio.c: Revert last change (which removed old commented-out
21601 version of expand-file-name). Add a comment that explains why
21602 this old version should not be removed.
21603
21604 2001-10-25 Gerd Moellmann <gerd@gnu.org>
21605
21606 * frame.c (Fframe_parameter): Fix a bug whereby some
21607 ``artificial'' frame parameters, like `minibuffer' were not
21608 obtained by calling Fframe_parameters.
21609
21610 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
21611 cursor differently.
21612
21613 * xdisp.c (move_it_vertically_backward): Compute line height
21614 differently. Add heuristic to try to be more compatible to 20.x.
21615
21616 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
21617
21618 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
21619
21620 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
21621 boolean.
21622
21623 2001-10-25 Miles Bader <miles@gnu.org>
21624
21625 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
21626 BG is a pointer to a structure, not a structure.
21627 (gif_format, png_format): Add missing commas.
21628
21629 2001-10-24 Richard M. Stallman <rms@gnu.org>
21630
21631 * xfaces.c (Fface_attributes_as_vector): New function.
21632 (syms_of_xfaces): Defsubr it.
21633
21634 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21635
21636 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
21637 variable `area'.
21638
21639 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21640
21641 * search.c (scan_newline): Remove unused variable `selective_display'.
21642
21643 2001-10-25 Miles Bader <miles@gnu.org>
21644
21645 * dispextern.h (struct image): Add `background',
21646 `background_valid', and `background_transparent' fields.
21647 (image_background, image_background_transparent): New declarations.
21648 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
21649 * xfns.c (image_background, image_background_transparent)
21650 (four_corners_best): New functions.
21651 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21652 (gs_format): Add `:background' entry.
21653 (lookup_image): Set IMG's background color if specified.
21654 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21655 when appropriate.
21656 (x_clear_image_1): Reset `background_valid' and
21657 `background_transparent_valid' fields.
21658 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21659 calculating it here. Set IMG's background_transparent field.
21660 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21661 (enum png_keyword_index): Add PNG_BACKGROUND.
21662 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21663 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21664 (enum gif_keyword_index): Add GIF_BACKGROUND.
21665 (enum gs_keyword_index): Add GS_BACKGROUND.
21666 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21667 Pre-calculate image background color where necessary.
21668 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21669 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21670 color to use for image glyph reliefs.
21671
21672 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21673
21674 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
21675 in full-width rows.
21676
21677 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21678 Fix clearing of area not covered by scroll bar.
21679
21680 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21681
21682 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
21683 and `real_start'.
21684 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
21685 (glyph_rect): Remove unused variable `area'.
21686
21687 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21688
21689 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
21690
21691 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
21692 (row_containing_pos): Take additional argument DY.
21693 Treat rows ending in middle of char differently.
21694 (display_line): Handle tabs on window systems differently.
21695
21696 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
21697 with additional argument.
21698
21699 * dispextern.h (row_containing_pos): Adjust prototype.
21700
21701 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
21702 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
21703 (try_window_id, try_window_reusing_current_matrix)
21704 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
21705 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
21706
21707 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21708
21709 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
21710 gnuemacs).
21711 (HAVE_BOXES): Fix typo in comment.
21712 (push_menu_pane): Fix typo in comment.
21713
21714 * xdisp.c (display_prop_string_p): Remove unused local declaration
21715 of `Qwhen'.
21716 (single_display_prop_string_p): Remove unused local declarations
21717 of `Qwhen' and `Qmargin'.
21718 (string_buffer_position): Remove unused variable `around'.
21719 (store_frame_title): Remove unused variable `width'.
21720
21721 * window.c: Don't define max.
21722 (coordinates_in_window): Remove unused variable `uy'.
21723
21724 * widget.c: Don't define max.
21725
21726 * process.c: Don't define max.
21727 (create_process): Remove unused variable `buffer'.
21728
21729 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21730
21731 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
21732
21733 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
21734
21735 * xfaces.c (Finternal_set_lisp_face_attribute)
21736 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
21737 frame is on a windowed display.
21738
21739 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21740
21741 * dispnew.c (sync_window_with_frame_matrix_rows):
21742 Fix handling of windows which aren't full-width, fix handling
21743 of marginal areas.
21744
21745 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
21746
21747 2001-10-23 Andreas Schwab <schwab@suse.de>
21748
21749 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
21750 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
21751
21752 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21753
21754 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
21755 REAL_END. Notice if cursor gets overwritten.
21756 (notice_overwritten_cursor): Take X positions as parameters.
21757 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21758 around call to x_draw_glyphs.
21759
21760 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21761
21762 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
21763 instead of C) and usage.
21764
21765 * editfns.c (char-to-string): Fix argument names (use CHAR instead
21766 of C) and usage.
21767
21768 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
21769 `left', `max_width' and `max_height'.
21770
21771 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21772
21773 * xdisp.c (display_line): For a tab continued to the next line,
21774 set row's ends_in_middle_of_char_p.
21775
21776 2001-10-22 Gerd Moellmann <gerd@gnu.org>
21777
21778 * xdisp.c (display_line): Fix computation of continuation lines
21779 width for TABs.
21780
21781 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21782
21783 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
21784 `Qlaplace'.
21785
21786 * fileio.c: Remove unused code.
21787
21788 2001-10-22 Miles Bader <miles@gnu.org>
21789
21790 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
21791 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
21792 Remove `DOC_STRINGS_IN_COMMENTS' cases.
21793
21794 2001-10-21 Jason Rumney <jasonr@gnu.org>
21795
21796 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
21797
21798 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
21799
21800 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
21801 (Finsert_string): Avoid the multi-line string literals warning.
21802
21803 2001-10-22 Miles Bader <miles@gnu.org>
21804
21805 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
21806 (Fdocumentation): Don't use it.
21807 (syms_of_doc): Don't initialize it.
21808
21809 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
21810 * print.c (Fwith_output_to_temp_buffer): Likewise.
21811 * window.c (Fsave_window_excursion): Likewise.
21812 * editfns.c (Fsave_excursion, Fsave_current_buffer)
21813 (Fsave_restriction): Likewise.
21814 * eval.c (Frun_hooks, Frun_hook_with_args)
21815 (Frun_hook_with_args_until_failure)
21816 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
21817 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
21818 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
21819 (Funwind_protect, Fcondition_case): Likewise.
21820 * coding.c (Ffind_operation_coding_system): Likewise.
21821 * keyboard.c (Ftrack_mouse): Likewise.
21822
21823 2001-10-21 Miles Bader <miles@gnu.org>
21824
21825 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
21826 (Fmake_hash_table): Add usage: string to doc string.
21827 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
21828 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
21829 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
21830 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
21831 (Fml_prefix_argument_loop): Likewise.
21832
21833 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21834
21835 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
21836
21837 * sysdep.c (init_sys_modes): Change doc-string comments to `new
21838 style' [w/`doc:' keyword].
21839
21840 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
21841 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
21842 comments to `new style' [w/`doc:' keyword].
21843
21844 2001-10-21 Jason Rumney <jasonr@gnu.org>
21845
21846 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
21847
21848 * w32term.c (remember_mouse_glyph): New function.
21849 (w32_mouse_position): Use it.
21850 (note_mouse_movement): If the mouse moved off the glyph, remember
21851 its new position.
21852
21853 * w32term.h (struct w32_output): Correct spelling of x_compatible.
21854 (w32_display_info): Add mouse_face_overlay.
21855
21856 * w32term.c (notice_overwritten_cursor): Renamed from
21857 note_overwritten_text_cursor. Rewritten to take glyph widths into
21858 account.
21859 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
21860 (fast_find_string_pos): New function.
21861 (fast_find_position): Return the correct vpos. Add parameter
21862 STOP. In the final row, stop before glyphs having STOP as object.
21863 Don't consider glyphs that are not from a buffer.
21864 (fast_find_position) [0]: Add a presumably more correct version
21865 for after 21.1.
21866 (expose_window_tree, expose_frame): Don't compute intersections here.
21867 (expose_window): Do it here instead.
21868 (expose_window_tree, expose_window, expose_line): Return 1 when
21869 overwriting mouse-face.
21870 (expose_window): If W is the window currently being updated, mark
21871 the frame garbaged.
21872 (expose_frame): If mouse-face was overwritten, redo it.
21873 (x_use_underline_position_properties): New variable.
21874 (syms_of_xterm): DEFVAR_BOOL it.
21875 (x_draw_glyph_string): Add comment to use it in future.
21876 (x_draw_glyph_string): Restore clipping after drawing box.
21877 Fix a computation of the underline position.
21878 (w32_get_glyph_string_clip_rect): Minor cleanup.
21879 (x_fill_stretch_glyph_string): Remove an assertion.
21880 (x_produce_glyphs): Don't convert multibyte characters
21881 to unibyte characters in unibyte buffers.
21882 (cursor_in_mouse_face_p): New function.
21883 (x_draw_stretch_glyph_string): Use it to choose a different GC
21884 when drawing a cursor within highlighted text. Don't draw
21885 background again if it has already been drawn.
21886 (x_draw_glyph_string_box): Don't draw a full-width
21887 box just because the glyph row's full_width_p flag is set.
21888 (x_draw_glyphs): Fix computation of rightmost x for
21889 full-width rows.
21890 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
21891 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
21892 change bottom shadow accordingly. Some cleanup.
21893 (x_update_window_end): Handle overwritten mouse face
21894 also for tool bar windows.
21895 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
21896 DRAW is DRAW_IMAGE_RAISED.
21897 (clear_mouse_face): Return 1 if text with mouse face was
21898 actually redrawn. Make the function static.
21899 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
21900 optimize away highlighting if we pass over that same overlay again.
21901 (note_mouse_highlight): Call mouse_face_overlay_overlaps
21902 to detect a case where we have to highlight a different region
21903 despite not having left the currently highlighted region.
21904 Set mouse_face_overlay in the x_display_info. Avoid changing the
21905 mouse pointer shape when show_mouse_face has already done it, or
21906 there is no need. Handle mouse-face and help-echo in strings.
21907 (glyph_rect): New function.
21908 (w32_mouse_position): Use it to raise the threshold for mouse
21909 movement event generation.
21910 (w32_initialize_display_info): Initialize the x_display_info's
21911 mouse_face_overlay.
21912 (w32_set_vertical_scroll_bar): Don't clear a zero height
21913 or width area.
21914 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
21915 a widget to zero height.
21916
21917 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
21918 Protect unibyte strings created by replacing their multibyte
21919 equivalents in menu_items.
21920 (w32_menu_show): Don't overwrite an item's name with its key
21921 description in case the description is a multibyte string.
21922 (single_submenu): Some cleanup.
21923
21924 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
21925 (postprocess_image): New function.
21926 (lookup_image): Call it for all image types except PostScript.
21927 (x_kill_gs_process): Call postprocess_image.
21928 (tiff_error_handler, tiff_warning_handler): New functions.
21929 (tiff_load): Install them as handlers.
21930 (x_kill_gs_process): Recognize if someone has cleared the image
21931 cache under us.
21932 (valid_image_p): Protect better against invalid image
21933 specifications. Previous code could signal an error.
21934 (Fx_hide_tip, Fshow_tip): Doc fix.
21935 (Fv_max_tooltip_size): New variable.
21936 (syns_of_xfns): DEFVAR_LISP it.
21937 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
21938 window buffer to *tip* right after creating the frame. Set frame's
21939 window_width. Use a maximum tooltip size specified by
21940 Vx_max_tooltip_size, if that has valid contents.
21941 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
21942 Make sure the tooltip is completely visible.
21943 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
21944 (Fx_create_frame): Adjust the frame's height for presence
21945 of the tool bar before calling x_figure_window_size.
21946 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
21947 when the window gets smaller.
21948 (x_set_foreground_color): Set frame's cursor_pixel.
21949 (x_set_foreground_color, x_set_background_color): Cleaned up.
21950 (x_set_font): Handle case of x_new_fontset returning the same name
21951 as before, although there was a change in fontsets.
21952
21953 2001-10-21 Miles Bader <miles@gnu.org>
21954
21955 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
21956 (Flogxor): Add usage: string to doc string.
21957 * charset.c (Fstring): Likewise.
21958 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
21959 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
21960
21961 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21962
21963 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
21964
21965 * alloc.c: Reindent DEFUNs with doc: keywords.
21966
21967 * abbrev.c (Finsert_abbrev_table_description): Reindent.
21968
21969 * frame.c: Change doc-string comments to `new style' [w/`doc:'
21970 keyword].
21971
21972 See ChangeLog.9 for earlier changes.
21973
21974 ;; Local Variables:
21975 ;; coding: iso-2022-7bit
21976 ;; End:
21977
21978 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
21979 Copying and distribution of this file, with or without modification,
21980 are permitted provided the copyright notice and this notice are preserved.
21981
21982 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4