]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2005-12-30 Luc Teirlinck <teirllm@auburn.edu>
2
3 * textprop.c (set_text_properties): Reword description of return value.
4 Return Qnil if caller wants to remove all text properties from a
5 string and the string already has no intervals.
6
7 2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca>
8
9 * term.c (visible_cursor): New boolean var.
10 (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
11 visible_cursor.
12 (syms_of_term): Export the new var as "visible-cursor".
13
14 2005-12-30 Eli Zaretskii <eliz@gnu.org>
15
16 * .gdbinit: Tell users not to worry about GDB warnings that some
17 functions do not exist in the binary.
18
19 2005-12-30 Andreas Schwab <schwab@suse.de>
20
21 * process.c (Fnetwork_interface_info): Correctly terminate the
22 loop over ifflag_table.
23
24 2005-12-29 Richard M. Stallman <rms@gnu.org>
25
26 * lread.c (readevalloop): Test for reading a whole buffer
27 before actually reading anything. Handle all cases, including
28 START = END = nil and an already-narrowed buffer.
29 Convert END to a marker if it is a number.
30
31 * keymap.c (describe_map): Put sparse map elements into an array,
32 sort them, then output a sequence of identical bindings on one line.
33 (struct describe_map_elt): New data type.
34 (describe_map_compare): New function.
35
36 2005-12-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
37
38 * gtkutil.c (xg_get_file_with_chooser): Changed message shown
39 in file chooser.
40
41 2005-12-27 Richard M. Stallman <rms@gnu.org>
42
43 * lread.c (readevalloop): Set PT and ZV in the proper buffer,
44 not the current one.
45
46 * minibuf.c (Fminibuffer_message): Doc fix.
47 (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
48
49 * eval.c (do_autoload): Ignore elements of Vautoload_queue
50 where car is not symbol.
51
52 2005-12-27 Kenichi Handa <handa@m17n.org>
53
54 * charset.c (lisp_string_width): Check multibyteness of STRING.
55
56 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
57
58 * xfns.c: x_show_hidden_files, new variable.
59 (syms_of_xfns): Defvar it.
60
61 * gtkutil.c (xg_toggle_visibility_cb): New function.
62 (xg_get_file_with_chooser): Add toggle hidden files and a message
63 to the new file chooser dialog. Show hidden files if
64 x_show_hidden_files is non-zero.
65
66 2005-12-26 Richard M. Stallman <rms@gnu.org>
67
68 * keyboard.h: Undo previous change.
69
70 * Makefile.in (undo.o): Undo previous change.
71
72 * undo.c: Undo previous change.
73
74 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
75
76 * keyboard.h: extern last_point_position_window.
77
78 * undo.c: include keyboard.h.
79
80 * Makefile.in (undo.o): Depend on keyboard.h.
81
82 2005-12-26 Richard M. Stallman <rms@gnu.org>
83
84 * commands.h (last_point_position_window): Declare.
85
86 * undo.c: Depend on window.h.
87 (record_point): Save old point from the correct window.
88
89 * keyboard.c (last_point_position_window): New variable.
90 (command_loop_1): Set last_point_position_window.
91 (syms_of_keyboard): Init it.
92
93 * Makefile.in (undo.o): Depend on window.h.
94
95 2005-12-25 Richard M. Stallman <rms@gnu.org>
96
97 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
98 to undo a `provide'.
99
100 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
101
102 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
103
104 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
105 define for FreeBSD on this platform.
106
107 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
108
109 * macterm.h (TYPE_FILE_NAME): New define.
110 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
111
112 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Add
113 prototypes. Make static.
114 (mac_aedesc_to_lisp): Initialize err to noErr.
115 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
116 (init_coercion_handler): New functions.
117 (Fmac_coerce_ae_data): Use coercion of Apple event data for
118 translation from/to file names.
119
120 * macterm.c: Don't include sys/param.h.
121 (init_coercion_handler): Add extern.
122 [MAC_OS8] (main): Call init_coercion_handler.
123 (mac_initialize) [MAC_OSX]: Likewise.
124 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
125 Apple event data for translation from/to file names.
126
127 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
128
129 * image.c [MAC_OS] (find_image_fsspec): Likewise.
130
131 2005-12-23 Martin Rudalics <rudalics@gmx.at> (tiny change)
132
133 * insdel.c (insert, insert_and_inherit, insert_before_markers)
134 (insert_before_markers_and_inherit): Make sure FROM is correct
135 when `after-change-functions' are called.
136
137 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
138
139 * xfns.c (Fx_uses_old_gtk_dialog): New function.
140
141 * gtkutil.c (xg_uses_old_file_dialog): New function.
142 (xg_get_file_name): Use xg_uses_old_file_dialog.
143
144 * gtkutil.h: Declare xg_uses_old_file_dialog.
145
146 2005-12-22 Richard M. Stallman <rms@gnu.org>
147
148 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
149
150 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
151
152 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
153
154 * macgui.h (XCharStruct): Remove member `valid_p'.
155 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
156 (XCharStructRow): New typedef.
157 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID): New
158 macros.
159 (struct MacFontStruct): Add member `bounds'. Remove member
160 `per_char'. All uses for QuichDraw Text fonts are changed to
161 `bounds.per_char'. ATSUI font bounds are represented as an array
162 `bounds.rows' of XCharStructRow's, each of which consists of a
163 bitmap of valid entries and an array of char bounds.
164
165 * macterm.c (mac_per_char_metric): Add prototype.
166 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
167 (mac_query_char_extents): New function.
168 (x_per_char_metric): Use it.
169 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
170 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Use
171 mac_per_char_metric instead of x_per_char_metric.
172 (mac_text_extents_16): New function.
173 (mac_compute_glyph_string_overhangs): Use it.
174 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
175
176 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
177
178 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
179 (Fminibuffer_completion_help): Remove duplicates before display.
180
181 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
182
183 * print.c (print_preprocess): Don't lose print_depth levels while
184 iterating.
185
186 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
187
188 * macmenu.c (Qmac_apple_event): Add extern.
189 (set_frame_menubar, mac_menu_show keymp_panes)
190 (single_keymap_panes, list_of_panes, list_of_item)
191 (single_menu_item): Add argument types to prototypes.
192 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
193 (struct skp): New struct (from xmenu.c).
194 (single_keymap_panes, single_menu_item, list_of_panes)
195 (list_of_item): Sync with xmenu.c.
196 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
197 POSITION if it is mac-apple-event event.
198 (menubar_selection_callback): Don't use menu_command_in_progress.
199 (set_frame_menubar): First parse all submenus, then make
200 widget_value trees from them. Don't allocate any widget_value
201 objects until we are done with the parsing.
202 (parse_single_submenu, digest_single_submenu): New functions.
203 (single_submenu): Function deleted, replaced by those two.
204 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
205 create or dispose of EventHandlerUPP. Install hander to all submenus.
206 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
207 instead of ENCODE_SYSTEM.
208 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
209 integer values.
210 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
211 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
212 format menu item string. Don't use NULL for integer value.
213
214 * macterm.h (struct mac_output): Remove unused member
215 menu_command_in_progress.
216
217 2005-12-20 Juri Linkov <juri@jurta.org>
218
219 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
220 position is non-nil, else set it to nil.
221
222 * macmenu.c (Fx_popup_menu): Add `else' to set
223 Vmenu_updating_frame to nil only if position is nil.
224
225 * w32menu.c (Fx_popup_menu): Add `else' to set
226 Vmenu_updating_frame to nil only if position is nil.
227
228 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
229
230 * keyboard.c (make_lispy_event): Drag-and-drop items are now
231 stored in member `args' of struct input_event.
232
233 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
234
235 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
236 stored in member `args' of struct input_event.
237
238 * w32term.c (construct_drag_n_drop): Likewise.
239
240 * macterm.c (mac_do_receive_drag): Likewise.
241 (x_use_underline_position_properties): Undo 2005-07-13 change.
242 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
243 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
244 (mac_pass_command_to_system, mac_pass_control_to_system):
245 New boolean variables renamed from Lisp_Object ones
246 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
247 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
248 All uses changed.
249 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
250 Make them user options.
251 (mac_handle_command_event, mac_store_services_event):
252 Call create_apple_event_from_event_ref without 5th argument.
253 (backtranslate_modified_keycode): Mask off modifier keys that are
254 mapped to some Emacs modifiers before passing it to KeyTranslate.
255 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
256 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
257 Fix docstrings of `mac-*-modifier'.
258
259 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
260 (do_applescript): Change argument types to Lisp_Object.
261 All uses changed.
262
263 * macterm.h (create_apple_event_from_event_ref): Remove 5th
264 argument from extern.
265
266 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
267
268 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
269 the answer, return `lambda', not nil.
270
271 2005-12-17 Eli Zaretskii <eliz@gnu.org>
272
273 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
274 enclosed in $(ARGQUOTE)s should not be split between two lines, as
275 that will break with GNU Make >3.80, when sh.exe is used and
276 arg quoting is with '..'.
277
278 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
279
280 * print.c (print_preprocess): Just signal an error if print_depth
281 is exceeded.
282
283 2005-12-17 Eli Zaretskii <eliz@gnu.org>
284
285 * .gdbinit: Set a breakpoint on w32_abort.
286
287 2005-12-16 Juri Linkov <juri@jurta.org>
288
289 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
290 created from minibuffer_completion_contents.
291 (minibuffer_completion_contents): Remove.
292 (do_completion, Fminibuffer_complete_word)
293 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
294 with Fminibuffer_completion_contents.
295 (syms_of_minibuf): Add Sminibuffer_completion_contents.
296 (Fdisplay_completion_list): Doc fix.
297 (display_completion_list_1): Use `nil' for second arg of
298 `Fdisplay_completion_list'.
299
300 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
301
302 * xfns.c (compute_tip_xy): Handle negative dx and dy.
303
304 * w32fns.c (compute_tip_xy): Ditto.
305
306 * macfns.c (compute_tip_xy): Ditto.
307
308 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
309
310 * print.c (print_preprocess): Go to a deeper print_depth to avoid
311 print_object loop.
312
313 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
314
315 * coding.c (code_convert_region_unwind): GCPRO arg.
316
317 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
318
319 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
320 i.e. dy is offset from top of frame instead of bottom.
321
322 * macfns.c (compute_tip_xy): Ditto.
323
324 * w32fns.c (compute_tip_xy): Ditto.
325
326 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
327 (xg_get_image_for_pixmap, xg_create_frame_widgets)
328 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
329
330 * xmenu.c (menubar_selection_callback): Do nothing if the callback
331 is for an unselected radio menu item.
332
333 2005-12-11 Richard M. Stallman <rms@gnu.org>
334
335 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
336
337 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
338
339 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
340 (Flookup_key): Doc fix.
341 (syms_of_keymap) <function-key-map>: Doc fix.
342
343 * fns.c (Frequire): Treat evaluating from a source file
344 like loading the file.
345
346 * floatfns.c (Flog): Doc fix.
347
348 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
349 when we change the buffer.
350
351 2005-12-11 Juri Linkov <juri@jurta.org>
352
353 * minibuf.c (display_completion_list_1):
354 Call `minibuffer_completion_contents' instead of using `nil' as
355 second arg of `Fdisplay_completion_list'.
356 (keys_of_minibuf): Unbind SPC in
357 Vminibuffer_local_filename_completion_map (see also related
358 change on 2005-12-06).
359
360 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
361
362 * emacs.c (main) [MAC_OS8]: Undo previous change.
363
364 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
365 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
366
367 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
368
369 * Makefile.in (macselect.o): Depend on keymap.h.
370
371 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
372 syms_of_macselect.
373
374 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
375 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
376
377 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
378 (syms_of_keyboard) [MAC_OS]: Initialize it.
379 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
380
381 * mac.c (Qundecoded_file_name): New variable.
382 (syms_of_mac): Initialize it.
383 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
384 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
385 (Fmac_coerce_ae_data): New defun.
386 (syms_of_mac): Defsubr it.
387
388 * macselect.c: Include keymap.h.
389 (mac_ready_for_apple_events): New variable.
390 (Vmac_apple_event_map, Qmac_apple_event_class)
391 (Qmac_apple_event_id): New variables.
392 (syms_of_macselect): Initialize them.
393 (Qundefined, mac_store_apple_event): Add externs.
394 (struct apple_event_binding): New struct.
395 (find_event_binding_fun, find_event_binding)
396 (mac_find_apple_event_spec, defer_apple_events)
397 (mac_handle_apple_event, init_apple_event_handler)
398 (copy_scrap_flavor_data): New functions.
399 (Fmac_process_deferred_apple_events): New defun.
400 (syms_of_macselect): Defsubr it.
401 (mac_store_services_event): Fix extern.
402 (mac_handle_service_event): Don't allocate Lisp objects during
403 asynchronous input processing. Use mac_store_services_event
404 instead of mac_store_application_menu_event.
405
406 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
407 (Qpreferences): Remove variables.
408 (syms_of_macterm) : Don't initialize them.
409 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
410 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
411 (init_required_apple_events, do_ae_open_application)
412 (do_ae_print_documents, do_ae_open_documents)
413 (do_ae_quit_application): Remove functions and prototypes.
414 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
415 (mac_find_apple_event_spec): Add externs.
416 (mac_store_application_menu_event): Remove function.
417 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
418 (mac_handle_command_event): Create Apple event from Carbon event.
419 Use mac_store_apple_event instead of mac_store_application_menu_event.
420 [MAC_OSX] (mac_store_services_event): Likewise.
421 (struct SelectionRange, SelectionRange): Remove struct and typedef.
422 [MAC_OS8] (main): Call init_apple_event_handler instead of
423 init_required_apple_events.
424 (mac_initialize) [MAC_OSX]: Likewise.
425 [!USE_CARBON_EVENTS] (mac_wait_next_event): Use
426 mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
427
428 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp): Add
429 externs.
430 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
431 (Fmac_get_preference): Add EXFUN.
432
433 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
434 event.
435
436 2005-12-09 Richard M. Stallman <rms@gnu.org>
437
438 * xfns.c (Fx_create_frame): Reinstate previous change.
439
440 2005-12-09 Eli Zaretskii <eliz@gnu.org>
441
442 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
443 GDB to the abort dialog.
444
445 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
446
447 * indent.c (Fvertical_motion): Force move if starting on
448 stretch glyph.
449
450 2005-12-08 Richard M. Stallman <rms@gnu.org>
451
452 * lread.c (read_escape) <\s>: Don't treat strings specially.
453
454 * xfns.c (Fx_create_frame): Comment out previous change.
455
456 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
457
458 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
459 when needed.
460
461 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
462
463 * minibuf.c (keys_of_minibuf): Just unbind SPC in
464 Vminibuffer_local_filename_completion_map rather than forcing it
465 explicitly to the same binding as the global map.
466
467 2005-12-06 Ken Raeburn <raeburn@gnu.org>
468
469 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP
470 argument.
471 * bytecode.c (Fbyte_code): Likewise.
472 * fileio.c (internal_delete_file, Fread_file_name_internal):
473 Likewise.
474 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
475 * undo.c (truncate_undo_list): Likewise.
476
477 2005-12-05 Richard M. Stallman <rms@gnu.org>
478
479 * window.c (enlarge_window): Eliminate arg preserve_before.
480 Assume it is 0. All callers changed.
481 (Fenlarge_window, Fshrink_window): Likewise.
482
483 2005-12-02 Eli Zaretskii <eliz@gnu.org>
484
485 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
486 fit below.
487
488 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
489
490 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
491
492 * xfns.c (x_real_positions): int ign => unsigned int.
493 (xg_set_icon_from_xpm_data): Remove unused variable err.
494 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
495 to remove compiler warning.
496 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
497
498 2005-12-02 David Reitter <david.reitter@gmail.com>
499
500 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
501 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
502 and Vminibuffer_local_must_match_filename_map keymaps.
503 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
504
505 * keymap.c (Vminibuffer_local_filename_completion_map)
506 (Vminibuffer_local_must_match_filename_map): New variables.
507 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
508 parent to be Vminibuffer_local_completion_map and
509 Vminibuffer_local_must_match_map, respectively.
510
511 * commands.h (Vminibuffer_local_filename_completion_map)
512 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
513
514 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
515
516 * window.c (Fset_window_configuration): Don't accidentally copy the
517 window-point of one window to another.
518
519 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
520
521 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
522
523 2005-11-30 Kim F. Storm <storm@cua.dk>
524
525 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
526 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
527 passing it to `emacs_write'.
528
529 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
530
531 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
532
533 2005-11-27 Richard M. Stallman <rms@gnu.org>
534
535 * window.c (adjust_window_trailing_edge): New function.
536 (Fadjust_window_trailing_edge): New function.
537 (syms_of_window): Defsubr it.
538 (window_deletion_count): New variable.
539 (delete_window): Update window_deletion_count.
540
541 2005-11-26 Eli Zaretskii <eliz@gnu.org>
542
543 * minibuf.c (syms_of_minibuf): Mention the extension of
544 `completion-auto-help's meaning by complete.el.
545
546 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
547
548 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
549 Handle :inherit property as a lisp expression.
550
551 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
552
553 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
554 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
555 Qsuper, and Qmodifier_value.
556 (Vmac_control_modifier, Vmac_option_modifier)
557 (Vmac_command_modifier, Vmac_function_modifier)
558 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
559 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
560 (Vmac_charset_info_alist): Doc fixes.
561
562 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
563
564 * emacs.c (main) [MAC_OSX]: Change working directory to home
565 directory if `-psn_*' option is specified.
566
567 * mac.c (DECODE_UTF_8): Remove macro.
568 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
569 created from cfstring_to_lisp.
570 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
571 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
572
573 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
574 Add prototype.
575
576 2005-11-21 Ken Raeburn <raeburn@gnu.org>
577
578 * keymap.c (shadow_lookup): Use make_number to pass a number to
579 Fsubstring.
580
581 2005-11-21 Juri Linkov <juri@jurta.org>
582
583 * puresize.h (BASE_PURESIZE): Increment to 1180000.
584
585 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
586
587 * xfaces.c (Finternal_set_lisp_face_attribute):
588 Use :ignore-defface for new frame defaults when `unspecified' is
589 supplied.
590 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
591 (merge_face_vectors): Don't do :ignore-defface overwriting here.
592 (Finternal_merge_in_global_face): Do it here.
593
594 2005-11-20 Juri Linkov <juri@jurta.org>
595
596 * charset.c (invalid_character): Use Lisp-readable syntax
597 for octal and hex. Reorder decimal, octal and hex values.
598
599 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
600
601 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
602 this type is recognised when debugging.
603
604 2005-11-19 Andreas Schwab <schwab@suse.de>
605
606 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
607 Lisp_Cons and Lisp_Float.
608
609 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
610
611 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
612 New variable.
613 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
614 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
615 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
616 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
617
618 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
619
620 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
621
622 * xfaces.c (Qignore_defface): New variable.
623 (syms_of_xfaces): Provide `:ignore-defface'.
624 (IGNORE_DEFFACE_P): New macro.
625 (check_lface_attrs, lface_fully_specified_p)
626 (Finternal_set_lisp_face_attribute)
627 (Fface_attribute_relative_p, Fmerge_face_attribute):
628 Handle Qignore_defface as a possible value.
629 (merge_face_vectors): The merged face is `unspecified' if the
630 mergee specifies `:ignore-defface'.
631
632 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
633
634 * lread.c (readevalloop): Add missing GCPROs.
635
636 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
637
638 * xfns.c (xg_set_icon_from_xpm_data): New function.
639
640 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
641 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
642
643 * xterm.c (x_bitmap_icon): Use the xpm if available.
644
645 * image.c (x_create_bitmap_from_xpm_data): New function.
646 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
647
648 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
649
650 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
651
652 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
653
654 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
655
656 2005-11-15 Andreas Schwab <schwab@suse.de>
657
658 * lisp.h (struct Lisp_Cons): Make cdr a union.
659 (XCDR_AS_LVALUE): Adjust.
660 (struct Lisp_Float): Make data a union.
661 (XFLOAT_DATA): Adjust.
662
663 * alloc.c (free_float): Make free list chaining aliasing-safe.
664 (make_float): Likewise.
665 (free_cons): Likewise.
666 (Fcons): Likewise.
667 (check_cons_list): Likewise.
668 (Fmake_symbol): Likewise.
669 (allocate_misc): Likewise.
670 (free_misc): Likewise.
671 (gc_sweep): Likewise.
672
673 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
674
675 * mac.c (HASHKEY_QUERY_CACHE): New define.
676 (xrm_create_database, xrm_q_put_resource): Empty query cache.
677 (xrm_get_resource): Use query cache.
678
679 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
680 inhibit_window_system is set.
681
682 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
683
684 * macgui.h (USE_CG_TEXT_DRAWING): New define.
685 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
686 and cg_glyphs.
687
688 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
689 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
690 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
691 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
692 not used and font substitution never occurs for ASCII and Latin-1
693 characters.
694 (XLoadQueryFont): Maximum and minimum metrics are now those among
695 ASCII characters.
696 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
697 height adjustments for Courier, Helvetica, and Times.
698
699 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
700
701 2005-11-11 David Reitter <david.reitter@gmail.com>
702
703 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
704 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
705 Vmac_control_modifier / mac-control-modifier,
706 Vmac_option_modifier / mac-option-modifier,
707 Vmac_command_modifier / mac-command-modifier.
708 (mac_to_emacs_modifiers): Use the new style modifier
709 variables. Return UInt32 (modifiers are longs now.)
710 (backtranslate_modified_keycode): New function (refactoring).
711 (XTread_socket): Use new modifier variables and refactored function.
712 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
713 no dedicated meta key. Not in use anyway.)
714 (convert_fn_keycode): Map Fn-keys to their original keycode
715 using a table (english keyboard only).
716
717 2005-11-11 Kim F. Storm <storm@cua.dk>
718
719 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
720 Add post hook to "backtrace" to always dump lisp call stack to
721 increase chance of people sending it to us when reporting bugs.
722
723 * doc.c (Fsubstitute_command_keys): Doc fix.
724
725 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
726
727 * xdisp.c (handle_stop): Skip overlay string handling if
728 ignore_overlay_strings_at_pos_p is set.
729 (set_iterator_to_next): At end of display vector, set
730 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
731 string, so we skip those overlay strings at current pos.
732
733 2005-11-10 Lars Hansen <larsh@soem.dk>
734
735 * fileio.c (file-regular-p): Doc fix.
736
737 2005-11-10 Kim F. Storm <storm@cua.dk>
738
739 * alloc.c (valid_lisp_object_p): New function to validate that
740 an object is really a valid Lisp_Object.
741
742 * lisp.h (valid_lisp_object_p): Add prototype.
743
744 * print.c (safe_debug_print): New function to be called from gdb
745 to print Lisp objects; use valid_lisp_object_p to avoid crashing
746 if user tries to print something which is not a Lisp object.
747
748 * .gdbinit (pp, pp1): Use safe_debug_print.
749 (pv, pv1): New commands to print value of a lisp variable.
750
751 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
752
753 * .gdbinit (pp1): New user-defined function.
754
755 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
756
757 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
758
759 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
760 related variables for dumped executable.
761
762 * unexmacosx.c (unexec_write_zero): New function.
763 (copy_data_segment): Clear uninitialized local variables in
764 statically linked libraries.
765
766 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
767
768 2005-11-09 Juri Linkov <juri@jurta.org>
769
770 * keymap.c (shadow_lookup): If Flookup_key returns a number,
771 call it again with a sub-key-sequence, and if its return value
772 is non-nil (sub-key is bound), return nil.
773
774 2005-11-08 Kim F. Storm <storm@cua.dk>
775
776 * process.c (Fsignal_process): Recognize signal names with and
777 without SIG prefix, e.g. SIGHUP and HUP.
778
779 * search.c (search_buffer): No need to initialize base_pat.
780
781 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
782
783 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
784 Don't abuse the `mini' arg. Use the `obj' arg instead.
785
786 2005-11-04 Kim F. Storm <storm@cua.dk>
787
788 * xdisp.c (show_mouse_face): Clear mouse face to eol.
789
790 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
791
792 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
793 font-lock.elc and jit-lock.elc.
794
795 2005-11-03 Richard M. Stallman <rms@gnu.org>
796
797 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
798 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
799 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
800
801 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
802
803 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
804
805 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
806
807 * window.c (Fdisplay_buffer): Fix last change to not use
808 a dedicated window.
809
810 2005-11-01 Kim F. Storm <storm@cua.dk>
811
812 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
813 Instead, rotate the bottom angle bitmap 180 degrees to indicate
814 that the bottom row does not end in a newline.
815
816 2005-11-01 Andreas Schwab <schwab@suse.de>
817
818 * unexelf.c (unexec): Handle .plt section in BSS segment.
819
820 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
821
822 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
823
824 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
825 determine whether to consider dedicated windows as well.
826 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
827 (Fdisplay_buffer): Do consider dedicated windows in those cases where
828 we will split the window rather than reuse it.
829 Don't try to use windows on other displays.
830
831 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
832
833 * puresize.h (BASE_PURESIZE): Increment to 1170000.
834
835 2005-10-31 Romain Francoise <romain@orebokech.com>
836
837 * macfns.c: Update copyright year.
838 * m/gould.h: Likewise.
839
840 2005-10-30 Kim F. Storm <storm@cua.dk>
841
842 * xdisp.c (display_line): Restore it->current_x and call
843 extend_face_to_end_of_line when last glyph doesn't fit on line.
844 (set_glyph_string_background_width): Remove specific tests here
845 to see if face background should extend to end of line. Simplify.
846
847 2005-10-30 Richard M. Stallman <rms@gnu.org>
848
849 * alloc.c (BYTES_USED): Use uordblks, not arena.
850 (bytes_used_when_reconsidered): New variable.
851 (emacs_blocked_free): Set that.
852
853 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
854
855 * alloc.c (emacs_blocked_free): Fix typo.
856
857 2005-10-29 Richard M. Stallman <rms@gnu.org>
858
859 * data.c (Fmake_variable_frame_local): Doc fix.
860
861 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
862 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
863 controls whether to save and restore mode_line_proptrans_alist.
864 Callers changed.
865 (unwind_format_mode_line): Work with that feature.
866 (redisplay_internal): Don't call prepare_menu_bars if memory full.
867 (move_elt_to_front): New function.
868 (display_mode_element): Use move_elt_to_front.
869 Don't bother munging text props on a null string.
870 Delete obsolete elts from mode_line_proptrans_alist.
871 (decode_mode_spec): Test Vmemory_full, not spare_memory.
872 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
873
874 * lisp.h (memory_full_cons_threshold): Declare.
875 (internal_lisp_condition_case): Declare.
876
877 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
878 (Fmemory_full_p): Function deleted.
879 (syms_of_alloc): Don't defsubr it.
880 (memory_full_cons_threshold): New variable.
881 (spare_memory): Now a vector of 7 elts.
882 (buffer_memory_full): Don't set Vmemory_full here.
883 (xfree): Don't try to refill here.
884 (emacs_blocked_free): Record BYTES_USED in local var.
885 (memory_full): Now free all the slots in spare_memory.
886 (refill_memory_reserve): Allocate each slot in spare_memory.
887 (init_alloc_once): Call refill_memory_reserve.
888
889 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
890
891 * eval.c (internal_lisp_condition_case): New function.
892 (Fcondition_case): Use internal_lisp_condition_case.
893 (Feval): Test Vmemory_full and memory_full_cons_threshold.
894 (Ffuncall): Likewise.
895
896 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
897
898 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
899
900 * syntax.c (Fparse_partial_sexp): Fix docstring.
901
902 2005-10-28 Romain Francoise <romain@orebokech.com>
903
904 * puresize.h (BASE_PURESIZE): Increment to 1130000.
905
906 2005-10-28 Richard M. Stallman <rms@gnu.org>
907
908 * xfns.c (syms_of_xfns): Provide `x' as feature.
909
910 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
911
912 * editfns.c (Fformat): Don't include string padding
913 between info[n].start and info[n].end.
914
915 * alloc.c (spare_memory): No longer static.
916 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
917
918 * puresize.h (BASE_PURESIZE): Increment to 1120000.
919
920 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
921
922 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
923
924 * fringe.c (update_window_fringes): Handle case where buffer ends
925 with a newline.
926
927 2005-10-27 Kenichi Handa <handa@m17n.org>
928
929 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
930
931 2005-10-24 Kenichi Handa <handa@m17n.org>
932
933 * charset.h (charset_mule_unicode_0100_24ff)
934 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
935 Extern them.
936
937 * charset.c (charset_mule_unicode_0100_24ff)
938 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
939 New variables.
940 (Fsetup_special_charsets): Initialize them.
941
942 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
943 supported Unicode characters.
944
945 2005-10-25 Jason Rumney <jasonr@gnu.org>
946
947 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
948
949 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
950
951 * image.c [MAC_OS] (image_load_qt_1): Check image size.
952 Use GraphicsImportGetImageDescription instead of
953 GraphicsImportGetNaturalBounds.
954 [MAC_OSX] (image_load_quartz2d): Check image size.
955 [MAC_OS] (xpm_load_image): Likewise.
956
957 * macterm.c (last_mouse_glyph_frame): New var.
958 (note_mouse_movement): Say mouse moved if current frame differs
959 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
960 (XTmouse_position): Set last_mouse_glyph_frame.
961 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
962 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
963 Use EndianU16_BtoN.
964 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
965 (x_per_char_metric, XLoadQueryFont)
966 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
967 glyph bounds.
968 (mac_to_x_fontname, mac_do_list_fonts)
969 (mac_initialize_display_info): Change screen resolutions to 72dpi.
970
971 2005-10-25 Masatake YAMATO <jet@gyve.org>
972
973 * minibuf.c (Fdisplay_completion_list): Small doc fix.
974
975 2005-10-24 Kim F. Storm <storm@cua.dk>
976
977 * xterm.c: Undo 2005-10-23 change.
978 (last_mouse_glyph_frame): New var.
979 (note_mouse_movement): Say mouse moved if current frame differs
980 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
981 (XTmouse_position): Set last_mouse_glyph_frame.
982 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
983 last_mouse_glyph] on mouse up/down event.
984
985 * editfns.c (Fcompare_buffer_substrings): Fix last change.
986
987 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
988
989 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
990
991 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
992
993 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
994 so tool tips don't interfere with press on tool bar button.
995
996 2005-10-23 Richard M. Stallman <rms@gnu.org>
997
998 * casetab.c (Fset_case_table): Doc fix.
999
1000 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
1001 (readevalloop): Compute ENTIRE properly.
1002 (syms_of_lread) <load-history>: Doc fix.
1003
1004 2005-10-21 Richard M. Stallman <rms@gnu.org>
1005
1006 * lread.c (Fload): Simplify gcpro structure.
1007 Gcpro FOUND as well as FILE, but not EFOUND.
1008 Unless preloading, record FOUND instead of FILE in Vload_history.
1009 Rename repeat local FILE to MSG_FILE.
1010 (syms_of_lread) <load-history>: Doc fix.
1011
1012 2005-10-21 Kenichi Handa <handa@m17n.org>
1013
1014 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
1015
1016 2005-10-20 Kim F. Storm <storm@cua.dk>
1017
1018 * buffer.c (clone_per_buffer_values): Remove unused var tem.
1019 (init_buffer): Remove unused vars dotstat, pwdstat.
1020
1021 * ccl.c (check_ccl_update): Remove unused var vp.
1022
1023 * fileio.c (auto_save_error): Call SAFE_FREE.
1024
1025 * fns.c (Fchar_table_range): Remove unused var i.
1026
1027 * minibuf.c (display_completion_list_1): New wrapper function
1028 for Fdisplay_completion_list.
1029 (Fminibuffer_completion_help): Use it.
1030
1031 * term.c (encode_terminal_code): Remove unused var src_start.
1032
1033 * window.c (Fwindow_tree): Remove unused var alist.
1034
1035 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
1036
1037 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
1038
1039 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
1040
1041 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
1042
1043 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
1044
1045 2005-10-20 Andreas Schwab <schwab@suse.de>
1046
1047 * minibuf.c (Fdisplay_completion_list): Doc fix.
1048
1049 2005-10-19 Kim F. Storm <storm@cua.dk>
1050
1051 * image.c (check_image_size): Handle integer Vmax_image_size value
1052 directly as max pixel value. Use default frame size for null frame.
1053 (syms_of_image) <max-image-size>: Describe integer value.
1054
1055 2005-10-19 Romain Francoise <romain@orebokech.com>
1056
1057 * emacs.c (main): Update copyright year.
1058
1059 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
1060
1061 * image.c (Vmax_image_size): New variable.
1062 (check_image_size): New function.
1063 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
1064 (gif_load, gs_load): Use it.
1065 (lookup_image): Try loading again if previous load failed.
1066 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
1067 to display in, NULL if none.
1068 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
1069 argument.
1070
1071 2005-10-18 Richard M. Stallman <rms@gnu.org>
1072
1073 * search.c (Fstring_match): Doc fix.
1074
1075 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1076
1077 * macterm.c (note_mouse_movement): Use PtInRect.
1078 (XTread_socket): Also ignore mouse motion just before a button
1079 release event. Don't process button release event when mouse is
1080 not grabbed.
1081
1082 2005-10-16 Masatake YAMATO <jet@gyve.org>
1083
1084 * minibuf.c (Fdisplay_completion_list): Add new optional
1085 argument COMMON_SUBSTRING. Bind `completion-common-substring'
1086 to the optional argument during running `completion-setup-hook'.
1087
1088 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1089
1090 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
1091 Allow nil as argument.
1092 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
1093 for encoding arguments as UTF-16 in native byte order, no BOM.
1094
1095 * macfns.c (Fx_create_frame): Add debugging code.
1096 (Fx_show_tip): Set frame pixel width and height.
1097
1098 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
1099 (FRAME_NORMAL_GC): New macro.
1100 (mac_draw_line, mac_clear_area, mac_clear_window)
1101 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
1102 (mac_draw_image_string, mac_draw_image_string_16): Rename from
1103 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
1104 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
1105 All uses changed.
1106 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
1107 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
1108 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
1109 (mac_draw_string_16, mac_draw_image_string)
1110 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
1111 (mac_scroll_area): Drawing functions now take frame as destination.
1112 All uses changed.
1113 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
1114 (x_draw_fringe_bitmap): Set clipping area in face->gc.
1115
1116 * macterm.h (mac_clear_area): Add extern.
1117
1118 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1119
1120 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
1121 changes for xterm.c.
1122
1123 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
1124
1125 2005-10-14 Kenichi Handa <handa@m17n.org>
1126
1127 * search.c (search_buffer): Give up BM search on case-fold-search
1128 if one of a target character has a case-equivalence of different
1129 charset even if that target charcter is an ASCII.
1130
1131 * casefiddle.c (casify_object): Fix for the case that case
1132 conversion change the byte length.
1133
1134 2005-10-14 Kim F. Storm <storm@cua.dk>
1135
1136 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
1137 (handle_one_xevent): Only clear help_echo_string; restore it if
1138 note_mouse_movement didn't record any mouse movement.
1139
1140 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
1141 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
1142
1143 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
1144 (Fposn_at_x_y): Fix calculation of x coordinate.
1145 (Fposn_at_point): Return nil if point is hscrolled out of view.
1146
1147 2005-10-13 Andreas Schwab <schwab@suse.de>
1148
1149 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
1150 non-interactive mode.
1151
1152 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1153
1154 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
1155
1156 2005-10-12 Kim F. Storm <storm@cua.dk>
1157
1158 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
1159
1160 2005-10-12 Romain Francoise <romain@orebokech.com>
1161
1162 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
1163
1164 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1165
1166 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
1167 get end of text rows. Obtain header-line/mode-line rows directly.
1168
1169 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
1170 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
1171
1172 2005-10-12 Kim F. Storm <storm@cua.dk>
1173
1174 * xdisp.c (remember_mouse_glyph): New generic version based on
1175 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
1176 properly handle all different window areas.
1177
1178 * dispextern.h (remember_mouse_glyph): Add prototype.
1179
1180 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
1181 (note_mouse_movement, XTmouse_position): Use generic
1182 remember_mouse_glyph, add last_mouse_glyph arg.
1183
1184 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
1185 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
1186 (note_mouse_movement, w32_mouse_position): Use generic
1187 remember_mouse_glyph, add last_mouse_glyph arg.
1188
1189 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
1190 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
1191 (XTmouse_position): Adapt to use generic remember_mouse_glyph
1192 instead of pixel_to_glyph_coords.
1193
1194 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
1195 Fix x position for ON_TEXT when left margin width > 0.
1196
1197 2005-10-11 Kim F. Storm <storm@cua.dk>
1198
1199 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
1200
1201 * keyboard.c (make_lispy_position): Fix buffer calculations for
1202 mouse click or movement in right fringe and the margins.
1203
1204 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
1205
1206 * image.c (fn_jpeg_stdio_src): Don't define it.
1207 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
1208 (our_common_init_source): Rename from `our_init_source'.
1209 (our_common_term_source): Rename from `our_term_source'.
1210 (our_memory_fill_input_buffer): Rename from
1211 `our_fill_input_buffer'.
1212 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
1213 (jpeg_memory_src): Use the new names.
1214 (struct jpeg_stdio_mgr): New struct.
1215 (JPEG_STDIO_BUFFER_SIZE): New constant.
1216 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
1217 (jpeg_file_src): New functions.
1218 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
1219
1220 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1221
1222 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
1223 (fm_font_family_alist): New variable.
1224 (syms_of_macterm): Initialize and staticpro it.
1225 (decode_mac_font_name): Replace '-' in family name with '_' if it
1226 occurs just once. Lower family name.
1227 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
1228 All uses changed. Remove argument MF and code conversion for it.
1229 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
1230 to CHARSET. Parse font size. Lower family name. Return integer
1231 value for status of parsing.
1232 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
1233 Don't use Fdowncase because family name is already lowered by
1234 decode_mac_font_name.
1235 (init_font_name_table): Always call decode_mac_font_name.
1236 Add pair of family name and its reference to fm_font_family_alist.
1237 (mac_clear_font_name_table): Clear fm_font_family_alist.
1238 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
1239 Lookup fm_font_family_alist to get font family reference.
1240 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
1241 name is already lowered by parse_x_font_name.
1242
1243 2005-10-11 Kim F. Storm <storm@cua.dk>
1244
1245 * xterm.c (glyph_rect): Return 0 if position is outside text area.
1246
1247 * keyboard.c (make_lispy_position): Fix buffer position calculation for
1248 mouse click or movement in fringe.
1249
1250 2005-10-10 Jason Rumney <jasonr@gnu.org>
1251
1252 * xterm.c (remember_mouse_glyph): New function.
1253 (note_mouse_movement): Use it to remember the current glyph if changed.
1254 (XTmouse_position): Fix calculation of fake glyph under mouse.
1255 Move code to calculate glyph under mouse into remember_mouse_glyph.
1256
1257 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1258
1259 * emacs.c (USAGE3, standard_args): -nb => -nbi.
1260
1261 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
1262
1263 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
1264 (next_frame, prev_frame, set_term_frame_name): Make static.
1265
1266 * window.c (Fwindow_tree): Fix spelling.
1267
1268 2005-10-09 Romain Francoise <romain@orebokech.com>
1269
1270 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
1271
1272 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1273
1274 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
1275 Add options -nb, --no-bitmap-icon.
1276
1277 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
1278
1279 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1280
1281 * macgui.h (MAX_CLIP_RECTS): New define.
1282 (struct _XGC): New member clip_region.
1283 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
1284 clip_rects.
1285
1286 * macterm.c (GC_CLIP_REGION): New macro.
1287 (saved_port_clip_region): New variable.
1288 (mac_begin_clip, mac_end_clip): New functions.
1289 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
1290 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
1291 (mac_copy_area_with_mask, mac_scroll_area): Use them.
1292 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
1293 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1294 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
1295 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
1296 rectangles stored in gc.
1297 (XFreeGC): Dispose of clipping region.
1298 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
1299 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
1300 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
1301 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
1302 (x_draw_bar_cursor): Use them.
1303 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
1304 get multiple clipping rectangles.
1305
1306 * macterm.h (mac_term_init): Add types to extern.
1307 (struct mac_output): Remove members mWP and pending_menu_activation.
1308 Put members scroll_bar_foreground_pixel and
1309 scroll_bar_background_pixel in #if 0.
1310 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
1311
1312 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
1313 Add debugging code.
1314
1315 2005-10-08 Kim F. Storm <storm@cua.dk>
1316
1317 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
1318
1319 2005-10-07 Kim F. Storm <storm@cua.dk>
1320
1321 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
1322 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
1323 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
1324
1325 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1326
1327 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
1328 to for_overlaps. Now occupy 3 bits.
1329 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
1330 (OVERLAPS_ERASED_CURSOR): New defines.
1331 (struct redisplay_interface): Add new OVERLAPS arg to member
1332 fix_overlapping_area.
1333 (x_fix_overlapping_area): Add new OVERLAPS arg.
1334 (get_glyph_string_clip_rects): Add extern.
1335
1336 * dispnew.c (redraw_overlapping_rows):
1337 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
1338
1339 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
1340 for_overlaps.
1341 (get_glyph_string_clip_rects): New function created from
1342 get_glyph_string_clip_rect. Set clipping rectangles according to the
1343 value of for_overlaps. Enable to store multiple clipping rectangles.
1344 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
1345 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
1346 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
1347 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
1348 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
1349 calculating clipping rectangles later. Call x_fix_overlapping_area
1350 with new OVERLAPS arg to draw only erased cursor area.
1351 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
1352 to draw overlaps in both preceding and succeeding rows.
1353
1354 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
1355 struct glyph_string to for_overlaps.
1356
1357 2005-10-04 Richard M. Stallman <rms@gnu.org>
1358
1359 * alloc.c (refill_memory_reserve): Conditionalize the body,
1360 not the function's existence.
1361
1362 2005-10-04 Kim F. Storm <storm@cua.dk>
1363
1364 * window.c (window_split_tree): New function.
1365 (Fwindow_split_tree): New defun.
1366 (syms_of_window): Defsubr it.
1367
1368 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1369
1370 * macterm.c (mac_invert_rectangle): New function.
1371 (XTflash): Use it.
1372
1373 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
1374
1375 * regex.h (re_char): Don't expose it in the interface.
1376 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
1377
1378 * regex.c (re_char): Move it back here.
1379 (re_set_whitespace_regexp): Change the arg's type to not use it.
1380
1381 * keyboard.c (make_lispy_event): If point has moved between down and up
1382 event, make it a drag, not a click, to mirror what
1383 mouse-drag-region expects.
1384
1385 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
1386
1387 * lisp.h (fatal): Undo previous change.
1388 * term.c (fatal): Undo previous change.
1389
1390 2005-10-01 Richard M. Stallman <rms@gnu.org>
1391
1392 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
1393
1394 2005-10-01 Kim F. Storm <storm@cua.dk>
1395
1396 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
1397
1398 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1399
1400 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
1401
1402 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
1403 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
1404 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
1405 Try ATSUI-compatible 12pt Monaco font first.
1406
1407 * macgui.h (struct _XCharStruct): New member valid_p.
1408 (STORE_XCHARSTRUCT): Set valid_p.
1409 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
1410
1411 * macterm.c (mac_draw_string_common, x_per_char_metric)
1412 (mac_compute_glyph_string_overhangs, init_font_name_table)
1413 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
1414 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
1415 (x_draw_glyph_string_background)
1416 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
1417 XDrawImageString. Always draw background and foreground separately.
1418 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
1419 functions for one-byte chars when using ATSUI-compatible fonts.
1420 (atsu_font_id_hash) [USE_ATSUI]: New variable.
1421 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
1422 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
1423 max_char_or_byte2 more in detail.
1424 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
1425
1426 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
1427
1428 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
1429 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
1430
1431 * unexelf.c (fatal): Fix prototype.
1432
1433 * term.c (fatal): Implement using varargs.
1434
1435 * regex.c (re_char): Move typedef ...
1436 * regex.h (re_char): ... here.
1437 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
1438
1439 * emacs.c (malloc_set_state): Fix return type.
1440 (endif): Fix type.
1441
1442 * lisp.h (fatal): Add argument types.
1443
1444 * dispextern.h (fatal): Delete prototype.
1445
1446 * systime.h: (make_time): Prototype moved from ...
1447 * editfns.c (make_time): ... here.
1448
1449 * editfns.c: Move systime.h include after lisp.h.
1450 * dired.c:
1451 * xsmfns.c:
1452 * process.c: Likewise.
1453
1454 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
1455 Add parameter types.
1456 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
1457 (emacs_blocked_free): Change definition to match __free_hook.
1458 (emacs_blocked_malloc): Change definition to match __malloc_hook.
1459 (emacs_blocked_realloc): Change definition to match __realloc_hook.
1460
1461 2005-09-30 Romain Francoise <romain@orebokech.com>
1462
1463 * minibuf.c (Fread_buffer): Follow convention for reading from the
1464 minibuffer with a default value. Doc fix.
1465
1466 2005-09-29 Juri Linkov <juri@jurta.org>
1467
1468 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
1469 Rename argument name `string' to `format-string'.
1470 (Fformat): Doc fix.
1471
1472 2005-09-28 Kim F. Storm <storm@cua.dk>
1473
1474 * image.c (gif_load): Fix size of allocated image buffer
1475 for images where a sub-image may be larger than the image's
1476 total height/width specifications.
1477
1478 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1479
1480 * macgui.h (struct _XCharStruct): Each member now takes short value.
1481
1482 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
1483
1484 * xfaces.c (lookup_derived_face): Add parameter type.
1485
1486 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
1487
1488 * marker.c (verify_bytepos): Add parameter type.
1489
1490 * process.c (get_operating_system_release): Move prototype ...
1491
1492 * systime.h (get_operating_system_release): ... here.
1493
1494 * xterm.c (handle_one_xevent): Refer to union field to match the
1495 type required by the function definition.
1496 (set_vertical_scroll_bar): Move prototype ...
1497
1498 * xterm.h: ... here.
1499
1500 * fns.c (internal_equal, seed_random): Fix prototypes.
1501 (internal_equal): Add missing parameter.
1502
1503 2005-09-25 Richard M. Stallman <rms@gnu.org>
1504
1505 * keyboard.c (update_menu_bindings): Variable deleted.
1506 (syms_of_keyboard): Don't defvar it.
1507 (parse_menu_item): Don't test it.
1508
1509 2005-09-23 Richard M. Stallman <rms@gnu.org>
1510
1511 * editfns.c (Fformat): Explicitly test for end of format string
1512 and don't use `index'.
1513
1514 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
1515
1516 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
1517 Define BROKEN_GET_CURRENT_DIR_NAME.
1518
1519 * sysdep.c (get_current_dir_name): Also define if
1520 BROKEN_GET_CURRENT_DIR_NAME.
1521
1522 * m/ibmrs6000.h: Test for USG5, not USG5_4.
1523
1524 2005-09-22 Kim F. Storm <storm@cua.dk>
1525
1526 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
1527 (message2): Fix commentary. Ok to use alloca'ed memory.
1528 Still not ok to use Lisp string data (because of GC).
1529 (set_message): Add comment why GC cannot happen.
1530
1531 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1532
1533 * macterm.c (xlfdpat_block_match_1): Fix assertion.
1534 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
1535 variants for a scalable font multiple times.
1536
1537 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1538
1539 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
1540 Setup slave tty options before forking.
1541
1542 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1543
1544 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
1545 positions have been set for the frame (as is done for frames in
1546 special-display-buffer-names).
1547
1548 2005-09-19 Kim F. Storm <storm@cua.dk>
1549
1550 * editfns.c (Fformat): Don't scan past end of format string that
1551 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
1552
1553 2005-09-18 Andreas Schwab <schwab@suse.de>
1554
1555 * window.h (struct window): Remove height_fixed_p, no longer set.
1556
1557 * window.c (make_window): Don't initialize height_fixed_p.
1558 (window_fixed_size_p): Don't use it.
1559
1560 2005-09-18 John Paul Wallington <jpw@pobox.com>
1561
1562 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
1563
1564 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1565
1566 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
1567
1568 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
1569 New variables.
1570 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
1571 file selection.
1572
1573 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
1574
1575 2005-09-17 Eli Zaretskii <eliz@gnu.org>
1576
1577 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
1578 (obj): Use XMENU_OBJ, not a literal xmenu.o.
1579
1580 2005-09-16 Romain Francoise <romain@orebokech.com>
1581
1582 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
1583
1584 2005-09-15 Richard M. Stallman <rms@gnu.org>
1585
1586 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
1587 (display_mode_element): Instead of `lisp_string' and `this',
1588 record `offset' and increment that.
1589 `last_offset' replaces `last'.
1590
1591 * Makefile.in (XMENU_OBJ): Variable deleted.
1592 (obj): Use xmenu.o unconditionally.
1593 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
1594
1595 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
1596
1597 2005-09-15 Kim F. Storm <storm@cua.dk>
1598
1599 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
1600 (reseat_at_next_visible_line_start): Likewise (in xassert).
1601
1602 2005-09-14 Romain Francoise <romain@orebokech.com>
1603
1604 * fileio.c (write_region_inhibit_fsync): New variable.
1605 (Fwrite_region): Use it to skip call to fsync.
1606 (syms_of_fileio): Initialize it.
1607
1608 2005-09-14 Kenichi Handa <handa@m17n.org>
1609
1610 * coding.c (code_convert_region_unwind): Argument format changed.
1611 (run_pre_post_conversion_on_str): If pre-write-conversion function
1612 changed the current buffer, delete the new buffer.
1613 (run_pre_write_conversin_on_c_str): Likewise.
1614
1615 * fileio.c (Fexpand_file_name): Check multibyteness of
1616 default_directory.
1617
1618 2005-09-13 Kenichi Handa <handa@m17n.org>
1619
1620 * composite.c (compose_chars_in_text): Delete it.
1621
1622 * composite.h (compose_chars_in_text): Delete extern.
1623
1624 2005-09-13 Kim F. Storm <storm@cua.dk>
1625
1626 * print.c (print_error_message): Fix last change.
1627
1628 2005-09-12 Kim F. Storm <storm@cua.dk>
1629
1630 * composite.c (compose_chars_in_text): Fix setup of `pend'.
1631 Unconditionally reload `ptr' and `pend' after eval.
1632
1633 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
1634
1635 * print.c (print_error_message): Pass copy of caller name to
1636 message_dolog.
1637
1638 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
1639
1640 2005-09-12 Kenichi Handa <handa@m17n.org>
1641
1642 * xdisp.c (display_mode_element): Be sure to make variables THIS
1643 and LISP_STRING point into a string data of ELT.
1644
1645 2005-09-12 Kim F. Storm <storm@cua.dk>
1646
1647 * editfns.c (Ftranslate_region_internal): Reload `tt' after
1648 signal_after_change that may have GC'ed.
1649 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
1650
1651 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
1652 after insert while runs signal_after_change.
1653
1654 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
1655 declaration to where it is used.
1656
1657 * w32.c (check_windows_init_file): Fix allocation of error buffer.
1658
1659 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
1660 (x_set_name_internal): Call x_encode_text with new FREEP arg to
1661 know if xfree is needed instead of guessing.
1662
1663 * xterm.h (x_encode_text): Remove prototype.
1664
1665 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
1666
1667 * w32term.c (x_bitmap_icon): Load small icons too.
1668
1669 2005-09-10 Romain Francoise <romain@orebokech.com>
1670
1671 * buffer.c (init_buffer): Grow buffer to add directory separator
1672 and terminal zero. Fix typos.
1673
1674 2005-09-10 Eli Zaretskii <eliz@gnu.org>
1675
1676 * buffer.c (init_buffer): Fix error message for failed call to
1677 get_current_dir_name.
1678 (get_current_dir_name): Remove prototype.
1679
1680 * xsmfns.c: (get_current_dir_name): Remove prototype.
1681
1682 * lisp.h: (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1683 Add prototype.
1684
1685 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
1686 Don't #undef NULL after including blockinput.h.
1687
1688 * config.in: Regenerated.
1689
1690 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
1691
1692 Remove the MAXPATHLEN limitations:
1693
1694 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
1695 New function.
1696
1697 * buffer.c (init_buffer): Use it.
1698
1699 * xsmfns.c (smc_save_yourself_CB): Ditto.
1700
1701 2005-09-09 Kim F. Storm <storm@cua.dk>
1702
1703 * doc.c (Fsubstitute_command_keys): Lookup key binding for
1704 commands that are remapped from some other command.
1705
1706 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
1707 flag in disabled rows below the window.
1708
1709 * frame.h (struct frame): New member updated_p.
1710
1711 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
1712 member. Remove local `updated' array and associated variables.
1713
1714 2005-09-07 Kim F. Storm <storm@cua.dk>
1715
1716 * xdisp.c (handle_display_prop): Respect overlay window property.
1717
1718 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
1719 Fixes crash reported by YAMAMOTO Mitsuharu.
1720
1721 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1722
1723 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
1724 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
1725 (xlfdpat_block_match_1, xlfdpat_match): New functions.
1726 (xlfdpat_block_match): New macro.
1727 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
1728 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
1729 (add_font_name_table_entry): Increase font_name_table_size more
1730 rapidly.
1731 (mac_c_string_match): Remove function.
1732 (mac_do_list_fonts): Use XLFD pattern match instead of regular
1733 expression match.
1734
1735 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
1736
1737 2005-09-03 Richard M. Stallman <rms@gnu.org>
1738
1739 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
1740 (move_it_in_display_line_to): Stop after last char on line even
1741 on a windowing terminal, if that's the specified stop position.
1742
1743 * fns.c (Fsort): Doc fix.
1744
1745 * editfns.c (Fpropertize): Don't insist that properties be symbols.
1746
1747 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
1748
1749 * dired.c (directory_files_internal_unwind, directory_files_internal)
1750 (file_name_completion): Use a Save_Value object rather than a cons of
1751 two 16bit ints to store the DIR*.
1752 (directory_files_internal, file_name_completion): Handle both EINTR and
1753 EAGAIN consistently after `readdir'.
1754
1755 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
1756
1757 * intervals.c (update_interval): Add position info in error.
1758
1759 * dispnew.c (window_to_frame_hpos, update_window):
1760 Avoid gcc warning about unused variable `f'.
1761
1762 2005-08-31 Jason Rumney <jasonr@gnu.org>
1763
1764 * w32menu.c (add_menu_item): If unicode_append_menu returns an
1765 error, revert to using AppendMenu.
1766
1767 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1768
1769 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
1770 All uses changed.
1771 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
1772 cases.
1773 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
1774 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
1775 Use posix_pathname_to_fsspec.
1776 [MAC_OS] (xpm_load_image): Fill in background_transparent field
1777 while we have mask.
1778
1779 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
1780
1781 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
1782
1783 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
1784
1785 * syntax.c (update_syntax_table): Properly reproduce the special +1
1786 setting of e_property at the end of the buffer when bumping into the
1787 INTERVALS_AT_ONCE limit.
1788
1789 2005-08-27 Eli Zaretskii <eliz@gnu.org>
1790
1791 * emacs.c (USAGE1): Fix the description of the -Q option.
1792
1793 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
1794
1795 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
1796
1797 2005-08-26 Kim F. Storm <storm@cua.dk>
1798
1799 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
1800 Don't move PT to new window start.
1801
1802 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1803
1804 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
1805 ICONIFY/DEICONIFY_EVENT.
1806
1807 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
1808 Restore background color.
1809 (mac_handle_visibility_change): New function.
1810 (x_make_frame_invisible, x_iconify_frame)
1811 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
1812 [USE_CARBON_EVENTS] (mac_handle_window_event)
1813 (install_window_handler): Handle visibility change events.
1814 (x_make_frame_visible): Don't reposition window if it is iconified
1815 or asked for visible before. Select and uncollapse window when it
1816 is made visible.
1817 (x_make_frame_invisible): Don't reset x_highlight_frame.
1818 (x_iconify_frame): Likewise. Make invisible frame visible before
1819 it is iconified.
1820 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
1821 (do_window_update): Don't change visibility of invisible frame.
1822
1823 2005-08-22 Juri Linkov <juri@jurta.org>
1824
1825 * term.c (turn_on_face): Check for TS_set_foreground and
1826 TS_set_background depending on standout_mode. Simplify.
1827
1828 2005-08-21 Kim F. Storm <storm@cua.dk>
1829
1830 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
1831 bitmaps on fully visible rows.
1832
1833 * fringe.c (update_window_fringes): Replace FORCE_P arg with
1834 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
1835 and return 0.
1836
1837 * xdisp.c (redisplay_window): Call update_window_fringes with
1838 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
1839
1840 2005-08-20 Richard M. Stallman <rms@gnu.org>
1841
1842 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
1843 (resize_mini_window): Set w->start, and PT, so as to display the tail
1844 end of the buffer, if it doesn't all fit.
1845
1846 2005-08-18 Kim F. Storm <storm@cua.dk>
1847
1848 * xdisp.c (calc_pixel_width_or_height): Use actual display
1849 resolution when available instead of Vdisplay_pixels_per_inch.
1850
1851 2005-08-17 Kim F. Storm <storm@cua.dk>
1852
1853 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
1854
1855 * dispnew.c (buffer_posn_from_coords): Check that target row is
1856 within matrix.
1857
1858 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1859
1860 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
1861 xg_set_frame_icon and call it.
1862
1863 * gtkutil.c (xg_set_frame_icon): New function.
1864
1865 * gtkutil.h (xg_set_frame_icon): Declare it.
1866
1867 2005-08-16 Kim F. Storm <storm@cua.dk>
1868
1869 * dispnew.c (increment_row_positions): Skip non-enabled rows.
1870
1871 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
1872 (Fcurrent_window_configuration): Use VECSIZE macro instead.
1873
1874 2005-08-15 Richard M. Stallman <rms@gnu.org>
1875
1876 * xdisp.c (message3_nolog): Clear echo_message_buffer.
1877
1878 2005-08-15 Kim F. Storm <storm@cua.dk>
1879
1880 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
1881
1882 * process.c (deactivate_process, status_notify, read_process_output)
1883 (update_status, status_convert, decode_status, allocate_pty)
1884 (make_process, remove_process, list_processes_1)
1885 (create_process_1, unwind_request_sigio, read_process_output)
1886 (send_process, keyboard_bit_set): Declare static.
1887 (Fdelete_process): Simplify. Pass process to status_notify, so we
1888 don't try to read output from it.
1889 (status_notify): New arg deleting_process--don't try to read
1890 output from that process.
1891
1892 * lisp.h (deactivate_process, status_notify, read_process_output):
1893 Remove prototypes.
1894
1895 2005-08-14 Richard M. Stallman <rms@gnu.org>
1896
1897 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
1898 define_image_type.
1899
1900 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1901
1902 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
1903 (xg_get_image_for_pixmap): Move some code to
1904 xg_get_pixbuf_from_pix_and_mask, and call it.
1905
1906 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
1907
1908 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
1909 to get an GTK icon and set it with GTK functions to avoid having GTK
1910 override an icon set with just X functions.
1911
1912 2005-08-11 Richard M. Stallman <rms@gnu.org>
1913
1914 * image.c (syms_of_image): Init image_types here, and call
1915 define_image_type.
1916 (init_image): Not here.
1917
1918 2005-08-09 Richard M. Stallman <rms@gnu.org>
1919
1920 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
1921
1922 * lisp.h (QUIT): Throw t to Vthrow_on_input.
1923
1924 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
1925
1926 * floatfns.c (Fexpt): Use floats for negative exponent.
1927
1928 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1929
1930 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
1931 should not be there, causing menu display errors with GTK 2.6.9.
1932
1933 2005-08-07 Richard M. Stallman <rms@gnu.org>
1934
1935 * floatfns.c (Fexpt): Undo previous change.
1936
1937 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
1938 so it can be used with various state vectors.
1939
1940 * emacs.c (endif): Convert -script into -scriptload.
1941 (standard_args): Add -scriptload. Allow -basic-display with one dash.
1942
1943 * fns.c (syms_of_fns): Add `emacs' to features.
1944
1945 * term.c (set_terminal_modes): If no TS_termcap_modes string,
1946 output newlines to scroll the old screen contents off the screen.
1947
1948 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
1949
1950 * floatfns.c (Fexpt): Use floats for negative exponent.
1951 Reported by D Goel.
1952
1953 2005-08-02 Richard M. Stallman <rms@gnu.org>
1954
1955 * frame.c (Fframe_char_width): Doc fix.
1956
1957 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
1958
1959 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
1960 Defvar it.
1961
1962 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
1963
1964 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
1965 (my_create_window, my_create_tip_window): Make static.
1966
1967 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
1968 (my_set_foreground_window, my_destroy_window): Make static.
1969
1970 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
1971
1972 Merge gnulib getopt implementation into Emacs.
1973
1974 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
1975 now part of lib-src.
1976
1977 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
1978
1979 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
1980
1981 2005-07-25 Jason Rumney <jasonr@gnu.org>
1982
1983 * w32menu.c (w32_menu_display_help): Suppress tooltip when
1984 navigating menus with the keyboard.
1985
1986 2005-07-23 Richard M. Stallman <rms@gnu.org>
1987
1988 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
1989
1990 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
1991 gc_relative_threshold, one by one.
1992
1993 * keyboard.c (read_char): Test gc_cons_threshold.
1994 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
1995
1996 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
1997 gc_relative_threshold, one by one.
1998
1999 * alloc.c (gc_cons_threshold): Not static.
2000 (gc_cons_combined_threshold): Var deleted.
2001 (gc_relative_threshold): New variable.
2002 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
2003 instead of gc_cons_combined_threshold.
2004
2005 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
2006 (gc_cons_combined_threshold): Declaration deleted.
2007
2008 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2009
2010 * mac.c: Don't include stdlib.h or string.h.
2011 (Fdo_applescript, Fmac_file_name_to_posix)
2012 (Fmac_file_name_to_posix): Doc fixes.
2013 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
2014 (Fmac_code_convert_string): Likewise.
2015 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
2016 if the executable is not contained in a bundle.
2017
2018 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
2019 (gray_width, gray_height): Remove defines.
2020 (gray_bits, gray_bitmap_width, gray_bitmap_height)
2021 (gray_bitmap_bits): Remove variables.
2022 (lispy_function_keys): Remove extern.
2023 (free_frame_menubar): Add extern.
2024 (x_window_to_frame): Remove function.
2025 (unwind_create_tip_frame): Add declaration.
2026 (x_set_name_internal): New function.
2027 (x_set_name, x_set_title): Use it.
2028 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
2029 (Fx_display_pixel_height, Fx_display_planes)
2030 (Fx_display_color_cells, Fx_server_max_request_size)
2031 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
2032 (Fx_display_mm_height, Fx_display_mm_width)
2033 (Fx_display_backing_store, Fx_display_visual_class)
2034 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
2035
2036 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
2037
2038 * macselect.c (Fx_own_selection_internal): Follow error conventions.
2039 (Fx_get_selection_internal, Fx_selection_owner_p)
2040 (Fx_selection_exists_p): Doc fixes.
2041 (syms_of_macselect) <selection-converter-alist>: Likewise.
2042
2043 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
2044
2045 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2046
2047 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
2048 (Fccl_execute_on_string): Likewise; add usage info.
2049
2050 * composite.c (Fcompose_region_internal)
2051 (Fcompose_string_internal):
2052 Improve argument/docstring consistency.
2053
2054 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
2055 Fix typos in docstrings.
2056
2057 * textprop.c (Fnext_char_property_change)
2058 (Fprevious_char_property_change): Doc fixes.
2059
2060 * window.c (Fset_window_margins, Fset_window_fringes):
2061 Improve argument/docstring consistency.
2062
2063 * xfaces.c (Finternal_lisp_face_p): Doc fix.
2064
2065 2005-07-21 Andreas Schwab <schwab@suse.de>
2066
2067 * eval.c (restore_stack_limits): Return a value.
2068
2069 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
2070
2071 * eval.c (Fdefvar): Doc fix.
2072
2073 2005-07-20 Kim F. Storm <storm@cua.dk>
2074
2075 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
2076 Use make_save_value to unwind protect stream.
2077
2078 * lread.c (Fload, load_unwind):
2079 Use make_save_value to unwind protect stream.
2080
2081 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
2082
2083 * eval.c (Fprog2, Fcalled_interactively_p),
2084 (syms_of_eval) <debug-on-quit>: Doc fixes.
2085 (syms_of_eval) <max-specpdl-size>:
2086 (Finteractive_p): Fix typos in docstrings.
2087
2088 2005-07-19 Kim F. Storm <storm@cua.dk>
2089
2090 * w32fns.c (Vx_hand_shape): Variable removed.
2091 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
2092
2093 2005-07-19 Kenichi Handa <handa@m17n.org>
2094
2095 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
2096
2097 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
2098
2099 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
2100
2101 2005-07-18 Kim F. Storm <storm@cua.dk>
2102
2103 * frame.h (struct frame): New member already_hscrolled_p.
2104
2105 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
2106 to avoid redisplay looping hscrolling back and forth ad infinitum.
2107
2108 2005-07-18 Juri Linkov <juri@jurta.org>
2109
2110 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
2111 * keymap.c (Fminor_mode_key_binding):
2112 * macterm.c (mac-emulate-three-button-mouse):
2113 Delete duplicate duplicate words.
2114
2115 2005-07-18 Ken Raeburn <raeburn@gnu.org>
2116
2117 * minibuf.c (Ftest_completion): Fix odd syntax in test.
2118
2119 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2120
2121 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
2122
2123 * macgui.h (struct _XGC): New struct.
2124 (GC): Use it.
2125 (GCForeground, GCBackground, GCFont): Use X11 mask values.
2126 (XCreateGC, XParseGeometry): Move externs to macterm.h.
2127
2128 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
2129 (XSetFont): Add declaration.
2130 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
2131 Remove functions.
2132 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
2133 New defines.
2134 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
2135 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
2136 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
2137 Use them.
2138 (mac_erase_rectangle): New function.
2139 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
2140 (x_draw_stretch_glyph_string): Use it.
2141 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
2142 (XSetBackground, XSetFont): Adjust for new GC implementation.
2143 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
2144 (XTset_vertical_scroll_bar): Clear area under scroll bar.
2145
2146 * macterm.h (struct mac_display_info): Change types of
2147 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
2148 (XCreateGC, XParseGeometry): Move externs from macgui.h.
2149
2150 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
2151
2152 2005-07-16 Richard M. Stallman <rms@gnu.org>
2153
2154 * buffer.c (Fmake_overlay): Doc fix.
2155
2156 2005-07-16 Eli Zaretskii <eliz@gnu.org>
2157
2158 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
2159 Vw32_valid_locale_ids, and Vw32_valid_codepages.
2160
2161 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2162
2163 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
2164 Use Fstring_as_unibyte instead of string_make_unibyte.
2165
2166 2005-07-15 Richard M. Stallman <rms@gnu.org>
2167
2168 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
2169
2170 2005-07-15 Kim F. Storm <storm@cua.dk>
2171
2172 * xdisp.c: Fix redisplay loop in last change.
2173 (IT_POS_VALID_AFTER_MOVE_P): New macro.
2174 (move_it_vertically_backward, move_it_by_lines): Use it.
2175
2176 2005-07-14 Jason Rumney <jasonr@gnu.org>
2177
2178 * w32.c (init_environment): Default HOME directory to user's
2179 appdata directory if possible.
2180
2181 2005-07-14 Kim F. Storm <storm@cua.dk>
2182
2183 * .gdbinit (pitx): Fix output format. Print string charpos.
2184
2185 * lread.c (syms_of_lread): Initialize seen_list.
2186
2187 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
2188
2189 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
2190 Staticpro re_match_object.
2191
2192 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2193
2194 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
2195 dereference.
2196
2197 * macterm.c (mac_window_to_frame): Remove duplicate define.
2198
2199 2005-07-14 Kenichi Handa <handa@m17n.org>
2200
2201 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
2202 (code_convert_region): Adjust for the above change.
2203 (set_conversion_work_buffer): If the work buffer is already in
2204 use, generate a new buffer and return it. Otherwise return Qnil.
2205 (run_pre_post_conversion_on_str): Adjust for the above change.
2206 (run_pre_write_conversin_on_c_str): Likewise.
2207
2208 2005-07-13 Kim F. Storm <storm@cua.dk>
2209
2210 * xdisp.c (start_display): Don't reseat to next visible line start
2211 if current start position is in a string or image.
2212 (move_it_vertically_backward): Be sure to move out of strings and
2213 images when moving it2 forward.
2214 (move_it_by_lines): When moving forward, move to next buffer
2215 position if we end up in a string or image. When moving backward,
2216 count rows moved over when moving to start of current row in case
2217 row starts in middle of a string or image. Also move further
2218 backward if we end up in a string or image.
2219 (try_cursor_movement): If overlay string spans multiple lines,
2220 move backward to set cursor on start of an overlay string.
2221 (cursor_row_p): Row is ok if cursor is at newline from string, but
2222 string starts on this line (so we always position cursor at start
2223 of string).
2224
2225 * indent.c (Fvertical_motion): If start position is on an image,
2226 don't move back if we move too far (that's almost certain to happen).
2227
2228 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
2229 row in minibuffer windows.
2230 (try_window): Don't check margins in minibuffer windows.
2231
2232 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2233
2234 * macterm.c: Don't include stdlib.h or composite.h.
2235 (x_use_underline_position_properties, last_mouse_press_frame)
2236 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
2237 (syms_of_macterm, mac_initialize): Don't initialize them.
2238 (waiting_for_input, initial_argv, initial_argc)
2239 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
2240 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
2241 (extra_keyboard_modifiers): Fix type in extern.
2242 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
2243 (x_scroll_bar_report_motion): Add argument types to declaration.
2244 (mac_compute_glyph_string_overhangs): Add declaration.
2245 (disable_mouse_highlight): Remove unused variable.
2246 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
2247 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
2248 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
2249 All callers changed.
2250 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
2251 timestamp.
2252 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
2253 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
2254 only when its width is less than the height.
2255 (XTredeem_scroll_bar): Sync with xterm.c.
2256 (font_name_table, font_name_table_size, font_name_count):
2257 Make static.
2258 (drag_and_drop_file_list): Remove variable. Previous use is now
2259 local to function.
2260 (do_ae_open_documents): Move DRAG_N_DROP event construction part
2261 from XTread_socket.
2262 (XTread_socket): Consolidate setting of event timestamp.
2263 Move DRAG_N_DROP event construction part to do_ae_open_documents.
2264 Support extra_keyboard_modifiers.
2265
2266 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
2267 beginning with that for ASCII.
2268
2269 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
2270
2271 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
2272 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
2273 (syms_of_alloc): Declare gc-cons-percentage.
2274
2275 * eval.c (Feval, Ffuncall):
2276 * keyboard.c (read_char):
2277 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
2278
2279 * lisp.h (gc_cons_combined_threshold): Declare.
2280
2281 2005-07-12 Kim F. Storm <storm@cua.dk>
2282
2283 * coding.c (Qprocess_argument):
2284 * coding.h (Qprocess_argument): Remove unused var.
2285
2286 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
2287
2288 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2289
2290 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
2291 Endian.h.
2292 [!MAC_OSX] (fchmod, fchown): New functions.
2293 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
2294 Use SBYTES and EndianU32_BtoN.
2295 (mac_get_object_from_code): Return 4 byte string even if argument
2296 is 0. Use make_unibyte_string and EndianU32_NtoB.
2297 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
2298 (Fmac_set_file_type): Fix documents and argument declarations.
2299 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
2300
2301 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
2302
2303 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
2304
2305 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2306
2307 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
2308 Lucid if X_I18N, font otherwise.
2309
2310 2005-07-10 Steven Tamm <steventamm@mac.com>
2311
2312 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
2313 (Fmac_set_file_type, Fmac_set_file_creator): Add.
2314 (mac_get_object_from_code, mac_get_code_from_arg): Add.
2315
2316 2005-07-10 Richard M. Stallman <rms@gnu.org>
2317
2318 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
2319 (syms_of_lread): Set up eval-buffer-list.
2320 (Feval_buffer, Feval_region): Bind eval-buffer-list.
2321
2322 2005-07-08 Richard M. Stallman <rms@gnu.org>
2323
2324 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
2325
2326 2005-07-08 Kim F. Storm <storm@cua.dk>
2327
2328 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
2329 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
2330
2331 2005-07-07 Kim F. Storm <storm@cua.dk>
2332
2333 * window.c (Frecenter): Fix last change (set iarg before use).
2334
2335 2005-07-06 Richard M. Stallman <rms@gnu.org>
2336
2337 * window.c (Frecenter): When arg is inside the scroll margin,
2338 move it out of the margin.
2339
2340 2005-07-06 Jason Rumney <jasonr@gnu.org>
2341
2342 * w32console.c (initialize_w32_display): Detect when the console
2343 dimensions are insane, and default to 80x25 instead.
2344 (w32_use_full_screen_buffer): Default to NIL.
2345
2346 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2347
2348 * macterm.c (mac_draw_vertical_window_border): Use foreground of
2349 VERTICAL_BORDER_FACE_ID for vertical border line.
2350 (mac_encode_char): Call check_ccl_update in advance.
2351 (mac_to_x_fontname, x_font_name_to_mac_font_name)
2352 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
2353 Don't assume that font family length is less than 32.
2354 (x_compute_min_glyph_bounds): Make static.
2355 (x_load_font): Never set fonts_changed_p to zero.
2356
2357 2005-07-04 Lute Kamstra <lute@gnu.org>
2358
2359 * Update FSF's address in GPL notices.
2360
2361 2005-07-03 Richard M. Stallman <rms@gnu.org>
2362
2363 * xdisp.c (try_window): Fix previous change in how it handles
2364 a partially-visible line or one only partly past the margin.
2365
2366 * window.c (window_scroll_pixel_based): Take account
2367 of this_scroll_margin when finding point when scrolling up.
2368
2369 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
2370
2371 * window.c (window_scroll_pixel_based, window_scroll_line_based):
2372 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
2373 (syms_of_window): <scroll-preserve-screen-position>: Doc fix.
2374
2375 2005-07-02 Juri Linkov <juri@jurta.org>
2376
2377 * w32term.c (w32_draw_vertical_window_border): Use foreground of
2378 VERTICAL_BORDER_FACE_ID for vertical border line.
2379
2380 2005-07-02 Eli Zaretskii <eliz@gnu.org>
2381
2382 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
2383 fchmod so that chmod doesn't get called on MSDOS before the file
2384 is closed.
2385
2386 2005-07-01 Jason Rumney <jasonr@gnu.org>
2387
2388 * w32term.c (cleartype_active): New flag for enabling sub-pixel
2389 workaround.
2390 (w32_initialize): Initialize it.
2391 (w32_native_per_char_metric): Allow a couple of extra pixels when
2392 Cleartype is active.
2393
2394 * w32term.c (w32_initialize): Move check for screen reader here
2395 from syms_of_w32term.
2396
2397 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2398
2399 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
2400 is not zero.
2401
2402 2005-07-01 Masatake YAMATO <jet@gyve.org>
2403
2404 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
2405
2406 2005-06-30 Juri Linkov <juri@jurta.org>
2407
2408 * xdisp.c (x_draw_vertical_border): If left fringe is not present
2409 decrease x coord of vertical border by 1 pixel to not occupy text
2410 area of the right window.
2411
2412 * xterm.c (x_draw_vertical_window_border): Use foreground of
2413 VERTICAL_BORDER_FACE_ID for vertical border line.
2414
2415 * term.c (turn_on_face): In standout mode apply specified
2416 fg to bg, and specified bg to fg (this makes the logic of
2417 inversion on terminal consistent with X).
2418
2419 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
2420
2421 * eval.c (user_variable_p_eh): New function.
2422 (Fuser_variable_p): Use it. Clarify docstring.
2423 Return t for aliases of user options, nil for alias loops.
2424
2425 2005-06-27 Richard M. Stallman <rms@gnu.org>
2426
2427 * eval.c (Fdefvar): Improve error message.
2428
2429 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2430
2431 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
2432 change.
2433
2434 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
2435
2436 * eval.c (Fdefvar): Don't try to set constant symbols.
2437
2438 2005-06-25 Richard M. Stallman <rms@gnu.org>
2439
2440 * macfns.c (Fx_show_tip): Pass new arg to try_window.
2441
2442 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
2443
2444 * xfns.c (Fx_show_tip): Pass new arg to try_window.
2445
2446 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
2447 (redisplay_window): Handle try_window reporting point in scroll margin.
2448
2449 * dispextern.h (try_window): Declare new arg.
2450
2451 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
2452 Use fchmod to copy the file modes.
2453 (Frename_file): Don't copy UID and GID here;
2454 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
2455
2456 * eval.c (call_debugger): Take full care of extending stack limits
2457 to make space for the debugger, and restore the change afterward.
2458 Bind debug-on-error to nil.
2459 (restore_stack_limits): New subroutine.
2460 (Fsignal): Extend specpdl bound along with eval depth bound,
2461 for calling edebug. Don't do either one, for calling debugger.
2462 (find_handler_clause): Don't bind debug-on-error here.
2463 Don't unbind anything either.
2464 Temporarily advance max_specpdl_size for calling
2465 internal_with_output_to_temp_buffer.
2466 (grow_specpdl): Don't alter max_specpdl_size before signaling
2467 an error.
2468 (syms_of_eval) <max-specpdl-size>: Doc fix.
2469
2470 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
2471
2472 2005-06-24 Eli Zaretskii <eliz@gnu.org>
2473
2474 * fileio.c (Frename_file): Undo last change: no need to ifdef away
2475 chown on DOS_NT platforms.
2476
2477 * w32.c (sys_chown): New function.
2478
2479 * s/ms-w32.h (chown): New; define to sys_chown.
2480
2481 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
2482
2483 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
2484 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
2485
2486 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
2487
2488 2005-06-23 Richard M. Stallman <rms@gnu.org>
2489
2490 * xdisp.c (get_next_display_element): Finish reversing the tests of
2491 Vnobreak_char_display.
2492
2493 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
2494 All uses changed.
2495 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
2496 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
2497
2498 * fileio.c (Frename_file): Preserve owner and group, if possible,
2499 when copying.
2500
2501 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
2502
2503 * abbrev.c (Funexpand_abbrev):
2504 * category.c (Fmake_category_set):
2505 * dispnew.c (Fsleep_for, Fsit_for):
2506 * editfns.c (Fsubst_char_in_region):
2507 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
2508 * frame.c (make_frame_without_minibuffer):
2509 * lread.c (read_vector):
2510 * macfns.c (check_x_frame):
2511 * process.c (Fstop_process, Fcontinue_process):
2512 * search.c (Freplace_match):
2513 * syntax.c (Fstring_to_syntax):
2514 * w32fns.c (check_x_frame, check_x_display_info):
2515 * xfaces.c (x_supports_face_attributes_p):
2516 * xselect.c (Fx_own_selection_internal): Follow error conventions.
2517
2518 * image.c (fn_png_init_io): Don't define it.
2519 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
2520 (png_read_from_file): New function, based on png_read_from_memory.
2521 (png_load): Use it, instead of fn_png_init_io.
2522
2523 2005-06-23 Kim F. Storm <storm@cua.dk>
2524
2525 * search.c (Fmatch_data): Remove evaporate option.
2526 (Fset_match_data): Do not mention evaporate option in doc string.
2527 Add commentary explaining evaporate arg (for internal use only).
2528 (unwind_set_match_data): Add comment on evaporate use.
2529
2530 2005-06-22 Miles Bader <miles@gnu.org>
2531
2532 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
2533 (realize_basic_faces, syms_of_xfaces): Update references to it.
2534 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
2535 to `VERTICAL_BORDER_FACE_ID'.
2536 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
2537
2538 2005-06-21 Juri Linkov <juri@jurta.org>
2539
2540 * dispextern.h: Add extern Qframe_set_background_mode.
2541
2542 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
2543 Qframe_set_background_mode.
2544
2545 * frame.c (Fmodify_frame_parameters):
2546 Call frame-set-background-mode after changing the background color
2547 on non-window non-dos branch.
2548
2549 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
2550
2551 * fns.c (Fchar_table_range):
2552 * process.c (Fmake_network_process): Fix spellings.
2553
2554 2005-06-20 Kim F. Storm <storm@cua.dk>
2555
2556 * fns.c (Fsort): Doc fix.
2557
2558 2005-06-20 Miles Bader <miles@gnu.org>
2559
2560 * xfaces.c (Qvertical_divider): New variable.
2561 (realize_basic_faces): Realize its face.
2562 (syms_of_xfaces): Initialize it.
2563
2564 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
2565
2566 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
2567 window-separator on ttys using `vertical-divider' face by default.
2568
2569 2005-06-17 Richard M. Stallman <rms@gnu.org>
2570
2571 * xdisp.c (get_next_display_element):
2572 Reverse test of Vshow_nonbreak_escape.
2573
2574 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
2575 (Ftty_no_underline): New function.
2576 (syms_of_term): defsubr it.
2577
2578 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
2579
2580 * dispnew.c (spec_glyph_lookup_face): New function.
2581 (build_frame_matrix_from_leaf_window): Use it.
2582
2583 * dispextern.h (spec_glyph_lookup_face): Add declaration.
2584
2585 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
2586
2587 2005-06-12 Richard M. Stallman <rms@gnu.org>
2588
2589 * keyboard.c (read_char): After catching a longjmp,
2590 call restore_getcjmp.
2591
2592 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
2593
2594 * xselect.c (lisp_data_to_selection_data): Fix spelling.
2595
2596 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2597
2598 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
2599 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
2600 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
2601 events.
2602 (XTread_socket): Don't pass keyboard events with the option
2603 modifier to the system when Vmac_command_key_is_meta is nil or
2604 Vmac_option_modifier is non-nil.
2605 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
2606 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
2607 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
2608 handler function.
2609 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
2610 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
2611 handler part to mac_handle_mouse_event.
2612
2613 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
2614
2615 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
2616 NEW-ALIAS and BASE-VARIABLE, respectively.
2617
2618 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
2619
2620 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2621 (get_phys_cursor_geometry, format_mode_line_unwind_data)
2622 (get_line_height_property, x_produce_glyphs): Remove unused vars.
2623
2624 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
2625
2626 2005-06-13 Eli Zaretskii <eliz@gnu.org>
2627
2628 * w32term.c (x_use_underline_position_properties): New variable.
2629 (x_draw_glyph_string): Remind in a comment to change doc string of
2630 x-use-underline-position-properties if/when underline positioning
2631 is implemented.
2632 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
2633 and initialize it to nil.
2634
2635 2005-06-12 Jason Rumney <jasonr@gnu.org>
2636
2637 * w32fns.c (NEWOPENFILENAME): New struct.
2638 (Fx_file_dialog): Use it to trick the system into giving us up to
2639 date dialogs on systems that are documented to support it.
2640 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
2641
2642 2005-06-12 Eli Zaretskii <eliz@gnu.org>
2643
2644 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
2645 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
2646
2647 2005-06-11 Eli Zaretskii <eliz@gnu.org>
2648
2649 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
2650 to CreateDIBSection to avoid a compiler warning.
2651 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
2652 warning.
2653 (png_load): Cast return values of fn_png_create_read_struct and
2654 fn_png_create_info_struct, to avoid compiler warnings on W32.
2655 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
2656 to avoid compiler warnings.
2657 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
2658 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
2659 avoid a compiler warning.
2660 (tiff_load): Cast return values of fn_TIFFOpen and
2661 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
2662 to IMAGE_BACKGROUND to avoid a compiler warning.
2663 (gif_load): Cast return values of fn_DGifOpenFileName and
2664 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
2665 IMAGE_BACKGROUND to avoid a compiler warning.
2666 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
2667 before redefining.
2668
2669 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
2670 the call to CreateDIBSection, to avoid a compiler warning.
2671
2672 2005-06-11 Jason Rumney <jasonr@gnu.org>
2673
2674 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
2675 minibuffer.
2676 * macfns.c (Fx_file_dialog): Likewise.
2677
2678 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2679
2680 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
2681
2682 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2683
2684 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
2685 * w32fns.c (syms_of_w32fns): Fix spellings.
2686
2687 2005-06-10 Eli Zaretskii <eliz@gnu.org>
2688
2689 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
2690 `verbose'; print diagnostic messages only if it is non-zero.
2691 All callers changed to pass a zero value unless DEBUG_DUMP is defined
2692 in the environment.
2693 (copy_executable_and_dump_data): Print section names with %.8s.
2694
2695 2005-06-10 Masatake YAMATO <jet@gyve.org>
2696
2697 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
2698 when mouse_face is not given.
2699
2700 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
2701
2702 * window.c (Fselect_window): Adapt call to Fselect_frame.
2703
2704 * lisp.h: Update EXFUN of Fselect_frame.
2705
2706 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
2707
2708 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
2709 no_enter.
2710 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
2711 Adapt to above change.
2712
2713 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
2714
2715 * fns.c (Fmemq, Fmaphash): Doc fixes.
2716
2717 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
2718
2719 * xfaces.c (Fdisplay_supports_face_attributes_p):
2720 Fix typo in docstring.
2721
2722 2005-06-08 Steven Tamm <steventamm@mac.com>
2723
2724 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
2725 used by gcc4 on intel mac.
2726
2727 2005-06-09 Kim F. Storm <storm@cua.dk>
2728
2729 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
2730 in REUSE list if non-nil; free them if equal to evaporate.
2731 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
2732 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
2733 (restore_search_regs): Rename from restore_match_data. Uses changed.
2734 (unwind_set_match_data): New function.
2735 (record_unwind_save_match_data): New function like save-match-data.
2736
2737 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
2738 (record_unwind_save_match_data): Add prototype.
2739 (restore_search_regs): Rename from restore_match_data.
2740
2741 * composite.c (compose_chars_in_text):
2742 * eval.c (do_autoload):
2743 * macmenu.c (set_frame_menubar):
2744 * process.c (read_process_output, exec_sentinel):
2745 * xmenu.c (set_frame_menubar):
2746 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
2747 * w32menu.c (set_frame_menubar):
2748 Use record_unwind_save_match_data.
2749
2750 2005-06-08 Richard M. Stallman <rms@gnu.org>
2751
2752 * xdisp.c (get_next_display_element): Alter previous change:
2753 Distinguish Vshow_nonbreak_escape = t or not t.
2754 For t, use escape_glyph once again, as before previous change.
2755 Use space or hyphen for display, instead of the non-ASCII char.
2756 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
2757
2758 * process.c (Fstart_process): Don't touch command_channel_p slot.
2759
2760 * process.h (struct process): Delete command_channel_p.
2761
2762 2005-06-07 Masatake YAMATO <jet@gyve.org>
2763
2764 * xdisp.c (note_mode_line_or_margin_highlight):
2765 Check the overlapping of re-rendering area to avoid flickering.
2766 (note_mouse_highlight): Call clear_mouse_face if PART
2767 is not ON_MODE_LINE nor ON_HEADER_LINE.
2768
2769 2005-06-07 Kim F. Storm <storm@cua.dk>
2770
2771 * process.c: Improve commentary for adaptive read buffering.
2772
2773 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
2774
2775 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
2776 if available.
2777
2778 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2779
2780 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
2781 New functions for popping down menus on C-g.
2782 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
2783
2784 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
2785 non-static.
2786
2787 * config.in: Add HAVE_CANCELMENUTRACKING.
2788
2789 2005-06-06 Eli Zaretskii <eliz@gnu.org>
2790
2791 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
2792
2793 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
2794
2795 * w32proc.c (RVA_TO_PTR): New macro.
2796
2797 * w32heap.c (RVA_TO_PTR): No need to #undef now.
2798
2799 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
2800 Depend on w32heap.h.
2801
2802 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
2803
2804 * keyboard.c (command_loop_1): Update Vthis_original_command.
2805
2806 2005-06-06 Richard M. Stallman <rms@gnu.org>
2807
2808 * xmenu.c (popup_get_selection): Undo previous change.
2809
2810 2005-06-06 Juri Linkov <juri@jurta.org>
2811
2812 * xdisp.c (Qno_break_space): New variable.
2813 (syms_of_xdisp): Initialize it.
2814 (get_next_display_element): Add no-break space and soft hypen
2815 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
2816 Use `no-break-space' face for no-break spaces.
2817
2818 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2819
2820 * window.c (delete_window): Handle the case where a h/vchild has
2821 a h/vchild.
2822
2823 2005-06-05 Eli Zaretskii <eliz@gnu.org>
2824
2825 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
2826 call to pfn_setsockopt, cast optval to `const char *'.
2827
2828 2005-06-04 Eli Zaretskii <eliz@gnu.org>
2829
2830 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
2831 (open_unc_volume): Cast return value of map_w32_filename, to avoid
2832 compiler warnings.
2833
2834 * s/ms-w32.h (fileno): Don't define if already defined.
2835
2836 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
2837
2838 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
2839
2840 2005-06-04 Richard M. Stallman <rms@gnu.org>
2841
2842 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
2843
2844 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2845
2846 * macmenu.c (cleanup_popup_menu): New function.
2847 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
2848 mac_menu_show Quit:s.
2849 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
2850 a dialog).
2851
2852 2005-06-04 Kim F. Storm <storm@cua.dk>
2853
2854 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
2855
2856 * callproc.c (Fcall_process): Don't use alloca to gradually
2857 increase size of buf, as it effectively uses twice the necessary
2858 space on the stack. Instead, pre-allocate buf of full size, and
2859 gradually increase the read size.
2860
2861 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
2862
2863 * eval.c (unbind_to): Preserve value of Vquit_flag.
2864
2865 * xterm.c (handle_one_xevent): Also ignore mouse motion just
2866 before a button release event.
2867
2868 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
2869
2870 * xfaces.c (Finternal_lisp_face_equal_p): Really report
2871 on faces in a frame, if the argument FRAME is non-nil.
2872 Improve argument/docstring consistency.
2873
2874 2005-06-02 Kim F. Storm <storm@cua.dk>
2875
2876 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
2877 (x_consider_frame_title, Fformat_mode_line): Save offset into
2878 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
2879
2880 2005-06-01 Kim F. Storm <storm@cua.dk>
2881
2882 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
2883
2884 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2885
2886 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
2887 resolution fields for scalable fonts to 0.
2888
2889 * xfaces.c (build_scalable_font_name): Round pixel size to the
2890 nearest integer.
2891
2892 2005-06-01 Kim F. Storm <storm@cua.dk>
2893
2894 * xdisp.c (display_mode_line): Support nested calls to redisplay
2895 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
2896
2897 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
2898
2899 * fileio.c (Finsert_file_contents):
2900 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
2901
2902 2005-05-31 Kim F. Storm <storm@cua.dk>
2903
2904 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
2905 (mode_line_noprop_ptr): Rename from frame_title_*.
2906 (store_mode_line_noprop_char): Rename from store_frame_title_char.
2907 (store_mode_line_noprop): Rename from store_frame_title.
2908 (mode_line_target): New enum to specify current output target
2909 for mode line formatting.
2910 (display_mode_element): Test it rather than frame_title_ptr and
2911 mode_line_string_list to determine where output should go.
2912 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
2913 (Vmode_line_unwind_vector): New variable.
2914 (format_mode_line_unwind_data, unwind_format_mode_line):
2915 New functions for unwind protection in mode line formatting.
2916 (x_consider_frame_title): Use them and new local var 'title_start'
2917 to support nested calls to format-mode-line and redisplay.
2918 Set mode_line_target to MODE_LINE_TITLE.
2919 (Fformat_mode_line): Use them and new local var 'string_start' to
2920 support nested calls to format-mode-line and redisplay.
2921 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
2922 Don't trim trailing dashes.
2923 (decode_mode_spec): Don't make infinite number of trailing dashes
2924 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
2925 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
2926 mode_line_string_face_prop, and Vmode_line_unwind_vector.
2927 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
2928 Initialize mode_line_target to MODE_LINE_DISPLAY.
2929
2930 2005-05-29 Richard M. Stallman <rms@gnu.org>
2931
2932 * buffer.c (Fbuffer_local_value): Call indirect_variable.
2933
2934 2005-05-28 Masatake YAMATO <jet@gyve.org>
2935
2936 * xdisp.c (note_mode_line_or_margin_highlight): Change the
2937 pointer to a hand cursor when hoovering over a mouse-face.
2938
2939 2005-05-27 Kenichi Handa <handa@m17n.org>
2940
2941 * xterm.c (x_encode_char): Call check_ccl_update in advance.
2942
2943 * ccl.c: Now an element of Vccl_program_table is a vector of
2944 length 4, not 3.
2945 (ccl_get_compiled_code): New arg idx. Caller changed.
2946 Adjust for the change of Vccl_program_table.
2947 (setup_ccl_program): Adjust for the change of Vccl_program_table.
2948 (check_ccl_update): New function.
2949 (Fregister_ccl_program): Use ASET to set an element of a vector.
2950 Adjusted for the change of Vccl_program_table.
2951
2952 * ccl.h (struct ccl_program): New member idx.
2953 (check_ccl_update): Extern it.
2954
2955 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
2956
2957 * image.c (Vimage_library_alist): Move from image.el.
2958 (syms_of_image): Defvar it.
2959 (lookup_image_type): Use it.
2960
2961 * buffer.c (Fbuffer_local_value): Make argument name match its use
2962 in docstring.
2963
2964 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
2965
2966 * keyboard.c (Frecursive_edit): Fix typo in docstring.
2967 (Fposn_at_x_y): Make argument name match its use in docstring.
2968
2969 2005-05-26 Lute Kamstra <lute@gnu.org>
2970
2971 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
2972
2973 2005-05-24 Masatake YAMATO <jet@gyve.org>
2974
2975 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
2976 as loop sentinels.
2977
2978 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
2979
2980 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
2981 select frame title ("Question"/"Information").
2982 (xdialog_show): Use it.
2983
2984 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
2985
2986 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
2987
2988 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
2989 a third argument (Qnil).
2990
2991 * lisp.h: x-popup-dialog can have three arguments.
2992
2993 * editfns.c (Fmessage_box): Use "Information" for frame title.
2994
2995 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
2996
2997 * termcap.c [VMS]: Include <starlet.h>.
2998
2999 2005-05-23 Masatake YAMATO <jet@gyve.org>
3000
3001 * xdisp.c (note_mode_line_or_margin_highlight): Add code
3002 for mouse-face. Change the type of the first argument from `window'
3003 to `Lisp_Object'.
3004 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
3005 window instead of w.
3006
3007 2005-05-22 Andreas Schwab <schwab@suse.de>
3008
3009 * process.c (send_process): Move misplaced volatile.
3010
3011 2005-05-21 Richard M. Stallman <rms@gnu.org>
3012
3013 * xdisp.c (display_mode_element): If we're processing a list and
3014 padding is specified, put it after the last element.
3015
3016 2005-05-21 Eli Zaretskii <eliz@gnu.org>
3017
3018 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
3019 "superroot" on DOS_NT systems.
3020
3021 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
3022
3023 * process.c (send_process): Restore the SIGPIPE handler if we
3024 catch a SIGPIPE.
3025
3026 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
3027
3028 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
3029 misleading comments).
3030 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
3031
3032 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
3033
3034 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
3035 Correct the right value.
3036
3037 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
3038
3039 * keyboard.c (syms_of_keyboard): Remove Lisp variables
3040 post-command-idle-hook and post-command-idle-delay.
3041 (command_loop_1): Don't try to execute post-command-idle-hook.
3042
3043 2005-05-16 Kim F. Storm <storm@cua.dk>
3044
3045 * xdisp.c (handle_display_prop): Handle empty replacement.
3046 (handle_single_display_spec): Return -1 for empty replacement.
3047
3048 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
3049
3050 * .gdbinit (pitx): Print more info about iterator.
3051
3052 2005-05-16 Andreas Schwab <schwab@suse.de>
3053
3054 * unexmacosx.c (unexec_realloc): Move declarations before statements.
3055
3056 2005-05-14 Richard M. Stallman <rms@gnu.org>
3057
3058 * xdisp.c (message3): Call cancel_echoing.
3059
3060 * alloc.c (Fmemory_full_p): New function.
3061 (syms_of_alloc): defsubr it.
3062
3063 * process.c (send_process_trap): Unblock SIGPIPE.
3064 (send_process): Reset SIGPIPE handler before reporting error.
3065
3066 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
3067
3068 * emacs.c (syms_of_emacs): Fix doc string for system-type.
3069
3070 2005-05-13 Richard M. Stallman <rms@gnu.org>
3071
3072 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
3073 (Finsert_file_contents): If we read 0 bytes from a special file,
3074 unlock the visited file if we locked it.
3075 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
3076 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
3077
3078 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3079
3080 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
3081
3082 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
3083 Regard toolkit scroll bar thumb drag events as squeezable and prevent
3084 redisplay from being paused by them.
3085
3086 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
3087 [!MAC_OSX] (target_ticks): Remove variable.
3088 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
3089 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
3090 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
3091 event occurs before timeout, behave as if the function were interrupted.
3092 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
3093 handling using Time Manager routines.
3094 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
3095 New variables.
3096 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
3097 (setitimer): New functions.
3098
3099 * macfns.c, macmenu.c: Don't include signal.h.
3100
3101 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
3102 Rename from get_control_part_bound. All callers changed.
3103 (x_scroll_bar_clear): New function.
3104 (x_clear_frame): Use it.
3105 (XTset_vertical_scroll_bar): Don't call Draw1Control.
3106 (x_scroll_bar_handle_click): Change type of second argument from
3107 int to ControlPartCode.
3108 (check_alarm): Remove declaration.
3109 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
3110 (XTread_socket): Use ControlPartCode instead of SInt16.
3111
3112 2005-05-13 Nozomu Ando <nand@mac.com>
3113
3114 * unexmacosx.c: Include assert.h.
3115 (MACOSX_MALLOC_MULT16): New define.
3116 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
3117 ptr is in unexec regions by checking it is multiple of 16.
3118 (unexec_malloc_header_t): New typedef.
3119 (unexec_malloc, unexec_realloc, unexec_free): Store and use
3120 allocated size information in unexec_malloc_header.
3121
3122 2005-05-10 Richard M. Stallman <rms@gnu.org>
3123
3124 * xterm.c (noinclude): Add #undef.
3125
3126 * image.c, xfns.c, xmenu.c: Don't include signal.h.
3127
3128 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
3129
3130 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
3131 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
3132 Doc fixes.
3133
3134 * dired.c (Ffile_name_completion): Make argument name
3135 match its use in docstring.
3136
3137 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
3138
3139 * eval.c (Fdefvaralias): Remove any pre-existing
3140 variable-documentation property of the alias.
3141
3142 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
3143
3144 * xfns.c (start_hourglass): Do nothing when running on a tty.
3145
3146 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
3147
3148 * fns.c (Fchar_table_range): Fix typos in docstring.
3149
3150 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
3151
3152 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
3153
3154 2005-05-06 Eli Zaretskii <eliz@gnu.org>
3155
3156 * lread.c (Flocate_file_internal): Doc fix.
3157
3158 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
3159
3160 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3161
3162 * macselect.c (x_own_selection): Accept Lisp string as result of
3163 selection converter function.
3164 (x_clear_frame_selections): Don't call x-lost-selection-functions
3165 if Emacs is not owner of the selection.
3166 (Vmac_services_selection): Put variable and initialization in
3167 #ifdef MAC_OSX.
3168 (syms_of_macselect) [MAC_OSX]: Set default value of
3169 Vmac_services_selection to PRIMARY.
3170
3171 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
3172 (mac_handle_tool_bar_click): Remove unused function and declaration.
3173 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
3174 (install_scroll_bar_timer, set_scroll_bar_timer)
3175 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
3176 (get_control_part_bound, x_scroll_bar_handle_press)
3177 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
3178 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
3179 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
3180 (scroll_bar_timer_event_posted_p): New variables.
3181 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
3182 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
3183 (x_scroll_bar_create): Set control reference with NewControl.
3184 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
3185 Initialize track_top and track_height to nil.
3186 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
3187 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
3188 (XTset_vertical_scroll_bar): Don't make space between scroll bar
3189 and associated window.
3190 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
3191 from window config.
3192 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3193 Set track_top and track_height to nil when scroll bar size is changed.
3194 Recalculate them if they are nil.
3195 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
3196 clicked control is a scroll bar.
3197 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
3198 event handler functions. Don't add modifiers to scroll bar click
3199 events. Call scroll bar release handler when window is deactivated.
3200 (mac_initialize): Remove unused code for X toolkit.
3201 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
3202 Initialize Vx_toolkit_scroll_bars to nil.
3203
3204 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
3205 New members track_top and track_height.
3206
3207 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
3208 init_process when including sys/select.h.
3209
3210 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
3211
3212 * eval.c (Fdefvaralias): Doc fix.
3213
3214 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3215
3216 2005-05-05 Kim F. Storm <storm@cua.dk>
3217
3218 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
3219 default value.
3220 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
3221 Fix type of cursor-in-non-selected-windows.
3222
3223 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3224
3225 * mac.c: #undef init_process so not to conflict with system headers.
3226
3227 2005-05-02 Richard M. Stallman <rms@gnu.org>
3228
3229 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
3230
3231 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
3232
3233 * xdisp.c (Vcursor_in_non_selected_windows)
3234 (Qcursor_in_non_selected_windows): Vars deleted.
3235 (syms_of_xdisp): Don't initialize them.
3236 (get_window_cursor_type): Use cursor_in_non_selected_windows
3237 buffer slot.
3238
3239 2005-05-02 Kim F. Storm <storm@cua.dk>
3240
3241 * macros.c (executing_kbd_macro_index): Rename from
3242 executing_macro_index. All uses changed.
3243 (executing_kbd_macro_iterations): Rename from
3244 executing_macro_iterations. All uses changed.
3245 (executing_kbd_macro): Rename from executing_macro.
3246 All uses changed.
3247 (syms_of_macros): Rename Lisp var executing-macro-index to
3248 executing-kbd-macro-index.
3249
3250 * xdisp.c (move_it_in_display_line_to): Fix last change.
3251
3252 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3253
3254 * xmenu.c (Fx_popup_menu): Doc fix.
3255
3256 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
3257
3258 2005-05-02 Jason Rumney <jasonr@gnu.org>
3259
3260 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
3261
3262 2005-05-02 Nozomu Ando <nand@mac.com>
3263
3264 * sysselect.h: Fix typo.
3265
3266 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
3267
3268 * charset.c (Fchars_in_region): Remove as obsolete.
3269
3270 2005-05-01 Kim F. Storm <storm@cua.dk>
3271
3272 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
3273 TO_CHARPOS. This may happen if last glyphs was an image or stretch
3274 glyph.
3275
3276 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
3277
3278 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
3279
3280 2005-05-01 Richard M. Stallman <rms@gnu.org>
3281
3282 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
3283 If user cancels the menu, quit unless FOR_CLICK.
3284
3285 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
3286 All uses changed.
3287 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
3288 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
3289 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
3290 * commands.h (Vexecuting_kbd_macro): Likewise.
3291
3292 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
3293
3294 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
3295
3296 2005-04-30 Richard M. Stallman <rms@gnu.org>
3297
3298 * fileio.c (Ffind_file_name_handler): Handle the `operations'
3299 property of the file name handler.
3300 (Qoperations): New variable.
3301 (syms_of_fileio): Initialize and staticpro it.
3302
3303 * xdisp.c (set_message_1): Delete xassert.
3304
3305 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3306
3307 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
3308
3309 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
3310
3311 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
3312 before/after including Carbon.h if there is a working mktime.
3313
3314 2005-04-28 Kim F. Storm <storm@cua.dk>
3315
3316 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
3317 Fix cyclic alias check. If alias loop is detected, signal
3318 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
3319
3320 2005-04-28 Lute Kamstra <lute@gnu.org>
3321
3322 * eval.c (do_autoload): Record only autoloads in the autoload
3323 property of symbols.
3324
3325 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
3326
3327 * emacs.c (USAGE1): Add --basic-display and --quick options.
3328
3329 2005-04-27 Kim F. Storm <storm@cua.dk>
3330
3331 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
3332
3333 2005-04-26 Richard M. Stallman <rms@gnu.org>
3334
3335 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
3336 (syms_of_window): Doc fixes.
3337
3338 * indent.c (Fvertical_motion): Undo previous change.
3339
3340 2005-04-26 Kenichi Handa <handa@m17n.org>
3341
3342 * fns.c (char_table_range): New function.
3343 (Fchar_table_range): Signal an error if characters in the range
3344 have inconsistent values. Don't check the parent.
3345
3346 2005-04-25 Kenichi Handa <handa@m17n.org>
3347
3348 * fontset.c (fontset_set): Fix previous change.
3349
3350 2005-04-24 Richard M. Stallman <rms@gnu.org>
3351
3352 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
3353
3354 2005-04-24 Eli Zaretskii <eliz@gnu.org>
3355
3356 * regex.c (re_search_2, re_match_2_internal): Convert second arg
3357 of RE_TRANSLATE to int, to shut up GCC warnings.
3358
3359 * fileio.c (Fcopy_file): Doc fix.
3360 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
3361 not needed.
3362
3363 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3364
3365 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
3366 (SOME_MACHINE_OBJECTS): Likewise.
3367 (mac.o): Depend on ccl.h.
3368 (macselect.o): New target.
3369
3370 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
3371 Call syms_of_macselect.
3372
3373 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
3374
3375 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
3376 (QCLIPBOARD): Remove variable.
3377 (syms_of_mac): Don't initialize it.
3378 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
3379 Remove functions.
3380 (syms_of_mac): Don't defsubr them.
3381 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
3382 (QHFS_plus_D, QHFS_plus_C): New variables.
3383 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3384 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
3385 (cfstring_create_normalized): New functions.
3386 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
3387 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
3388
3389 * macterm.c (handling_window_update, terminate_flag):
3390 Remove variables.
3391 (do_window_update, do_ae_quit_application, XTread_socket):
3392 Don't use them.
3393 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
3394 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
3395 (init_service_handler): Move to macselect.c. Remove declarations.
3396 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
3397 (Qapplication, Qabout): New variables.
3398 (syms_of_mac): Initialize them.
3399 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
3400 (Qperform): New variables.
3401 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
3402 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
3403 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
3404 (mac_store_application_menu_event, init_menu_bar): New functions.
3405 [USE_CARBON_EVENTS] (mac_handle_command_event)
3406 (init_command_handler): New functions.
3407 (mac_handle_window_event): Return noErr on window update event.
3408 (do_ae_quit_application): Call mac_store_application_menu_event.
3409 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
3410 and init_menu_bar.
3411
3412 * macterm.h (x_clear_frame_selections): Add extern.
3413
3414 * macselect.c: New file for selection processing on Mac OS.
3415
3416 2005-04-23 Richard M. Stallman <rms@gnu.org>
3417
3418 * fileio.c (Fcopy_file): New arg MUSTBENEW.
3419 (Frename_file): Pass new arg to Fcopy_file.
3420
3421 * window.c (window_size_fixed): Variable deleted.
3422 (syms_of_window): Initialize window-size-fixed to nil.
3423 But don't DEFVAR window_size_fixed.
3424
3425 2005-04-23 Andreas Schwab <schwab@suse.de>
3426
3427 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
3428 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
3429 use lib64 instead of lib.
3430 (_LP64) [_ARCH_PPC64]: Define if not defined.
3431
3432 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
3433
3434 * s/ms-w32.h (HAVE_PWD_H): Define.
3435
3436 2005-04-22 Kenichi Handa <handa@m17n.org>
3437
3438 * fns.c (copy_sub_char_table): Explicitly copy the default value
3439 of the sub-chartable.
3440
3441 * fontset.c (fontset_set): When a sub-chartable is created,
3442 explicitly sets the defalt value.
3443
3444 2005-04-22 Kim F. Storm <storm@cua.dk>
3445
3446 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
3447 (Fsafe_plist_get): Rename to Fplist_get.
3448 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
3449 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
3450
3451 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
3452
3453 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
3454 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3455 Use Fplist_get instead of Fsafe_plist_get.
3456
3457 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
3458
3459 2005-04-21 Miles Bader <miles@gnu.org>
3460
3461 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
3462
3463 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
3464
3465 * sysdep.c: Remove reference to defunct vms-pwd.h.
3466 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
3467 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
3468
3469 * config.in: Regenerate.
3470
3471 2005-04-20 Kenichi Handa <handa@m17n.org>
3472
3473 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
3474 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
3475 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
3476
3477 * alloc.c (make_sub_char_table): Argument changed to initial
3478 value of the slots.
3479
3480 * data.c (Faref): Handle special slots used as default values of
3481 ascii, eight-bit-control, eight-bit-control. Don't ignore a
3482 default value set for a group of characters.
3483 (Faset): Signal an error if IDXVAL is not a valid character code.
3484 Make a sub-chartable with correct initial value.
3485
3486 * fns.c (Fset_char_table_range): Don't set slots used as default
3487 values for ascii, eight-bit-control, eight-bit-graphic.
3488 Don't call Faref with charset-id.
3489 (Fset_char_table_default): Document how to treat normal character
3490 argument. Handle special slots used as default values of ascii,
3491 eight-bit-control, eight-bit-control. Make a sub chartable if
3492 necessary.
3493
3494 2005-04-20 Kenichi Handa <handa@m17n.org>
3495
3496 * search.c (boyer_moore): Fix previous change.
3497
3498 2005-04-19 Kim F. Storm <storm@cua.dk>
3499
3500 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
3501 face unless last visible char and first invisible char have the
3502 same face. Also use default face if saved_face_id is undefined.
3503
3504 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3505
3506 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
3507 `full_name'.
3508 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
3509 mac_scriptcode member.
3510
3511 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
3512 (syms_of_mac): Don't initialize them.
3513 (Vmac_charset_info_alist): New variable.
3514 (syms_of_mac): Defvar it.
3515 (create_text_encoding_info_alist): New function.
3516 (decode_mac_font_name, mac_to_x_fontname)
3517 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
3518 code the correspondence among XLFD charsets, Mac script codes, and
3519 Emacs coding systems. Use Vmac_charset_info_alist and result of
3520 create_text_encoding_info_alist instead.
3521 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
3522 routines also on Mac OS Classic.
3523 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
3524 Use add_font_name_table_entry.
3525 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
3526 specified. Derive unspecified scalable fields from specified one.
3527 (x_list_fonts): Consider Valternate_fontname_alist.
3528 (kDefaultFontSize): Change value from 9 to 12.
3529 (XLoadQueryFont): Get decoded font family, font face, and charset
3530 from x_font_name_to_mac_font_name. Set full name of loaded font.
3531 (mac_unload_font): Free `full_name' member.
3532 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
3533 NULL. Copy full_name member of struct MacFontStruct to that of
3534 struct font_info.
3535
3536 2005-04-19 Kim F. Storm <storm@cua.dk>
3537
3538 * xdisp.c (handle_stop): Set saved_face_id to current face if
3539 selective_display_ellipsis_p so ellipsis will be shown in same
3540 face as preceding text.
3541 (setup_for_ellipsis): Don't set saved_face_id here.
3542 (next_element_from_display_vector): Default to saved_face_id.
3543
3544 * fns.c (Fsafe_get): New function.
3545 (syms_of_fns): Defsubr it.
3546
3547 * lisp.h (Fsafe_get): EXFUN it.
3548
3549 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
3550 loops in case of bad face property lists. Limit number of face
3551 alias lookups to 10 (in case of face alias loops).
3552
3553 2005-04-18 Kim F. Storm <storm@cua.dk>
3554
3555 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
3556 It replaces the corresponding member from struct window, as a
3557 window may now show multiple overlay arrows.
3558 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
3559
3560 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
3561 Compare overlay_arrow_bitmap than overlay_arrow_p members.
3562
3563 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
3564 rather than from window.
3565 (update_window_fringes): Compare overlay_arrow_bitmap rather than
3566 overlay_arrow_p members.
3567 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
3568 if not default.
3569
3570 * window.h (struct window): Remove member overlay_arrow_bitmap.
3571
3572 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
3573
3574 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
3575 Calls changed. Don't check for overlay-arrow-bitmap property here.
3576 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
3577 fringe is present, return Lisp integer for bitmap (or -1 for default).
3578 Fix value of overlay-arrow-bitmap property to be a symbol, use
3579 lookup_fringe_bitmap to parse it.
3580 (display_line): Change call to overlay_arrow_at_row. Store integer
3581 return value as overlay bitmap in row rather than window.
3582 Only show overlay arrow if row displays text, or if no other overlay
3583 arrow is seen in window (if overlay marker is at point-max).
3584
3585 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3586
3587 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
3588
3589 2005-04-18 Lute Kamstra <lute@gnu.org>
3590
3591 * lread.c (Vloads_in_progress): Static.
3592 * fns.c (Vloads_in_progress): Remove extern.
3593 (load_in_progress): Add extern.
3594 (Frequire): Use load_in_progress instead of Vloads_in_progress.
3595
3596 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
3597
3598 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
3599
3600 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3601
3602 * macterm.c (XTread_socket): Don't beep on keyboard input even if
3603 no frame is visible.
3604
3605 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
3606
3607 * term.c (struct keys): Add support for shifted keys.
3608
3609 2005-04-16 Richard M. Stallman <rms@gnu.org>
3610
3611 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
3612 (set_message): Call with_echo_area_buffer with WHICH = 0.
3613 (set_message_1): Erase the echo area buffer first thing.
3614 (echo_area_display): Don't clear echo_message_buffer.
3615
3616 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3617
3618 * Makefile.in (mac.o): Depend on charset.h and coding.h.
3619
3620 * mac.c: Include charset.h and coding.h.
3621 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
3622 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
3623 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
3624
3625 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
3626
3627 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
3628
3629 * macterm.c (x_autoselect_window_p): Remove variable.
3630 (last_window): New variable.
3631 (XTreassert_line_highlight, x_change_line_highlight):
3632 Remove declarations.
3633 (mac_focus_changed, x_detect_focus_change): New functions and
3634 declarations.
3635 (XTextExtents16, front_emacs_window): Remove function.
3636 (mac_focus_frame): New function.
3637 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
3638 (mac_check_for_quit_char): Use it instead of front_emacs_window.
3639 (x_scroll_bar_report_motion): Obtain window from control owner.
3640 (x_make_frame_invisible): Set window manager size hint.
3641 (do_mouse_moved): Remove function.
3642 (XTread_socket): Move its contents here. Generate select-window
3643 event on mouse movement if needed. Use x_detect_focus_change on
3644 activate/deactivate events. Don't deiconify frame or invalidate
3645 window rectangle when dnd items are dropped.
3646 Don't activate/deactivate root control.
3647 (frame_highlight, frame_unhighlight): Activate/deactivate root
3648 control here.
3649 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
3650
3651 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
3652 New extern.
3653
3654 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
3655
3656 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
3657 (lisp): Use it.
3658 (SOME_MACHINE_LISP): Add tooltip.
3659
3660 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3661
3662 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
3663 Don't include TextEncodingConverter.h.
3664 (mac_system_script_code, Vmac_system_locale): New variables.
3665 (syms_of_mac): Defvar them.
3666 (mac_get_system_locale): New function.
3667
3668 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
3669 Use ENCODE_SYSTEM to encode title bar string.
3670 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
3671 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
3672 Use CFStringGetSystemEncoding to get system default string encoding.
3673
3674 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
3675 TextEncodingConverter.h.
3676
3677 2005-04-13 Steven Tamm <steventamm@mac.com>
3678
3679 * macterm.c (syms_of_macterm): Remove redundant definition of
3680 mac-pass-control-to-system.
3681
3682 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
3683
3684 * window.c (Fset_window_configuration): Be careful when you choose
3685 among several possible points for the new_current_buffer.
3686
3687 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3688
3689 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
3690 poll_for_input_1. Set interrupt_input_pending to 1 instead.
3691 (Qlanguage_change) [MAC_OS]: New variable.
3692 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
3693 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
3694
3695 * macterm.c (mac_keyboard_text_encoding)
3696 (current_mac_keyboard_text_encoding): Remove variables.
3697 (XTread_socket): Store language-change event if keyboard script change
3698 is detected. Don't convert input to `mac_keyboard_text_encoding'.
3699 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
3700
3701 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
3702
3703 2005-04-10 Richard M. Stallman <rms@gnu.org>
3704
3705 * emacs.c (standard_args): Rename --bare-bones to --quick.
3706 Add -D aka --basic-display.
3707
3708 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
3709
3710 2005-04-09 Richard M. Stallman <rms@gnu.org>
3711
3712 * keymap.c (where_is_internal): Convert a string used as event type
3713 into "(any string)".
3714
3715 * lread.c (Vloads_in_progress): Not static.
3716 * fns.c (Vloads_in_progress): Add extern.
3717 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
3718
3719 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
3720
3721 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
3722
3723 2005-04-09 Lute Kamstra <lute@gnu.org>
3724
3725 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
3726 within the accessible part of the buffer.
3727
3728 2005-04-09 Kim F. Storm <storm@cua.dk>
3729
3730 * lread.c (readevalloop): Add args START and END as region in
3731 current buffer to read. Callers changed.
3732 When specified, narrow to this region only when reading,
3733 not during eval. Track next point to read from during eval.
3734 Also restore point to "real" buffer position before eval.
3735 (Feval_region): Don't save excursion and restriction here, and
3736 don't narrow to region. Just pass region to readevalloop.
3737 Note: Point is now preserved even when PRINTFLAG is nil.
3738
3739 2005-04-08 Kim F. Storm <storm@cua.dk>
3740
3741 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
3742
3743 2005-04-06 Kim F. Storm <storm@cua.dk>
3744
3745 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
3746
3747 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3748
3749 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
3750 (Fmac_get_preference): Doc fix.
3751
3752 * macfns.c (Fx_create_frame, x_create_tip_frame):
3753 Add "fontset-mac" to fallback font/fontsets.
3754
3755 2005-04-04 Kim F. Storm <storm@cua.dk>
3756
3757 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
3758
3759 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
3760 Call it again after autoload.
3761
3762 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3763
3764 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
3765 mallopt.
3766
3767 * ralloc.c (r_alloc_init): Ditto.
3768
3769 2005-04-01 Kenichi Handa <handa@m17n.org>
3770
3771 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
3772 (Vascii_eqv_table): Extern them.
3773
3774 * casetab.c (set_case_table): If standard is nonzero, setup
3775 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
3776
3777 * search.c (looking_at_1): Use current_buffer->case_canon_table,
3778 not DOWNCASE_TABLE.
3779 (string_match_1): Likewise.
3780 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
3781 Vascii_downcase_table.
3782 (fast_string_match_ignore_case): Likewise.
3783 (search_buffer): Fix checking of boyer-moore usability.
3784 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
3785 No need of tranlating characters in PAT. Fix calculation of
3786 simple_translate.
3787
3788 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
3789
3790 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
3791 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
3792 Use XtNtopShadowPixel and XtNbottomShadowPixel.
3793 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
3794 really work and that breaks with some versions of Xaw3d.
3795
3796 2005-03-31 Kenichi Handa <handa@m17n.org>
3797
3798 * coding.c (syms_of_coding): Fix previous change.
3799
3800 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
3801
3802 * fileio.c (search_embedded_absfilename): Fix last change.
3803
3804 2005-03-25 Kenichi Handa <handa@m17n.org>
3805
3806 * coding.c (syms_of_coding): Suggest to use set-coding-category in
3807 the docstring of coding-category-list.
3808
3809 2005-03-31 Kim F. Storm <storm@cua.dk>
3810
3811 * keyboard.c (Qmouse_fixup_help_message): New var.
3812 (syms_of_keyboard): Intern and staticpro it.
3813 (show_help_echo): Apply mouse-fixup-help-message to help string.
3814
3815 2005-03-30 Kim F. Storm <storm@cua.dk>
3816
3817 * xdisp.c (display_line): Allow multiple overlay arrows in window.
3818
3819 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
3820
3821 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
3822 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
3823 (Ffile_name_absolute_p): Use it.
3824 (search_embedded_absfilename): New fun, extracted from
3825 Fsubstitute_in_file_name. Use file_name_absolute_p.
3826 Free the pw data after use.
3827 (Fsubstitute_in_file_name): Use it.
3828 After cutting a prefix, re-check file-name-handler.
3829
3830 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
3831
3832 * w32term.h (x_output): Add focus_state.
3833
3834 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
3835 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
3836
3837 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
3838
3839 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
3840 Use Fexit_minibuffer.
3841 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
3842
3843 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3844
3845 * dired.c (Ffile_attributes): Add a missing gcpro.
3846
3847 * alloc.c (make_number): The arg can be bigger than `int'.
3848 * lisp.h (make_number): Make prototype more precise.
3849
3850 * process.c, dired.c (Vfile_name_coding_system)
3851 (Vdefault_file_name_coding_system):
3852 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
3853 (Vdefault_file_name_coding_system): Remove unused declarations.
3854
3855 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3856
3857 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
3858 if it failed to pop up (Gnome "show pointer on ctrl" option makes
3859 menus fail to pop up).
3860
3861 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
3862
3863 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
3864 Just prepend a backslash without replacing the NBSP by an SPC.
3865
3866 2005-03-22 Kim F. Storm <storm@cua.dk>
3867
3868 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
3869 * dispextern.h (lookup_derived_face): Fix prototype.
3870 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
3871
3872 * xdisp.c (handle_single_display_spec): Derive left-fringe and
3873 right-fringe face from fringe face.
3874
3875 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
3876 Derive face from fringe face.
3877
3878 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3879
3880 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
3881
3882 2005-03-22 David Kastrup <dak@gnu.org>
3883
3884 * textprop.c (Fnext_char_property_change)
3885 (Fprevious_char_property_change): Allow marker as limit.
3886 (Fnext_single_char_property_change)
3887 (Fprevious_single_char_property_change): Check that limit is a
3888 number in strings.
3889 (Fnext_single_char_property_change): Coerce position to integer.
3890 (Fprevious_single_char_property_change): Same here.
3891
3892 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
3893
3894 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
3895
3896 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
3897
3898 * frame.c (Fignore_event): Remove.
3899 (syms_of_frame): Don't defsubr it.
3900
3901 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
3902 redundant `ignore-event'.
3903
3904 2005-03-19 Eli Zaretskii <eliz@gnu.org>
3905
3906 * unexec.c (write_segment, unexec): Move these functions to avoid
3907 forward references (which cause errors with "gcc -gcoff").
3908
3909 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3910
3911 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
3912 that it doesn't become "tooltip". The specbind is enough.
3913
3914 * xrdb.c (x_load_resources): Use different char *helv when I18N
3915 is present.
3916
3917 2005-03-17 Kenichi Handa <handa@m17n.org>
3918
3919 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
3920
3921 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3922
3923 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
3924 Use xic_create_fontsetname even for non-Motif menus.
3925 Don't forget to free the fontsetname.
3926
3927 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
3928
3929 2005-03-17 Richard M. Stallman <rms@gnu.org>
3930
3931 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
3932
3933 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
3934 (Fmake_symbolic_link): Use G to read the new file name.
3935
3936 * callint.c (Finteractive): Document G option.
3937 (Fcall_interactively): Implement G option.
3938
3939 * buffer.c (buffer_lisp_local_variables): New function,
3940 broken out from Fbuffer_local_variables.
3941 (clone_per_buffer_values): Use buffer_lisp_local_variables.
3942
3943 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
3944
3945 * xfns.c (xic_create_fontsetname): Add `motif' argument.
3946 Always return a freshly allocated string.
3947 (xic_create_xfontset): Adjust call.
3948
3949 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
3950 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
3951 (dump_realized_face): Fix warning.
3952
3953 * emacs.c (Fkill_emacs): YAILOM.
3954
3955 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
3956
3957 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3958
3959 * mac.c (HASHKEY_TERMINAL): Remove.
3960 (HASHKEY_MAX_NID): New macro.
3961 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
3962 argument.
3963 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
3964 (xrm_create_database, xrm_q_put_resource)
3965 (xrm_merge_string_database, xrm_q_get_resource_1)
3966 (xrm_q_get_resource): Change resource database representation so
3967 that it may not use multiple hash tables for a single database.
3968 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
3969
3970 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
3971
3972 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
3973
3974 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
3975 locale-coding-system, as was already done for WINDOWSNT.
3976
3977 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
3978 translation for chars in the 0-255 range.
3979
3980 2005-03-16 Lute Kamstra <lute@gnu.org>
3981
3982 * floatfns.c (Ffloor): Doc fix.
3983
3984 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3985
3986 * mac.c: Include macterm.h instead of directly including Carbon.h.
3987 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
3988 (Qarray, Qdictionary): New variables.
3989 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
3990 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
3991 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
3992 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
3993 in callback for CFDictionaryApplyFunction.
3994 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
3995 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
3996 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
3997 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
3998 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
3999 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
4000 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
4001 (skip_white_space, parse_comment, parse_include_file)
4002 (parse_binding, parse_component, parse_resource_name, parse_value)
4003 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
4004 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
4005 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
4006 New functions.
4007
4008 * macfns.c (mac_get_rdb_resource): Remove function.
4009 (x_get_string_resource): Use xrm_get_resource.
4010
4011 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
4012
4013 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
4014 name_list_element.
4015 (mac_make_rdb): Create resource database from preferences and
4016 argument string.
4017 (mac_term_init): Save resource database to cddr part of
4018 name_list_element.
4019
4020 * macterm.h (xrm_merge_string_database, xrm_get_resource)
4021 (xrm_get_preference_database): Add externs.
4022 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
4023 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
4024 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
4025
4026 * process.c (init_process): Change `#ifdef DARWIN' to `#if
4027 defined (DARWIN) || defined (MAC_OSX)'
4028
4029 * s/darwin.h (DARWIN): Don't define.
4030
4031 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4032
4033 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
4034 Remove unused variables.
4035 (syms_of_macfns): Don't initialize them. Likewise for
4036 Qface_set_after_frame_default. Defvar and initialize
4037 Vx_window_horizontal_drag_shape.
4038 (x_set_mouse_color): Change mouse pointer shape.
4039 (mac_window) [!MAC_OSX]: Create root control.
4040 (Fx_create_frame): Remove initializations of mouse pointer shapes.
4041 (hourglass_started): New function (from xfns.c).
4042 (start_hourglass, cancel_hourglass): Put function body in #ifdef
4043 MAC_OSX.
4044 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
4045 indicator for each non-tooltip frame if needed, and show it.
4046 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
4047
4048 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
4049 Controls.h. Use ThemeCursor instead of CursHandle.
4050
4051 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
4052 Remove functions and declarations.
4053 (mac_set_colors): Take argument for saving background color.
4054 All callers changed.
4055 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
4056 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
4057 background color.
4058 (x_update_end, mac_do_track_drag): Don't reset background color.
4059 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
4060 Use SetThemeCursor.
4061 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
4062 indicator control to the upper-right corner of the window.
4063 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
4064 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
4065 (do_window_update): Update controls after updating content area.
4066 (mac_handle_window_event): Remove unused extern.
4067 (XTread_socket): Check both control handle and control part code
4068 to determine whether a scroll bar is clicked. Activate/deactivate
4069 root control instead of contained scroll bar controls.
4070 (make_mac_terminal_frame): Use ThemeCursor constants.
4071
4072 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
4073 New member hourglass_control.
4074 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
4075 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
4076
4077 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4078
4079 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
4080 coincides with that in Apple X11 except `clear', `enter' on
4081 laptops, and fn + `enter' on laptops.
4082
4083 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
4084
4085 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
4086 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
4087 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
4088
4089 * xfns.c (xic_defaut_fontset): New constant.
4090 (xic_create_fontsetname): New function.
4091 Extracted from create_frame_xic. Try to generate a slightly
4092 better fontset.
4093 (xic_create_xfontset): Use it.
4094 (create_frame_xic): Simplify.
4095
4096 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
4097
4098 * fileio.c (Fmake_symbolic_link): Fix last change.
4099
4100 2005-03-11 Richard M. Stallman <rms@gnu.org>
4101
4102 * fileio.c (Frename_file, Fadd_name_to_file)
4103 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
4104 expand the basename of FILE relative to it.
4105
4106 2005-03-11 Kenichi Handa <handa@m17n.org>
4107
4108 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
4109 before calling setup_coding_system so that autoloading of a coding
4110 system work.
4111
4112 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4113
4114 * xfns.c (hourglass_started): New function.
4115
4116 * dispextern.h: Declare hourglass_started.
4117
4118 * keyboard.c (Fexecute_extended_command): Restart hourglass
4119 after call to Fcompleting_read if already started.
4120
4121 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
4122 GTK main loop is entered in xterm.c, thus doing the redraw.
4123
4124 2005-03-10 Kim F. Storm <storm@cua.dk>
4125
4126 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
4127
4128 2005-03-08 Kenichi Handa <handa@m17n.org>
4129
4130 * frame.c (x_set_font): Call set_default_ascii_font if an
4131 available font is found.
4132
4133 * fontset.c (set_default_ascii_font): New function.
4134 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
4135
4136 * fontset.h (set_default_ascii_font): Extern it.
4137
4138 2005-03-07 Kim F. Storm <storm@cua.dk>
4139
4140 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
4141 (clear_image_cache_count): New var.
4142 (redisplay_internal): Don't clear face and image caches in the
4143 middle of redisplay; do it afterwards.
4144
4145 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
4146
4147 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
4148 is valid. If not, clear phys_cursor_on_p and return.
4149
4150 2005-03-07 Andreas Schwab <schwab@suse.de>
4151
4152 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
4153
4154 2005-03-06 Richard M. Stallman <rms@gnu.org>
4155
4156 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
4157
4158 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
4159 (Feval, Ffuncall): Use CHECK_CONS_LIST.
4160
4161 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
4162
4163 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
4164 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
4165
4166 2005-03-05 Juri Linkov <juri@jurta.org>
4167
4168 * emacs.c (USAGE1): Replace Info node name "command arguments"
4169 with "emacs invocation".
4170 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
4171 allow arguments `--color' and `MODE' to be separated by space.
4172 Add --no-blinking-cursor, -nbc.
4173 (standard_args): Add -nbc, --no-blinking-cursor.
4174
4175 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4176
4177 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
4178 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
4179 * fileio.c (Fexpand_file_name) [VMS]:
4180 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
4181 * doc.c (munge_doc_file_name) [VMS]: Likewise.
4182 (Fsnarf_documentation): Call munge_doc_file_name.
4183
4184 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
4185
4186 * s/vms.h (FILE_SYSTEM_CASE): New macro.
4187 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
4188 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
4189
4190 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4191
4192 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
4193 defined (MAC_OSX) && defined (HAVE_CARBON)'.
4194
4195 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
4196
4197 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4198 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
4199 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
4200 (mac_clear_font_name_table): Move extern to macterm.h.
4201
4202 * macfns.c (install_window_handler): Move extern to macterm.h.
4203 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
4204 valid. Don't check !NILP (dir) because it is already checked with
4205 CHECK_STRING.
4206 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
4207 specifying the default location and obtaining the selected filename.
4208
4209 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
4210
4211 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
4212 are included via Carbon.h.
4213
4214 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
4215 Define USE_CARBON_EVENTS to 1.
4216 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
4217 (x_free_frame_resources): Call remove_window_handler for
4218 non-tooltip windows.
4219 [TARGET_API_MAC_CARBON]: Don't include headers that are included
4220 via Carbon.h.
4221 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
4222 (mac_do_receive_dragUPP): New variables.
4223 (mac_handle_service_event, init_service_handler): Put declarations
4224 and definitions in #ifdef MAC_OSX.
4225 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
4226 drag-and-drop handler functions and register them.
4227 (remove_window_handler): New function.
4228 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
4229 Use fsspec_to_posix_pathname.
4230 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
4231 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
4232 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
4233 Set default cursors.
4234 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
4235 init_service_handler or init_quit_char_handler.
4236 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
4237
4238 * macterm.h (install_window_handler, remove_window_handler)
4239 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
4240 (mac_clear_font_name_table): New externs.
4241
4242 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4243
4244 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
4245 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
4246 (Fexpand_file_name): Likewise.
4247
4248 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
4249
4250 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
4251 no longer special-case VMS. Add bogus return value.
4252
4253 2005-03-02 Kim F. Storm <storm@cua.dk>
4254
4255 * dispextern.h (XASSERTS): Define to 0 if not already defined.
4256 (xassert) [!XASSERTS]: Define dummy version.
4257
4258 2005-03-02 Kim F. Storm <storm@cua.dk>
4259
4260 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
4261 Reported by David Kastrup.
4262
4263 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
4264
4265 * xdisp.c (get_next_display_element): Fix control and escape
4266 glyph from display vector.
4267
4268 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
4269
4270 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
4271
4272 2005-02-27 Richard M. Stallman <rms@gnu.org>
4273
4274 * xdisp.c (fast_find_position): Rename END to BEG.
4275 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
4276
4277 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4278
4279 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
4280 gtk_window_resize and x_wm_set_size_hint.
4281
4282 2005-02-25 Kim F. Storm <storm@cua.dk>
4283
4284 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
4285
4286 * xdisp.c (init_from_display_pos): Don't read past end of
4287 it->overlay_strings array.
4288
4289 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
4290
4291 * buffer.c (syms_of_buffer): Fix typo.
4292
4293 2005-02-23 Lute Kamstra <lute@gnu.org>
4294
4295 * buffer.c (Foverlay_buffer): Doc fix.
4296
4297 2005-02-22 Kim F. Storm <storm@cua.dk>
4298
4299 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
4300 and symbol keys in alists and hash tables.
4301
4302 * xdisp.c (fast_find_position): Fix search for start of overlay.
4303
4304 2005-02-21 Kim F. Storm <storm@cua.dk>
4305
4306 * window.c (window_scroll_pixel_based): When scrolling backwards,
4307 handle partial visible line at end of window even when we hit PT.
4308
4309 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
4310
4311 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
4312
4313 2005-02-21 Kim F. Storm <storm@cua.dk>
4314
4315 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
4316 I think those asserts are bogus if buffer contains invisible text
4317 or images.
4318
4319 2005-02-21 David Kastrup <dak@gnu.org>
4320
4321 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
4322
4323 2005-02-20 Kim F. Storm <storm@cua.dk>
4324
4325 * xdisp.c (pos_visible_p): Be sure to move to the specified
4326 position. Always get the full ascent / descent of the
4327 corresponding row, to return reliable rtop and rbot values.
4328 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
4329 Must look one character back, as back_to_previous_line_start
4330 returns position after the newline.
4331 (move_it_vertically_backward): Fix heuristic for when to move further
4332 back in case line_height * 2/3 is larger than window height.
4333 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
4334 as it does not do anything anymore. Add arg current_matrix_p to
4335 use current matrix rather than desired matrix when set.
4336 (try_cursor_movement): Don't scroll to make cursor row fully
4337 visible if cursor didn't move. This avoids unexpected recentering
4338 in case of blinking cursor or accepting process output.
4339 Use current matrix to check cursor row visibility.
4340 (redisplay_window): Fix whether to recenter or move to top in case
4341 cursor line is taller than window height.
4342 (find_first_unchanged_at_end_row): Stop search if we reach a row
4343 which not enabled (instead of abort).
4344
4345 2005-02-18 Kim F. Storm <storm@cua.dk>
4346
4347 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
4348 to be nil in a :box attribute value list; customize prints that
4349 as lisp value when no box color is specified.
4350
4351 * .gdbinit (pitx, pit): Pretty print display iterator.
4352 (prowx, prow): Pretty print glyph row.
4353 (pcursorx, pcursor): Pretty print a window cursor.
4354 (pwinx, pwin): Pretty print struct window.
4355
4356 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
4357
4358 * alloc.c (BLOCK_BYTES): Harmless typo.
4359
4360 2005-02-17 Andreas Schwab <schwab@suse.de>
4361
4362 * xfns.c (hack_wm_protocols): Use correct type for last parameter
4363 of XGetWindowProperty to avoid aliasing issues.
4364 (Fx_window_property): Likewise.
4365
4366 * xselect.c (Fx_disown_selection_internal): Use union of struct
4367 input_event and struct selection_input_event to avoid aliasing issues.
4368
4369 * xterm.c (handle_one_xevent): Use union of struct input_event and
4370 struct selection_input_event to avoid aliasing issues.
4371 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
4372
4373 2005-02-17 Kim F. Storm <storm@cua.dk>
4374
4375 * dispextern.h (enum it_method): New enum.
4376 (GET_FROM_*): Its members.
4377 (struct it): Change member method from function pointer to enum.
4378
4379 * xdisp.c (check_it, init_from_display_pos, handle_stop)
4380 (setup_for_ellipsis, handle_single_display_spec)
4381 (handle_composition_prop, next_overlay_string)
4382 (get_overlay_strings, reseat_1, reseat_to_string)
4383 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
4384 (in_display_vector_p, display_line, get_next_display_element):
4385 Change it->method from function pointer to enum.
4386 (get_next_element): New array to map it->method to function.
4387 (get_next_display_element): Use it.
4388 (set_iterator_to_next): Use switch instead of if/else chain.
4389
4390 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
4391
4392 * w32select.c: Summary: Thorough rework to implement Unicode
4393 clipboard operations and delayed rendering.
4394
4395 Drop last_clipboard_text and related code, keep track of
4396 ownership via clipboard_owner instead. Drop old #if0 sections.
4397
4398 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
4399 (clipboard_owner, modifying_clipboard, cfg_coding_system)
4400 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
4401 (current_coding_system, current_requires_encoding)
4402 (current_num_nls, current_clipboard_type, current_lcid):
4403 New static variables.
4404
4405 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
4406 (render, render_all, run_protected, lisp_error_handler)
4407 (owner_callback, create_owner, setup_config)
4408 (enum_locale_callback, cp_from_locale, coding_from_cp):
4409 New local functions.
4410
4411 (term_w32select, globals_of_w32select): New global functions.
4412
4413 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
4414 clipboard_owner instead. Use delayed rendering and provide
4415 all text formats. Provide CF_LOCALE if necessary.
4416
4417 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
4418 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
4419 available. Force DOS line-ends for decoding.
4420
4421 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
4422
4423 (syms_of_w32select): Init and register new variables.
4424
4425 * w32.h: Add prototypes for globals_of_w32select and
4426 term_w32select. Make the neighboring K&R declarations into
4427 prototypes, too.
4428
4429 * emacs.c: Include w32.h to get function prototypes.
4430 (main): Call globals_of_w32select.
4431
4432 * w32.c (term_ntproc): Call term_w32select.
4433
4434 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
4435
4436 2005-02-16 Kim F. Storm <storm@cua.dk>
4437
4438 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
4439 at end of display vector.
4440
4441 2005-02-15 Richard M. Stallman <rms@gnu.org>
4442
4443 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
4444 for mode and header lines.
4445
4446 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
4447
4448 * keymap.h (describe_map_tree): Change decl.
4449
4450 * keyboard.c (command_loop_1): Always use safe_run_hooks
4451 to run Qdeferred_action_function.
4452
4453 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
4454 (describe_map, describe_vector): Likewise. When it's 1,
4455 don't omit shadowed bindings, instead mark them as shadowed.
4456
4457 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
4458 for describe_map_tree. Pass 1 for MENTION_SHADOW.
4459
4460 * data.c (Fsetq_default): Allow no arg case.
4461
4462 2005-02-14 Kenichi Handa <handa@m17n.org>
4463
4464 * coding.c (encode_coding_string): Always return a unibyte string.
4465 If NOCOPY is nonzero and there's no need of encoding, make STR
4466 unibyte directly.
4467
4468 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
4469 multibyte string, signal an error instead of aborting.
4470
4471 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
4472
4473 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
4474
4475 2005-02-12 Kim F. Storm <storm@cua.dk>
4476
4477 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
4478
4479 2005-02-10 Kim F. Storm <storm@cua.dk>
4480
4481 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
4482 if it moves outside window or it doesn't display text.
4483
4484 2005-02-09 Kim F. Storm <storm@cua.dk>
4485
4486 * undo.c (Fprimitive_undo): Check that undo function does not
4487 switch buffer.
4488
4489 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4490
4491 * xselect.c (selection_data_to_lisp_data): For the special case
4492 type == XA_ATOM, data contains array of int, not array of Atom.
4493 (x_property_data_to_lisp, selection_data_to_lisp_data):
4494 Comment update: data must be array of int for format == 32.
4495
4496 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
4497
4498 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
4499
4500 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4501
4502 * xfns.c (Fx_change_window_property): Use long array when format is 32.
4503 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
4504 convert long array returned from XGetWindowProperty to an int array.
4505 (x_set_tool_bar_lines): Check that width and height is greater than
4506 zero before clearing area.
4507
4508 * xselect.c (x_reply_selection_request): Pass long array to
4509 XChangeProperty so that 64 bit longs are handeled correctly.
4510 (x_get_window_property): If format is 32 and long is bigger than 32
4511 bits convert data from XGetWindowProperty from long array to int array.
4512 (lisp_data_to_selection_data): When the input is a vector and the
4513 format is 32, allocate a long array even if long is bigger than 32 bits.
4514 (x_fill_property_data): Use char, short and long as the man page
4515 for XChangeProperty specifies. This way the data returned is OK for
4516 both 32 and 64 bit machines.
4517 (x_handle_dnd_message): Calculate size correctly even for 64 bit
4518 machines.
4519 (Fx_send_client_event): Undo change from 2005-02-05,
4520 x_fill_property_data now handles that case.
4521
4522 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
4523 reason for the approach in the code.
4524
4525 2005-02-07 Kim F. Storm <storm@cua.dk>
4526
4527 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
4528
4529 2005-02-06 Richard M. Stallman <rms@gnu.org>
4530
4531 * eval.c (Frun_hook_with_args)
4532 (Frun_hook_with_args_until_success)
4533 (Frun_hook_with_args_until_failure): Doc fixes.
4534
4535 2005-02-05 Andreas Schwab <schwab@suse.de>
4536
4537 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
4538
4539 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4540
4541 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
4542 the longs in a XClientMessageEvent correctly when long is 64 bits.
4543
4544 2005-02-05 Eli Zaretskii <eliz@gnu.org>
4545
4546 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
4547 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
4548
4549 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4550
4551 * xmenu.c (menubar_selection_callback): Force out GTK buffered
4552 events so the menu event comes after them. This is to prevent sit-for
4553 from exiting on buffered events directly after a menu selection,
4554 lisp code for Help => About Emacs uses sit-for.
4555
4556 * gtkutil.c (create_menus): Connect selection-done event instead of
4557 the deactivate event to deactivate_cb. This will make the last
4558 leave event come before the call to deactivate_cb, so the leave
4559 event does not make sit-for exit after a menu selection.
4560
4561 2005-02-03 Kim F. Storm <storm@cua.dk>
4562
4563 * dispnew.c (build_frame_matrix_from_leaf_window)
4564 [!GLYPH_DEBUG]: Fix xassert.
4565
4566 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
4567
4568 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
4569
4570 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4571
4572 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
4573 the compiling OS version.
4574
4575 * macfns.c (x_create_tip_frame): Likewise.
4576
4577 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
4578
4579 2005-02-03 Richard M. Stallman <rms@gnu.org>
4580
4581 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
4582
4583 * xdisp.c (echo_area_display): Clear echo_message_buffer.
4584
4585 * buffer.c (Fbury_buffer): Doc fix.
4586
4587 2005-02-02 Steven Tamm <steventamm@mac.com>
4588
4589 * macfns.c (unwind_create_frame): Fix compile error due to
4590 xassert being uncondition, but predicate is.
4591 * dispnew.c (update_window): Fix compile error due to
4592 xassert being uncondition, but predicate is.
4593
4594 2005-02-02 Miles Bader <miles@gnu.org>
4595
4596 * dispextern.h (xassert): Enable unconditionally.
4597
4598 2005-02-02 Kim F. Storm <storm@cua.dk>
4599
4600 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
4601
4602 2005-02-02 Kenichi Handa <handa@m17n.org>
4603
4604 * casefiddle.c (casify_object): Enable changing characters of
4605 different byte length.
4606 (casify_region): Fix loop condition, args to replace_range_2, and
4607 update opoint_byte.
4608
4609 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
4610
4611 2005-02-01 Kim F. Storm <storm@cua.dk>
4612
4613 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
4614 stack before calling handle_display_prop.
4615
4616 2005-01-31 Kim F. Storm <storm@cua.dk>
4617
4618 * undo.c (Qapply): New lisp var.
4619 (syms_of_undo): Intern and staticpro it.
4620 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
4621 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
4622
4623 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4624
4625 2005-01-30 Jesper Harder <harder@phys.au.dk>
4626
4627 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
4628 <mac-emulate-three-button-mouse>: Fix docstring indentation.
4629
4630 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
4631
4632 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
4633 Increase value to 3 Meg.
4634
4635 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4636
4637 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
4638 button events are not received otherwise.
4639
4640 2005-01-29 Richard M. Stallman <rms@gnu.org>
4641
4642 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
4643
4644 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
4645
4646 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
4647
4648 * keymap.c (access_keymap): YAILOM.
4649
4650 2005-01-27 Kim F. Storm <storm@cua.dk>
4651
4652 * xdisp.c (get_phys_cursor_geometry): New function to calculate
4653 phys cursor position and size for hollow cursor. Position is
4654 aligned with get_glyph_string_clip_rect and ensures that a hollow
4655 cursor is shown, even when the actual glyph is not visible.
4656
4657 * dispextern.h (get_phys_cursor_geometry): Add prototype.
4658
4659 * xterm.c (x_clip_to_row): Ensure y >= 0.
4660 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4661
4662 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4663
4664 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
4665
4666 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
4667
4668 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
4669
4670 2005-01-27 Kim F. Storm <storm@cua.dk>
4671
4672 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
4673 glyph, even when row is only partially visible and actual cursor
4674 position is not visible.
4675
4676 2005-01-24 Richard M. Stallman <rms@gnu.org>
4677
4678 * xterm.c (x_error_quitter): No longer static, and moved after
4679 x_error_handler.
4680
4681 2005-01-24 Kim F. Storm <storm@cua.dk>
4682
4683 * xdisp.c (move_it_by_lines): If we move forward after going too
4684 far back, cancel move if end position is same as start position.
4685
4686 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4687
4688 * dispextern.h (struct glyph_string): New members clip_head and
4689 clip_tail.
4690
4691 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
4692 region to the area between clip_head and clip_tail.
4693 (draw_glyphs): Record the area that need to be actually redrawn to
4694 the new variables clip_head and clip_tail when there are
4695 overhangs. Set values of these variables to the corresponding
4696 members in struct glyph_string. Refine x coordinates for
4697 notice_overwritten_cursor using clip_head and clip_tail.
4698
4699 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
4700
4701 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
4702 QDTextBounds.
4703 (x_draw_glyph_string): Don't fill the background of the successor
4704 of a glyph with a right overhang if the successor will draw a cursor.
4705 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
4706 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
4707
4708 2005-01-24 Kim F. Storm <storm@cua.dk>
4709
4710 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
4711 direction if window height was smaller than next-screen-context-lines.
4712 Now always scroll at least one line in the requested direction.
4713 Ensure that we actually do scroll backwards when requested to do so.
4714
4715 * xdisp.c (redisplay_window): Only try to make cursor line fully
4716 visible once (to avoid redisplay loop).
4717
4718 2005-01-23 Kim F. Storm <storm@cua.dk>
4719
4720 * window.c (Fpos_visible_in_window_p): Simplify return value for
4721 partially visible rows.
4722 (window_scroll_pixel_based): Adapt to that change.
4723
4724 * window.c (window_scroll_pixel_based): Force moving to next line
4725 if scrolling doesn't move start point, e.g. if looking at tall image.
4726
4727 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
4728 Clear last_height before calling line_bottom_y to get real height.
4729 Fix calculation of y.
4730
4731 2005-01-22 Steven Tamm <steventamm@mac.com>
4732
4733 * s/darwin.h: Removed PTY_ITERATION from here.
4734 (DARWIN): Define.
4735
4736 * process.c (init_process): Default process-connection-type to
4737 nil on darwin 6 or less, t if it is 7 or higher. This way the
4738 broken pty behavior is still allowed on darwin 6 for interactive
4739 processes for people that know what they are doing.
4740
4741 2005-01-22 Kim F. Storm <storm@cua.dk>
4742
4743 * window.c (auto_window_vscroll_p): New boolean.
4744 (syms_of_window): DEFVAR_BOOL it.
4745 (Fpos_visible_in_window_p): Extend return value to include RTOP
4746 and RBOT values if FULLY is nil.
4747 (window_scroll_pixel_based): Adjust vscroll for partially visible
4748 rows if auto_window_vscroll_p is set.
4749 (Fset_window_vscroll): Do nothing if vscroll is not modified.
4750
4751 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
4752 to return number of partially invisible pixels at top and bottom
4753 of the dislay row at POS.
4754
4755 * lisp.h (pos_visible_p): Fix prototype.
4756
4757 2005-01-21 Richard M. Stallman <rms@gnu.org>
4758
4759 * fileio.c (Fcopy_file): Doc fix.
4760
4761 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4762
4763 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
4764 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
4765 start of function for older compilers.
4766
4767 2005-01-20 Richard M. Stallman <rms@gnu.org>
4768
4769 * editfns.c (Fmessage): If arg is "", return "" (as before).
4770
4771 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
4772
4773 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
4774 variable.
4775
4776 2005-01-20 Steven Tamm <steventamm@mac.com>
4777
4778 * editfns.c (Voperating_system_release): Add.
4779 (init_editfns): Assign new variable operating-system-release
4780 based on call to uname if available.
4781 (get_operating_system_release): Add function to
4782 allow c-level access to operating system release.
4783
4784 * config.h: Regenerated.
4785
4786 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
4787 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
4788 using ptys as '7'.
4789
4790 2005-01-20 Kim F. Storm <storm@cua.dk>
4791
4792 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
4793
4794 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
4795 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
4796
4797 * macterm.c (x_draw_glyph_string_box): Likewise.
4798
4799 * w32term.c (x_draw_glyph_string_box): Likewise.
4800
4801 * indent.c (Fvertical_motion): Temporarily disable selective display.
4802
4803 2005-01-19 Kim F. Storm <storm@cua.dk>
4804
4805 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
4806 image property.
4807
4808 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
4809
4810 2005-01-18 Kim F. Storm <storm@cua.dk>
4811
4812 * xdisp.c (fast_find_position): Backtrack to find first row if
4813 charpos is inside a display overlay that spans multiple lines.
4814
4815 2005-01-18 Kenichi Handa <handa@m17n.org>
4816
4817 * coding.c (decode_coding_iso2022): Translate invalid codes if
4818 translation-table is specified.
4819
4820 2005-01-18 Kim F. Storm <storm@cua.dk>
4821
4822 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
4823 change. If handle_display_prop indicates newline is replaced by
4824 image or text, move back to start of relevant overlay or interval
4825 and continue scan from there. Simplify.
4826
4827 2005-01-17 Kim F. Storm <storm@cua.dk>
4828
4829 * dispnew.c (mode_line_string, marginal_area_string):
4830 Fix off-by-one error in search for glyph.
4831
4832 2005-01-16 Kim F. Storm <storm@cua.dk>
4833
4834 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
4835
4836 2005-01-16 Steven Tamm <steventamm@mac.com>
4837
4838 * macterm.c (mac_to_x_fontname): Remove spurious argument.
4839
4840 2005-01-16 Andreas Schwab <schwab@suse.de>
4841
4842 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
4843
4844 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4845
4846 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
4847 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
4848
4849 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4850
4851 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
4852 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
4853 New flags for readable_events.
4854 (get_filtered_input_pending, readable_filtered_events): Remove.
4855 (tracking_off): Call readable_events and get_input_pending with
4856 flag READABLE_EVENTS_DO_TIMERS_NOW.
4857 (readable_events): Move code from old readable_filtered_events here,
4858 but check new READABLE_EVENTS_* in argument flags instead of previous
4859 two boolean arguments do_timers_now and filter_events.
4860 If we are doing mouse tracking and the mouse moved, return only if
4861 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
4862 (swallow_events): Call get_input_pending with flag
4863 READABLE_EVENTS_DO_TIMERS_NOW.
4864 (get_input_pending): Move code from old get_filtered_input_pending
4865 here. Replace boolean arguments do_timers_now, filter_events with
4866 flags, and pass flags to readable_events. Document new
4867 READABLE_EVENTS_* flags.
4868 (detect_input_pending_ignore_squeezables): New function.
4869 (detect_input_pending_run_timers): Call get_input_pending with flag
4870 READABLE_EVENTS_DO_TIMERS_NOW.
4871 (Finput_pending_p): Call get_input_pending with flags
4872 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
4873
4874 * dispnew.c (update_window, update_frame_1): Replace calls to
4875 detect_input_pending with detect_input_pending_ignore_squeezables
4876 so that redisplay is not paused if the event queue contains only
4877 mouse movements.
4878
4879 * lisp.h: Declare detect_input_pending_ignore_squeezables.
4880
4881 2005-01-15 Steven Tamm <steventamm@mac.com>
4882
4883 * macterm.c (Vmac_use_core_graphics): Declare variable for
4884 mac-allow-anti-aliasing.
4885 (syms_of_macterm): DEFVAR_LISP and initialize it.
4886 (mac_draw_string_common): Use core graphics text rendering if
4887 mac-allow-anti-aliasing is enabled.
4888
4889 * macfns.c (Fx_file_dialog): Save As dialog includes only the
4890 file name in the text box.
4891
4892 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4893
4894 * macfns.c (x_set_foreground_color, x_set_background_color):
4895 Sync with xfns.c.
4896 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
4897 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
4898 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
4899
4900 2005-01-14 Kim F. Storm <storm@cua.dk>
4901
4902 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
4903
4904 2005-01-13 Richard M. Stallman <rms@gnu.org>
4905
4906 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
4907 if Voverriding_terminal_local_map is non-nil.
4908
4909 * keyboard.c (syms_of_keyboard): Doc fix.
4910
4911 2005-01-13 Kim F. Storm <storm@cua.dk>
4912
4913 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
4914 (specify 0 for FACE instead). Reorder arg list. Doc fix.
4915
4916 2005-01-12 Richard M. Stallman <rms@gnu.org>
4917
4918 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
4919 face property for characters that don't specify one.
4920
4921 * fns.c (Frequire): Record in load-history unconditionally.
4922
4923 2005-01-10 Kim F. Storm <storm@cua.dk>
4924
4925 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
4926
4927 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
4928 Callers changed.
4929 Add support to merge with lisp face id too (if face_name is t).
4930
4931 * xdisp.c (get_next_display_element, next_element_from_display_vector):
4932 Don't lookup lface_id from display table glyphs here; instead use
4933 merge_faces to merge the lisp face id into current face.
4934
4935 2005-01-09 Kim F. Storm <storm@cua.dk>
4936
4937 * dispextern.h (struct it): New member dpvec_face_id.
4938 (merge_into_realized_face): Add prototype.
4939
4940 * xfaces.c (merge_into_realized_face): New function. Used to
4941 merge escape-glyph face or face from display table into current face.
4942
4943 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
4944 (syms_of_xdisp): DEFVAR_LISP it.
4945 (escape_glyph_face): Remove var.
4946 (redisplay_window): Don't initialize it.
4947 (setup_for_ellipsis, get_next_display_element):
4948 Set it->dpvec_face_id to -1.
4949 (get_next_display_element): Test Vshow_nonbreak_escape.
4950 Do not setup escape_glyph_face.
4951 Properly merge escape-glyph face or face from display table with
4952 current face for escape and control characters.
4953 Set it->dpvec_face_id to relevant face id instead of adding it to each
4954 element of display vector.
4955 (next_element_from_display_vector): If it->dpvec_face_id is set,
4956 use that instead of lface_id from glyph itself.
4957
4958 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4959
4960 * xterm.h (struct x_output): New member, toolbar_detached.
4961
4962 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
4963 38.
4964 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
4965 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
4966 (xg_create_tool_bar): Initialize toolbar_detached.
4967 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
4968 toolbar_detached is zero.
4969
4970 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4971
4972 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
4973 gtk_menu_popup if not for_click, so callbacks for the menu are called.
4974
4975 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
4976 (xg_tool_bar_callback, xg_tool_bar_help_callback)
4977 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
4978
4979 * xselect.c (x_get_foreign_selection, x_fill_property_data)
4980 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
4981 XFLOAT_DATA to get extract number from Lisp object.
4982
4983 2005-01-07 Kim F. Storm <storm@cua.dk>
4984
4985 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
4986 Set stop_charpos to current charpos instead of 0.
4987
4988 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
4989
4990 * xdisp.c (Fformat_mode_line): First arg now required.
4991
4992 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4993
4994 * macterm.c (XLoadQueryFont): Correctly handle 0 size
4995 font widths that are returned from some Japanese fonts.
4996
4997 2005-01-06 Kim F. Storm <storm@cua.dk>
4998
4999 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
5000 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
5001 (destroy_fringe_bitmap): Set fringe_faces element to nil.
5002 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
5003 fringe_faces array and init elements to nil.
5004 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
5005 non-persistent face id.
5006 (mark_fringe_data): New function for GC.
5007
5008 * alloc.c (mark_fringe_data): Declare extern.
5009 (Fgarbage_collect): Call mark_fringe_data.
5010
5011 * alloc.c (overrun_check_free): Invalidate freed memory if
5012 XMALLOC_CLEAR_FREE_MEMORY is defined.
5013
5014 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5015
5016 * macfns.c: Include sys/param.h.
5017 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
5018 and function.
5019 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
5020 of filename string. Set event callback function when creating
5021 dialog boxes. Add code conversions for filenames. Don't dispose
5022 of apple event descriptor record if failed to create it.
5023
5024 * macterm.c: Include sys/param.h.
5025 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
5026 kEventWindowUpdate.
5027 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
5028 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
5029 of FSSpec from apple event descriptor record.
5030 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
5031 size of filename string.
5032 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
5033 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
5034 file dialog is in action.
5035 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
5036 Reject only when there are no filename items. Set background color
5037 before (un)highlighting the window below the dragged items.
5038 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
5039
5040 2005-01-05 Romain Francoise <romain@orebokech.com>
5041
5042 * term.c (encode_terminal_code): Fix buffer size computation.
5043
5044 2005-01-04 Richard M. Stallman <rms@gnu.org>
5045
5046 * xdisp.c (Fformat_mode_line): Doc fix.
5047
5048 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
5049
5050 * alloc.c (refill_memory_reserve): Move.
5051 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
5052 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
5053
5054 2005-01-03 Richard M. Stallman <rms@gnu.org>
5055
5056 * window.c (window_scroll_pixel_based): Don't correct preserve_y
5057 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
5058
5059 2005-01-03 Jason Rumney <jasonr@gnu.org>
5060
5061 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
5062 fontp->space_width to FONT_WIDTH so they are valid.
5063
5064 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
5065 average width. Set fontp->average_width and fontp->space_width to
5066 their appropriate values.
5067
5068 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
5069 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
5070 fontp->space_width.
5071
5072 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5073
5074 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
5075 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
5076 metrics for max and min bounds.
5077 (x_load_font): Correctly calculate average font width metrics.
5078
5079 2005-01-02 Richard M. Stallman <rms@gnu.org>
5080
5081 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
5082
5083 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5084
5085 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
5086
5087 2004-12-31 Richard M. Stallman <rms@gnu.org>
5088
5089 * xdisp.c (setup_for_ellipsis, get_next_display_element):
5090 Set it->ellipsis_p to 1 or 0.
5091 (display_line): Record whether row ends in mid-ellipsis.
5092 (set_cursor_from_row): If ends in ellipsis, find start of it.
5093 (cursor_row_p): If PT's at the end of the ellipsis the row
5094 ends within, don't display cursor on this row.
5095
5096 * dispextern.h (struct it): New element ellipsis_p.
5097 (struct glyph_row): New element ends_in_ellipsis_p.
5098
5099 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
5100 position if we're reading from something other than the buffer.
5101
5102 * window.c (window_scroll_pixel_based): Only look at
5103 Vscroll_preserve_screen_position if the old PT can't be kept.
5104 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
5105
5106 2004-12-30 Kim F. Storm <storm@cua.dk>
5107
5108 * xdisp.c (get_line_height_property): New function extracted from
5109 original calc_line_height_property.
5110 (calc_line_height_property): Rework. Handle t and (nil . ratio).
5111 (x_produce_glyphs): Use them to handle line-height and
5112 line-spacing according to new height spec.
5113 (Qtotal): Remove.
5114 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
5115
5116 2004-12-30 Kenichi Handa <handa@m17n.org>
5117
5118 * fileio.c (Finsert_file_contents): Don't use
5119 current_buffer->buffer_file_coding_system even if REPLACE is
5120 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
5121
5122 * fontset.h (struct font_info): New members space_width and
5123 average_width.
5124
5125 * frame.h (struct frame): New member space_width.
5126 (FRAME_SPACE_WIDTH): New macro.
5127
5128 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
5129
5130 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
5131 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
5132 fontp->space_width.
5133 (x_load_font): Calculate fontp->space_width and fontp->average_width.
5134 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
5135
5136 * xdisp.c (x_produce_glyphs): Calculate tab width by
5137 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
5138
5139 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
5140
5141 * macterm.c (SelectionRange): Add Xcode position apple event struct.
5142 (do_ae_open_documents): Handle Xcode-style file position open events.
5143
5144 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
5145
5146 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
5147
5148 2004-12-29 Richard M. Stallman <rms@gnu.org>
5149
5150 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
5151
5152 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5153
5154 * macfns.c (install_window_handler): Modify extern to return OSErr
5155 value.
5156 (mac_window): Handle return value of install_window_handler.
5157
5158 * macterm.c (reflect_byte): Remove function.
5159 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
5160 Lookup table instead.
5161 (mac_do_font_lists): Simplify calculation of the longest
5162 nonspecial string.
5163 (init_mac_drag_n_drop): Remove function and declaration.
5164 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
5165 init_mac_drag_n_drop.
5166 (mac_do_track_drag): New function and declaration.
5167 (install_window_handler): Return OSErr value.
5168 (install_window_handler) [TARGET_API_MAC_CARBON]:
5169 Register handlers for tracking/receiving drag-and-drop items.
5170 (do_ae_open_documents): Generate unibyte strings for filenames.
5171 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
5172 Reject only non-filename items. Set event modifiers, and return value.
5173
5174 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5175
5176 * coding.c (decode_coding): Fix previous change.
5177
5178 2004-12-28 Richard M. Stallman <rms@gnu.org>
5179
5180 * xdisp.c (back_to_previous_visible_line_start):
5181 Don't call handle_display_prop.
5182
5183 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
5184
5185 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
5186 (decode_coding_emacs_mule, encode_coding_emacs_mule)
5187 (decode_coding_iso2022, encode_designation_at_bol)
5188 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
5189 (decode_coding): Constify arguments and local vars.
5190
5191 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5192
5193 * xmenu.c (popup_get_selection): Only pop down dialogs
5194 on C-g and Escape.
5195 (popup_get_selection): Remove parameter down_on_keypress.
5196 (create_and_show_popup_menu, create_and_show_dialog):
5197 Remove parameter down_on_keypress to popup_get_selection.
5198
5199 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5200
5201 * dispextern.h: Change HAVE_CARBON to MAC_OS.
5202 (struct glyph_string): Likewise.
5203
5204 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
5205 mac_initialize.
5206
5207 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
5208 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
5209
5210 * fns.c (vector): Change MAC_OSX to MAC_OS.
5211
5212 * frame.c (x_set_frame_parameters, x_report_frame_params)
5213 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
5214 (x_set_border_width, Vdefault_frame_scroll_bars):
5215 Change HAVE_CARBON to MAC_OS.
5216
5217 * image.c [MAC_OS]: Include sys/stat.h.
5218 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
5219 QuickTimeComponents.h.
5220
5221 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
5222 [!MAC_OSX] (select): Use mac_wait_next_event.
5223 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
5224 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
5225 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5226 (mac_clear_font_name_table): Add extern.
5227 (Fmac_clear_font_name_table): New defun.
5228 (syms_of_mac): Defsubr it.
5229 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
5230 [MAC_OSX] (select_and_poll_event): New function.
5231 [MAC_OSX] (sys_select): Use it.
5232 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
5233 [MAC_OSX && SELECT_USE_CFSOCKET]
5234 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
5235 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
5236 RunLoop for simultaneously monitoring two kinds of inputs, window
5237 events and process outputs, without periodically polling.
5238
5239 * macfns.c (mac_initialized): Remove extern.
5240 (stricmp): Put in #if 0. All callers changed to use xstricmp in
5241 xfaces.c.
5242 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
5243 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
5244 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
5245 (mac_get_rdb_resource): New function (from w32reg.c).
5246 (x_get_string_resource): Use it.
5247 (install_window_handler): Add extern.
5248 (mac_window): New function.
5249 (Fx_create_frame): Use it instead of make_mac_frame.
5250 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
5251 (Fx_open_connection, Fx_close_connection): New defuns.
5252 (syms_of_macfns): Defsubr them.
5253 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
5254 Add kWindowNoUpdatesAttribute to the window attribute.
5255 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
5256 (x_create_tip_frame): Don't call ShowWindow.
5257 (Fx_show_tip): Call ShowWindow.
5258 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
5259 TARGET_API_MAC_CARBON'.
5260 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
5261 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
5262
5263 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
5264 (Window): Typedef to WindowPtr and move outside `#if
5265 TARGET_API_MAC_CARBON'.
5266 (XSizeHints): New struct.
5267
5268 * macterm.c (x_update_begin, x_update_end)
5269 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
5270 frame.
5271 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5272 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
5273 (construct_mouse_click): Put in #if 0.
5274 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
5275 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
5276 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
5277 (activate_scroll_bars, deactivate_scroll_bars)
5278 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
5279 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
5280 if the position is neither user-specified nor program-specified.
5281 (x_free_frame_resources): Free size_hints.
5282 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
5283 (mac_clear_font_name_table): New function.
5284 (mac_do_list_fonts): Initialize font_name_table if needed.
5285 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
5286 around mac_do_list_fonts.
5287 (mac_unload_font): New function.
5288 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
5289 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
5290 and definitions with #if TARGET_API_MAC_CARBON.
5291 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
5292 (install_window_handler): Add decl.
5293 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
5294 window. Use UpdateControls. Get the rectangle that should be
5295 updated and restrict the target of expose_frame to it.
5296 (do_grow_window): Set minimum height/width according to size_hints.
5297 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
5298 (do_zoom_window): Don't use x_set_window_size.
5299 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
5300 (install_window_handler): New function.
5301 [!USE_CARBON_EVENTS] (mouse_region): New variable.
5302 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
5303 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
5304 GetEventDispatcherTarget inside BLOCK_INPUT.
5305 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
5306 Update mouse_region when mouse is moved.
5307 (make_mac_frame): Remove.
5308 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
5309 Initialize mouse pointer shapes. Change values of f->left_pos and
5310 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
5311 Don't call ShowWindow.
5312 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
5313 Vinvocation_name and Vsystem_name.
5314 (mac_make_rdb): New function (from w32term.c).
5315 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
5316 already been opened. Don't pass argument to
5317 mac_initialize_display_info. Don't set dpyinfo->height/width.
5318 Add entries to x_display_list and x_display_name_list.
5319 (x_delete_display): New function.
5320 (mac_initialize): Don't call mac_initialize_display_info.
5321 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
5322
5323 * macterm.h (check_mac): Add extern.
5324 (struct mac_output): New member size_hints.
5325 (FRAME_SIZE_HINTS): New macro.
5326 (mac_unload_font): Add extern.
5327
5328 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
5329
5330 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
5331
5332 2004-12-27 Richard M. Stallman <rms@gnu.org>
5333
5334 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
5335 (syms_of_buffer): Don't defsubr it.
5336
5337 * process.c (list_processes_1): Set undo_list instead
5338 of calling Fbuffer_disable_undo.
5339
5340 * xdisp.c (single_display_spec_string_p): Rename from
5341 single_display_prop_string_p.
5342 (single_display_spec_intangible_p): Rename from
5343 single_display_prop_intangible_p.
5344 (handle_single_display_spec): Rename from handle_single_display_prop.
5345 Rewritten to be easier to understand.
5346
5347 Change in load-history format. Functions now get (defun . NAME),
5348 and variables get just NAME.
5349
5350 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5351
5352 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
5353 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
5354 (Qdefvar): Var deleted.
5355 (syms_of_eval): Don't initialze it.
5356
5357 * lread.c (syms_of_lread) <load-history>: Doc fix.
5358
5359 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5360
5361 * xmenu.c (popup_get_selection): Pop down on C-g.
5362 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
5363 pops down menu on C-g.
5364 (xdialog_show): If dialog popped down and no button in the dialog was
5365 pushed, call Fsignal to quit.
5366 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
5367 Fsignal to quit.
5368
5369 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
5370
5371 * gtkutil.c (xg_initialize): Install bindings for C-g so that
5372 dialogs and menus pop down.
5373
5374 2004-12-27 Kenichi Handa <handa@m17n.org>
5375
5376 * coding.c (code_convert_region): Fix calculation of `ratio'.
5377
5378 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5379
5380 * gtkutil.c (update_frame_tool_bar): Make the value of
5381 tool-bar-button-margin control margins of images in tool bar.
5382
5383 * alloc.c (check_depth): New variable.
5384 (overrun_check_malloc, overrun_check_realloc): Only add
5385 overhead and write check pattern if check_depth is 1 (to handle
5386 recursive calls). Increase/decrease check_depth in entry/exit.
5387 (overrun_check_free): Only check for overhead if check_depth is 1.
5388 Increase/decrease check_depth in entry/exit.
5389
5390 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5391
5392 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
5393 before touching input_available_clear_time, to avoid accessing it
5394 from multiple threads.
5395
5396 2004-12-23 Jason Rumney <jasonr@gnu.org>
5397
5398 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
5399 of JPEG library.
5400
5401 2004-12-22 Richard M. Stallman <rms@gnu.org>
5402
5403 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
5404
5405 * lisp.h (Vundo_outer_limit): Fix decl.
5406
5407 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
5408 Uses changed.
5409 (syms_of_undo): Initialize appropriately.
5410 (truncate_undo_list): If it's nil, there's no limit.
5411
5412 2004-12-22 Kenichi Handa <handa@m17n.org>
5413
5414 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
5415
5416 2004-12-21 Richard M. Stallman <rms@gnu.org>
5417
5418 * eval.c (unwind_to_catch): Clear immediate_quit.
5419
5420 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
5421 specially as `\ ' and `\-'.
5422
5423 * keyboard.c (kbd_buffer_store_event_hold):
5424 In the code for while-no-input, handle immediate_quit.
5425
5426 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
5427 Call that at the very start.
5428 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
5429 (syms_of_alloc): Don't define undo-limit,
5430 undo-strong-limit and undo-outer-limit here.
5431
5432 * undo.c (truncate_undo_list): Return void.
5433 Take just one argument, the buffer.
5434 Make it current, and inhibit recursive GC.
5435 Access and update the undo list directly; return void.
5436 Refer to the undo...limit variables directly.
5437 Test undo_outer_limit only after counting the whole current command.
5438 When it's exceeded, call the function in undo-outer-limit-function.
5439 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
5440 (Vundo_outer_limit_function): New variable.
5441 (syms_of_undo): Define undo-limit, undo-strong-limit
5442 and undo-outer-limit here, and undo-outer-limit-function.
5443 Doc fixes.
5444
5445 * lisp.h (truncate_undo_list): Update decl.
5446
5447 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
5448
5449 * fileio.c (Fread_file_name): Delete duplicates in
5450 file-name-history when history_delete_duplicates is true.
5451
5452 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5453
5454 * macterm.c (mac_do_list_fonts): Fix memory leak
5455
5456 2004-12-20 Richard M. Stallman <rms@gnu.org>
5457
5458 * regex.c (re_match_2_internal) <symend, wordend>:
5459 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
5460
5461 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5462
5463 * macterm.c (endif, x_font_name_to_mac_font_name):
5464 Use maccentraleurroman instead of maccentraleuropean
5465 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
5466 quickly finding a specific font without needing regexps.
5467
5468 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5469
5470 * syssignal.h: Declare main_thread.
5471 (SIGNAL_THREAD_CHECK): New macro.
5472
5473 * keyboard.c (input_available_signal): Move thread checking code
5474 to macro SIGNAL_THREAD_CHECK and call that macro.
5475 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
5476
5477 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
5478
5479 * emacs.c: Define main_thread.
5480 (main): Initialize main_thread.
5481 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
5482 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
5483
5484 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
5485
5486 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
5487
5488 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
5489
5490 * process.c (send_process_trap, sigchld_handler):
5491 Call SIGNAL_THREAD_CHECK.
5492
5493 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
5494
5495 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
5496
5497 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
5498 returning when xg_ignore_gtk_scrollbar is true.
5499
5500 2004-12-14 Kim F. Storm <storm@cua.dk>
5501
5502 * keyboard.c (read_char): Save and restore echo_string when
5503 handling input method.
5504
5505 2004-12-13 Richard M. Stallman <rms@gnu.org>
5506
5507 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
5508
5509 * keyboard.c (Vthrow_on_input): New variable.
5510 (syms_of_keyboard): Defvar and initialize it.
5511 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
5512
5513 * lisp.h (QUIT): Check for Vthrow_on_input.
5514 (Vthrow_on_input): Declare it.
5515
5516 2004-12-13 Kim F. Storm <storm@cua.dk>
5517
5518 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
5519 vector.
5520
5521 2004-12-12 Richard M. Stallman <rms@gnu.org>
5522
5523 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
5524
5525 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
5526 (Ftry_completion): Really use outer `zero'; eliminate inner one.
5527
5528 2004-12-12 Kenichi Handa <handa@m17n.org>
5529
5530 * term.c (encode_terminal_code): Fix previous change.
5531
5532 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
5533
5534 * keyboard.c (handle_async_input): Remove pthread mutex handling.
5535 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
5536
5537 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
5538 in macro arguments.
5539
5540 * minibuf.c (Ftry_completion, Fall_completions): Don't use
5541 XFASTINT blindly.
5542
5543 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
5544
5545 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5546
5547 * w32term.c (x_calc_absolute_position): Remove calculation of
5548 difference between inner and outer window. Don't subtract difference
5549 for left and top calculations.
5550
5551 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
5552 for left and top calculations. Remove call to x_real_positions.
5553 [Bug report by Drew Adams in November]
5554 (x_check_expected_move): Do not set change_gravity to 1 when calling
5555 x_set_offset.
5556
5557 2004-12-08 Richard M. Stallman <rms@gnu.org>
5558
5559 * xdisp.c (get_next_display_element): Use `escape-glyph' for
5560 control chars and escaped octal codes.
5561 (Qescape_glyph): New variable.
5562 (syms_of_xdisp): Initialize it.
5563 (escape_glyph_face): New variable.
5564 (redisplay_window): Initialize it.
5565
5566 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
5567
5568 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
5569 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
5570
5571 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5572
5573 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
5574 reset_malloc_hooks.
5575
5576 * keyboard.c (handle_async_input, input_available_signal):
5577 Add ! defined (SYSTEM_MALLOC) around thread code.
5578
5579 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
5580
5581 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
5582
5583 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
5584
5585 * config.in: Regenerate.
5586
5587 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5588
5589 * xmenu.c (Fx_popup_menu): Correct documentation about position.
5590 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
5591 if not given by a mouse click to correspond with x-popup-menu
5592 documentation.
5593
5594 * config.in: Regenerate.
5595
5596 * gtkutil.c: Include signal.h and syssignal.h.
5597 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
5598
5599 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
5600 new variables main_thread and alloc_mutex,
5601 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
5602 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
5603 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
5604 (UN)BLOCK_INPUT.
5605 (emacs_blocked_free, emacs_blocked_malloc)
5606 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
5607 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
5608 (reset_malloc_hooks): New function.
5609
5610 * lisp.h: Declare reset_malloc_hooks.
5611
5612 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
5613
5614 * keyboard.c: Conditionally include pthread.h
5615 (handle_async_input, input_available_signalt): If not in the main
5616 thread, block signal, send signal to main thread and return.
5617
5618 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
5619 Set current folder in file chooser if default_filename is a directory.
5620
5621 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
5622
5623 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
5624 Remove redundant correctness checks.
5625 (regex_compile): Fix up error codes for \{..\} expressions.
5626
5627 2004-12-05 Richard M. Stallman <rms@gnu.org>
5628
5629 * regex.c (regex_compile): Fix end-of-pattern case for space.
5630
5631 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5632
5633 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
5634 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
5635 crashes with invalid characters.
5636 * macmenu.c (add_menu_item): Use it.
5637 * image.c (image_load_quartz2d): Likewise.
5638 * macfns.c (x_set_name, x_set_title): Likewise.
5639 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
5640 creating them each time for labels.
5641
5642 2004-12-02 Richard M. Stallman <rms@gnu.org>
5643
5644 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
5645 don't use it here.
5646
5647 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
5648 (interactive_p): Skip Scalled_interactively_p frames
5649 like Sinteractive_p frames.
5650 (unwind_to_catch): Clear handling_signal.
5651
5652 * data.c (Fmake_variable_buffer_local): Doc fix.
5653 (Fmake_local_variable): Doc fix.
5654
5655 * insdel.c (insert_from_string_before_markers)
5656 (insert_from_string): Don't modify buffer on empty insertion.
5657
5658 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
5659
5660 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5661
5662 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
5663 menu text as UTF8 fails.
5664
5665 2004-12-01 Kim F. Storm <storm@cua.dk>
5666
5667 * alloc.c: Add commentary for last change.
5668 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
5669 sizeof(size_t) != 4.
5670 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
5671 Use them. Also clear header and trailer of freed memory.
5672 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
5673 (string_overrun_cookie): Rename from string_overrun_pattern.
5674 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
5675
5676 2004-12-01 Andreas Schwab <schwab@suse.de>
5677
5678 * lisp.h: Declare string_to_multibyte.
5679
5680 2004-12-01 Kenichi Handa <handa@m17n.org>
5681
5682 * w32console.c (w32con_write_glyphs): Decide coding here.
5683 Adjusted for the change of encode_terminal_code.
5684
5685 * term.c (encode_terminal_code): Don't make it "static".
5686
5687 2004-11-30 Kenichi Handa <handa@m17n.org>
5688
5689 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
5690 (encode_terminal_code): Argument changed. Encode all
5691 characters at once, and return a pointer to the result of encoding.
5692 (write_glyphs): Decide coding here. Adjusted for the above change.
5693 (insert_glyphs): Likewise.
5694 (term_init): Initialize encode_terminal_bufsize to 0.
5695
5696 * coding.c (Vcode_conversion_workbuf_name): New variable.
5697 (syms_of_coding): Initialize and staticpro it.
5698 (set_conversion_work_buffer): New function.
5699 (run_pre_post_conversion_on_str): Use it.
5700 (run_pre_write_conversin_on_c_str): New function.
5701
5702 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
5703
5704 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5705
5706 * keyboard.c: Don't undef SIGIO
5707 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
5708 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
5709 (macfns.o): Don't depend on ccl.h.
5710 * macfns.c (mac_frame_parm_handlers): Set handlers for
5711 Qleft_fringe and Qright_fringe.
5712 * macterm.c (mac_fill_rectangle_to_pixmap)
5713 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
5714 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
5715 Put in #if 0.
5716 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
5717 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
5718 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
5719 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
5720 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
5721 XDrawImageString. Always draw background and foreground separately.
5722 (x_draw_image_foreground): Use clipping instead of computing the
5723 intersection rectangle.
5724 (x_draw_image_glyph_string): Don't draw an image with mask to a
5725 pixmap.
5726 (x_redisplay_interface): Set flush_display_optional member to 0.
5727 (XTread_socket): Correctly reset the TEConverter
5728 object.
5729
5730 2004-11-30 Kim F. Storm <storm@cua.dk>
5731
5732 * lisp.h: New defines to enable buffer overrun checking.
5733 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
5734 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
5735
5736 * alloc.c: Add more checks for buffer overruns.
5737 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
5738 xmalloc_overrun_check_trailer, overrun_check_malloc)
5739 overrun_check_realloc, overrun_check_free): Add.
5740 (GC_STRING_EXTRA, string_overrun_pattern): Add.
5741 (check_sblock, allocate_string_data, compact_small_strings):
5742 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
5743 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
5744 (check_string_free_list): Add.
5745 (allocate_string, sweep_strings): Call check_string_free_list.
5746
5747 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
5748 XMALLOC_OVERRUN_CHECK to avoid crash during load.
5749
5750 2004-11-29 Kim F. Storm <storm@cua.dk>
5751
5752 * fns.c (concat): Use SAFE_ALLOCA.
5753
5754 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
5755
5756 * sysdep.c (emacs_write): Don't use QUIT.
5757
5758 2004-11-29 Kenichi Handa <handa@m17n.org>
5759
5760 * buffer.c (init_buffer): Set current_buffer->directory to a
5761 multibyte string made by string_to_multibyte.
5762
5763 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
5764
5765 2004-11-27 Andreas Schwab <schwab@suse.de>
5766
5767 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
5768
5769 * s/gnu-linux.h: Enable no-op gcpros on ia64.
5770 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
5771
5772 * filelock.c (lock_file_1): Call get_boot_time early.
5773 Increase buffer size.
5774
5775 2004-11-27 Eli Zaretskii <eliz@gnu.org>
5776
5777 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
5778 is not defined.
5779
5780 2004-11-27 Kim F. Storm <storm@cua.dk>
5781
5782 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
5783 marker out of doc string.
5784
5785 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
5786
5787 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
5788 which was not mentioned in the log.
5789
5790 2004-11-26 Kim F. Storm <storm@cua.dk>
5791
5792 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
5793 angle bitmaps at top/bottom line.
5794
5795 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
5796 set it when it->method is set to next_element_from_display_vector.
5797 (setup_for_ellipsis): Add LEN argument. Callers changed.
5798 Set it->saved_face_id.
5799 (get_next_display_element): Use loop instead of recursion.
5800 Set it->saved_face_id. Combine duplicate code for ctr chars.
5801 (next_element_from_display_vector): Do not set it->saved_face_id.
5802 (next_element_from_ellipsis): Use setup_for_ellipsis.
5803
5804 2004-11-26 Eli Zaretskii <eliz@gnu.org>
5805
5806 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
5807 prevent compiler warnings.
5808
5809 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
5810
5811 * keyboard.c (command_loop_1): Print a message describing the key
5812 the user just pressed when this key has no binding.
5813
5814 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
5815 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
5816
5817 * lread.c (readchar): Check QUIT when `getc' is interrupted.
5818
5819 2004-11-24 Richard M. Stallman <rms@gnu.org>
5820
5821 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
5822
5823 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
5824
5825 2004-11-24 Kim F. Storm <storm@cua.dk>
5826
5827 * xdisp.c (move_it_in_display_line_to, display_line):
5828 Restore saved_face_id also when truncate-lines or hscrolled.
5829
5830 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5831
5832 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
5833 x-use-old-gtk-file-dialog.
5834
5835 * xfns.c: Define x_use_old_gtk_file_dialog.
5836 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
5837 outside ifdef USE_GTK.
5838
5839 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
5840
5841 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
5842 Don't use XFASTINT blindly.
5843
5844 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
5845
5846 * indent.c (skip_invisible): Avoid non-idempotent side-effects
5847 in macro arguments.
5848
5849 * keymap.c (Flookup_key): Check INTEGERP before XINT.
5850
5851 * lread.c (oblookup): Don't use XFASTINT blindly.
5852
5853 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
5854 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
5855
5856 2004-11-23 Kim F. Storm <storm@cua.dk>
5857
5858 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
5859 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
5860
5861 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
5862 signal_p is zero and face name is unknown.
5863 (Fx_list_fonts): Don't signal error in lookup_named_face.
5864 (Fface_font): Signal error in lookup_named_face.
5865 (ascii_face_of_lisp_face): Likewise.
5866
5867 * dispextern.h (lookup_named_face): Fix prototype.
5868
5869 * xdisp.c (handle_single_display_prop): Don't signal error in
5870 lookup_named_face for unknown fringe face name.
5871 (highlight_trailing_whitespace): Don't signal error in
5872 lookup_named_face if trailing-whitespace face unknown.
5873 (calc_line_height_property): Don't signal error in
5874 lookup_named_face if specified face name is unknown.
5875
5876 * fringe.c (update_window_fringes): Show top row indicator if
5877 window has header-line. Don't show arrow at bob and eob
5878 if the boundary indicators are not used.
5879 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
5880
5881 * window.c (set_window_buffer): Clear display_error_modiff.
5882
5883 2004-11-22 Kim F. Storm <storm@cua.dk>
5884
5885 * fringe.c (update_window_fringes): Provide sensible fall-back
5886 value for non-nil indicate-buffer-boundaries setting.
5887
5888 2004-11-22 Markus Rost <rost@ias.edu>
5889
5890 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
5891
5892 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
5893
5894 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
5895
5896 2004-11-21 Kim F. Storm <storm@cua.dk>
5897
5898 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
5899
5900 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
5901 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5902
5903 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
5904 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5905
5906 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
5907 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
5908
5909 * xdisp.c (move_it_in_display_line_to, display_line):
5910 Restore saved_face_id if overflow-newline-into-fringe is enabled and
5911 line is continued before or in middle of element from display vector.
5912
5913 * indent.c (Fvertical_motion): Fix last change. Use another
5914 method to detect if iterator moved too far ahead after reseat.
5915
5916 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
5917 expand matrix width for overflow in zero-width area.
5918 (append_glyph, append_composite_glyph, produce_image_glyph)
5919 (append_stretch_glyph): Use it to avoid loop in redisplay.
5920 (note_mode_line_or_margin_highlight): Don't let help-echo from
5921 string override help-echo from image map.
5922
5923 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
5924
5925 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
5926 * callint.c (Fcall_interactively): Ditto.
5927
5928 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
5929
5930 * minibuf.c (Fminibuffer_complete_and_exit):
5931 Fixup the case of the completed value, for case-indep completion.
5932
5933 2004-11-20 Richard M. Stallman <rms@gnu.org>
5934
5935 * lisp.h (Fread_from_minibuffer): Add arg in decl.
5936
5937 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
5938 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
5939
5940 * search.c (Vsearch_spaces_regexp):
5941 Rename from Vsearch_whitespace_regexp. All uses changed.
5942
5943 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
5944
5945 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
5946
5947 2004-11-19 Richard M. Stallman <rms@gnu.org>
5948
5949 * search.c (Vsearch_whitespace_regexp): New variable.
5950 (syms_of_search): Defvar it.
5951 (compile_pattern_1): Call re_set_whitespace_regexp with it.
5952 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
5953 is non-nil.
5954 (struct regexp_cache): New element whitespace_regexp.
5955 (syms_of_search): Initialize whitespace_regexp elements.
5956 (compile_pattern): Compare whitespace_regexp elements.
5957 (compile_pattern_1): Set whitespace_regexp elements.
5958
5959 * regex.c (regex_compile): Substitute whitespace_regexp
5960 for spaces, if it is nonzero.
5961 (whitespace_regexp): New variable.
5962 (re_set_whitespace_regexp): New function.
5963
5964 2004-11-19 Kim F. Storm <storm@cua.dk>
5965
5966 * indent.c (Fvertical_motion): Fix last change.
5967
5968 2004-11-18 Kim F. Storm <storm@cua.dk>
5969
5970 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
5971 Instead, move back again if reseating moves too far ahead.
5972
5973 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
5974
5975 * xdisp.c (message3): Call clear_message.
5976
5977 2004-11-17 Kim F. Storm <storm@cua.dk>
5978
5979 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
5980
5981 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5982
5983 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
5984
5985 * xmenu.c (x_menu_in_use): Remove.
5986 (x_menu_set_in_use): Also set popup_activated_flag.
5987
5988 * xfns.c (Fx_file_dialog): Call popup_activated instead of
5989 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
5990
5991 * xterm.h (x_menu_in_use): Remove.
5992
5993 2004-11-16 Richard M. Stallman <rms@gnu.org>
5994
5995 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
5996 Use map-keymap-internal to implement that.
5997
5998 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
5999
6000 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
6001
6002 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
6003 a window before using XWINDOW.
6004
6005 * window.c (make_window, Fselect_window, make_dummy_parent)
6006 (save_window_save):
6007 * frame.c (make_frame):
6008 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
6009
6010 * lisp.h (NILP): Use EQ rather than XFASTINT.
6011
6012 2004-11-16 Kim F. Storm <storm@cua.dk>
6013
6014 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
6015
6016 * indent.c (Fvertical_motion): Fix last change. Only reseat when
6017 moving backwards.
6018
6019 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
6020
6021 * dispextern.h: Extern reseat_at_previous_visible_line_start.
6022
6023 2004-11-16 Kenichi Handa <handa@m17n.org>
6024
6025 * xdisp.c (display_mode_element): Fix previous change (calculate
6026 end position of substring to display correctly).
6027
6028 2004-11-16 Kim F. Storm <storm@cua.dk>
6029
6030 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
6031 Reported by Andrew M. Scott.
6032
6033 2004-11-15 Kim F. Storm <storm@cua.dk>
6034
6035 * fns.c (Fsafe_plist_get): New defun.
6036 (syms_of_fns): Defsubr it.
6037
6038 * lisp.h (Fsafe_plist_get): Add EXFUN.
6039
6040 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
6041 Use Fsafe_plist_get.
6042 (note_mode_line_or_margin_highlight, note_mouse_highlight):
6043 Fix image map element parsing. Use Fsafe_plist_get.
6044
6045 2004-11-15 Richard M. Stallman <rms@gnu.org>
6046
6047 * xdisp.c (get_next_display_element): Fix previous change.
6048
6049 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6050
6051 * window.c (shrink_windows): Handle special case of one window left
6052 when trying to shrink the final reminder. Grow windows if
6053 total_removed is less than total_shrink.
6054
6055 * xmenu.c (pop_down_menu): Remove global variable current_menu,
6056 extract pointer from arg with XSAVE_VALUE.
6057 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
6058 Construct arg to record_unwind_protect with make_save_value.
6059
6060 2004-11-13 Richard M. Stallman <rms@gnu.org>
6061
6062 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
6063 (get_next_display_element): Fix previous change to apply only to \n.
6064
6065 * indent.c (Fvertical_motion): Scan to PT from start of line to
6066 make iterator consistent.
6067
6068 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
6069
6070 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6071
6072 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
6073
6074 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
6075 Record unwind with clean_up_file_dialog.
6076
6077 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
6078 Declare.
6079
6080 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
6081
6082 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6083
6084 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
6085 (xg_file_sel_destroy): Remove.
6086 (xg_file_response_cb, pop_down_file_dialog)
6087 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
6088 New functions.
6089 (xg_get_file_with_chooser, xg_get_file_with_selection):
6090 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
6091 Move common code to xg_get_file_name. Return widget created.
6092 (xg_get_file_name): Set name, transient for, modal and destroy
6093 with parent here. Connect response signal to xg_file_response_cb,
6094 connect delete-event to gtk_true. Record pop_down_file_dialog
6095 for unwind. Do event loop and call x_menu_wait_for_event in loop.
6096 (xg_create_widget): Make dialogs modal.
6097
6098 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
6099 Lisp_Object.
6100 (popup_get_selection): Move unwind protect ...
6101 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
6102 Move destroy of widget to pop_down_menu.
6103 (popup_widget_loop): Move unwind protect ...
6104 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
6105 Move destroy of widget to pop_down_menu.
6106 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
6107 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
6108 x_mouse_leave and grabbed = 0 to pop_down_menu.
6109
6110 2004-11-13 Kim F. Storm <storm@cua.dk>
6111
6112 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
6113 (syms_of_xdisp): DEFVAR_BOOL it.
6114 (make_cursor_line_fully_visible, try_cursor_movement)
6115 (try_window_id): Use it.
6116
6117 2004-11-12 Kim F. Storm <storm@cua.dk>
6118
6119 * dispextern.h (struct glyph_row): New member extra_line_spacing.
6120 (struct it): New member max_extra_line_spacing.
6121 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
6122 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
6123 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
6124 part of last line is only extra line spacing (so the text on the
6125 line is fully visible). Use helper macros.
6126 Add W arg (to use them). All callers changed.
6127 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
6128 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
6129
6130 * window.c (window_scroll_pixel_based, Frecenter):
6131 Use move_it_vertically_backward directly.
6132 (Frecenter): Fix calculation of new start pos for negative arg.
6133 Before, the new start pos was sometimes chosen too far back, so
6134 the last line became only partially visible, and thus would be
6135 either only semi-visible or automatically scrolled to the middle
6136 of the window by redisplay.
6137
6138 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
6139 (move_it_vertically_backward): Don't recure to move further back.
6140 (move_it_vertically): Remove superfluous condition.
6141 (move_it_by_lines): Clear last_height when moved 0 lines.
6142 (resize_mini_window): Use it.max_extra_line_spacing.
6143 (display_tool_bar_line): Clear row->extra_line_spacing.
6144 (try_scrolling): Use move_it_vertically_backward directly.
6145 (redisplay_window): Likewise.
6146 (compute_line_metrics): Set row->extra_line_spacing.
6147 (display_line, display_string): Likewise.
6148 (x_produce_glyphs): Update it->max_extra_line_spacing.
6149
6150 * xmenu.c (pop_down_menu): Return nil.
6151
6152 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6153
6154 * xmenu.c (x_menu_wait_for_event): New function.
6155 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
6156 to handle timers.
6157 (popup_widget_loop): Add argument do_timers.
6158 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
6159 do_timers to popup_widget_loop.
6160 (xmenu_show): Call XMenuActivateSetWaitFunction so that
6161 x_menu_wait_for_event is called by XMenuActivate.
6162 (create_and_show_popup_menu): Pass 1 for do_timers to
6163 popup_get_selection.
6164 (pop_down_menu): New function.
6165 (popup_get_selection, popup_widget_loop): Unwind protect to
6166 pop_down_menu.
6167 (popup_widget_loop): Add argument widget.
6168 (create_and_show_popup_menu, create_and_show_dialog): Pass new
6169 argument widget to popup_widget_loop.
6170
6171 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
6172
6173 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
6174
6175 2004-11-09 Kim F. Storm <storm@cua.dk>
6176
6177 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
6178 Fix various comments referring to XEvents instead of input events.
6179 (x_queue_event): Fix format strings.
6180 (x_stop_queuing_selection_requests): Likewise.
6181
6182 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
6183 (pint2hrstr): Add extra braces to silence compiler.
6184
6185 * print.c (print_object): Fix format string.
6186
6187 * lread.c (read1): Fix next_char matching.
6188
6189 * lisp.h (Fdelete): Add EXFUN.
6190 (replace_range_2): Add prototype.
6191
6192 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
6193
6194 * intervals.h (NULL_INTERVAL_P): Add separate version when
6195 ENABLE_CHECKING is not defined to silence compiler.
6196 (compare_string_intervals): Add prototype.
6197
6198 * fringe.c (destroy_fringe_bitmap): Fix return type.
6199 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
6200
6201 * emacs.c (Fdump_emacs): Fix format string.
6202
6203 * doc.c: Include <ctype.h>.
6204 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
6205
6206 * data.c (store_symval_forwarding): Remove unused variables.
6207
6208 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
6209
6210 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6211
6212 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
6213 to ${OLDXMENU}.
6214
6215 2004-11-09 Kim F. Storm <storm@cua.dk>
6216
6217 * process.c (Fmake_network_process): Remove kludge for interrupted
6218 connects on BSD. If connect is interrupted, just close socket and
6219 start over rather than sleeping and retry with same socket.
6220
6221 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6222
6223 * .cvsignore: Add buildobj.lst.
6224
6225 * doc.c: New variable Vbuild_files.
6226 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
6227 file names from buildobj.lst. Only attach docstrings from files
6228 that are in Vbuild_files.
6229 (syms_of_doc): Defvar Vbuild_files.
6230
6231 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
6232 and w32*.o.
6233 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
6234 (mostlyclean): Rm buildobj.lst
6235
6236 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
6237 is linked.
6238
6239 2004-11-09 Kim F. Storm <storm@cua.dk>
6240
6241 * fringe.c (update_window_fringes): Update fringe bitmaps if
6242 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
6243 also update previous row to get rid of misc. artifacts.
6244
6245 2004-11-08 Kim F. Storm <storm@cua.dk>
6246
6247 * xdisp.c (fast_find_position): Fix start pos if header line present.
6248 (note_mouse_highlight): Clear mouse face if we move out of text area.
6249
6250 2004-11-08 Eli Zaretskii <eliz@gnu.org>
6251
6252 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
6253 Don't include <sys/time.h> explicitly.
6254 Include <stdio.h> unconditionally, not just on MacOS.
6255
6256 2004-11-08 Kenichi Handa <handa@m17n.org>
6257
6258 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
6259 don't pay attention to '\' before '*'.
6260 (fontset_pattern_regexp): Change the meaning of the second arg.
6261 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
6262 (check_fontset_name): Try NAME as literal at first, and if it
6263 failes, try NAME as pattern.
6264
6265 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6266
6267 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
6268
6269 2004-11-07 Andreas Schwab <schwab@suse.de>
6270
6271 * lisp.h (Fmsdos_downcase_filename): Declare.
6272 * dired.c (Fmsdos_downcase_filename): Don't declare here.
6273 * fileio.c: Likewise.
6274
6275 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6276
6277 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
6278 comparisons with integers instead of Lisp_Object address.
6279 (Fmsdos_set_keyboard): Declare argument allkeys.
6280
6281 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
6282
6283 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
6284 int/Lisp_Object mixup.
6285
6286 * fileio.c: Ditto.
6287
6288 2004-11-06 Steven Tamm <steventamm@mac.com>
6289
6290 * editfns.c: Need to include sys/time.h before resource.h on darwin.
6291
6292 2004-11-06 Richard M. Stallman <rms@gnu.org>
6293
6294 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
6295
6296 * xfaces.c (merge_named_face): GCPRO the face_name in the
6297 named_merge_point struct that we make.
6298 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
6299
6300 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
6301 before deciding whether to inactivate mark.
6302
6303 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
6304
6305 * config.in: Regenerate (add HAVE_GETRUSAGE).
6306 * editfns.c (Fget_internal_run_time): New function.
6307 (syms_of_data): Defsubr it.
6308 * fns.c (sxhash): As far as possible, merge calculation of
6309 hash code for symbols and strings.
6310
6311 2004-11-06 Eli Zaretskii <eliz@gnu.org>
6312
6313 * frame.c (syms_of_frame): Fix the example in the doc string.
6314
6315 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6316
6317 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
6318
6319 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
6320 (create_and_show_dialog): Revert change from 2004-10-31.
6321
6322 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
6323
6324 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
6325
6326 2004-11-05 Kim F. Storm <storm@cua.dk>
6327
6328 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
6329
6330 * fileio.c (Ffile_modes): Doc fix.
6331 (auto_save_1): Check for Ffile_modes nil value.
6332
6333 2004-11-05 Kim F. Storm <storm@cua.dk>
6334
6335 * xselect.c (struct selection_event_queue, selection_queue)
6336 (x_queue_selection_requests, x_queue_event)
6337 (x_start_queuing_selection_requests)
6338 (x_stop_queuing_selection_requests): Add new queue for selection
6339 input events to replace previous XEvent queue in xterm.c.
6340 (queue_selection_requests_unwind): Adapt to new queue.
6341 (x_reply_selection_request): Adapt to new queue.
6342 Unexpect wait_object in case of x errors (memory leak).
6343 (x_handle_selection_request, x_handle_selection_clear): Make static.
6344 (x_handle_selection_event): New function. May queue selection events.
6345 (wait_for_property_change_unwind): Use save_value instead of cons.
6346 Clear property_change_reply_object.
6347 (wait_for_property_change): Abort if already waiting.
6348 Use save_value instead of cons for unwind data.
6349 (x_handle_property_notify): Skip events already arrived, but don't
6350 free them, as "arrived" field is checked by wait_for_property_change,
6351 and it will be freed by unwind or explicit unexpect_property_change.
6352 (x_get_foreign_selection): Add to new queue.
6353 (receive_incremental_selection): Don't unexpect wait_object when done
6354 as it has already been freed by previous wait_for_property_change.
6355
6356 * xterm.h (x_start_queuing_selection_requests)
6357 (x_stop_queuing_selection_requests, x_handle_selection_request)
6358 (x_handle_selection_clear): Remove prototypes.
6359 (x_handle_selection_event): Add prototype.
6360
6361 * xterm.c (handle_one_xevent): Don't queue X selection events
6362 here, it may be too late if we start queuing after we have already
6363 stored some selection events into the kbd buffer.
6364 (struct selection_event_queue, queue, x_queue_selection_requests)
6365 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
6366 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
6367 (x_catch_errors_unwind): Block input around final XSync.
6368
6369 * keyboard.h (kbd_buffer_unget_event): Add prototype.
6370
6371 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
6372 (kbd_buffer_unget_event): New function.
6373 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
6374 and use x_handle_selection_event.
6375 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
6376
6377 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6378
6379 * xselect.c (TRACE3): New debug macro.
6380 (x_reply_selection_request): Use it.
6381 (receive_incremental_selection): In call to TRACE0, the name of
6382 a symbol is in xname.
6383
6384 2004-11-05 Kim F. Storm <storm@cua.dk>
6385
6386 * fontset.c (fontset_pattern_regexp): Use unsigned char.
6387
6388 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6389
6390 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
6391
6392 * gtkutil.h (use_old_gtk_file_dialog): Declare.
6393
6394 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
6395 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
6396 * xfns.c (syms_of_xfns): ... to here.
6397
6398 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
6399 it doesn't start with /.
6400
6401 2004-11-04 Kenichi Handa <handa@m17n.org>
6402
6403 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
6404 treat it as a literal character.
6405
6406 2004-11-03 Kim F. Storm <storm@cua.dk>
6407
6408 * .gdbinit (ppt): New function.
6409
6410 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6411
6412 * xterm.c (x_window_to_scroll_bar): Only call
6413 xg_get_scroll_id_for_window if toolkit scroll bars are used.
6414
6415 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
6416 of save.
6417
6418 2004-11-02 Andreas Schwab <schwab@suse.de>
6419
6420 * window.c (Fscroll_right): Fix last change.
6421
6422 2004-11-02 Kim F. Storm <storm@cua.dk>
6423
6424 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
6425
6426 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6427
6428 * callproc.c (Fcall_process): Block input around vfork.
6429
6430 2004-11-02 Kim F. Storm <storm@cua.dk>
6431
6432 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
6433 (syms_of_eval): Defsubr it.
6434
6435 2004-11-02 Richard M. Stallman <rms@gnu.org>
6436
6437 * insdel.c (replace_range_2): New function.
6438
6439 * casefiddle.c (casify_region): Handle changes in byte-length
6440 using replace_range_2.
6441
6442 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
6443
6444 * xdisp.c (back_to_previous_visible_line_start):
6445 Subtract 1 from pos when checking previous newline for invisibility.
6446
6447 * window.c (window_scroll_pixel_based): Update preserve_y
6448 for header line if any.
6449 (Fscroll_left, Fscroll_right): Don't call interactive_p;
6450 use a new second argument instead.
6451
6452 * eval.c (Fcall_interactive_p): New function.
6453 (interactive_p): Don't test INTERACTIVE here.
6454 (Finteractive_p): Doc fix.
6455
6456 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
6457
6458 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6459
6460 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
6461 comparing font names.
6462
6463 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6464
6465 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
6466 Fx_file_dialog if only directories should be read.
6467
6468 * lisp.h: Fx_file_dialog takes 5 parameters.
6469
6470 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
6471 Add parameter only_dir_p.
6472 In Motif version, don't put DEFAULT_FILENAME in filter part of the
6473 dialog, just text field part. Do not add DEFAULT_FILENAME
6474 to list of files if it isn't there.
6475 In GTK version, pass only_dir_p parameter to xg_get_file_name.
6476
6477 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
6478 Check only_dir_p instead of comparing prompt to "Dired". When using
6479 a save dialog, add option kNavDontConfirmReplacement, change title
6480 to "Enter name", change text for save button to "Ok".
6481
6482 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
6483 Check only_dir_p instead of comparing prompt to "Dired".
6484
6485 * gtkutil.c (xg_get_file_with_chooser)
6486 (xg_get_file_with_selection): New functions, only defined ifdef
6487 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
6488 respectively.
6489 (xg_get_file_name): Add parameter only_dir_p.
6490 Call xg_get_file_with_chooser or xg_get_file_with_selection
6491 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
6492 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
6493
6494 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
6495
6496 * config.in: Rebuild (added HAVE_GTK_FILE_*).
6497
6498 2004-11-01 Kim F. Storm <storm@cua.dk>
6499
6500 * process.c (connect_wait_mask, num_pending_connects):
6501 Only declare and use them if NON_BLOCKING_CONNECT is defined.
6502 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
6503 (IF_NON_BLOCKING_CONNECT): New helper macro.
6504 (wait_reading_process_output): Only declare and use local vars
6505 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
6506
6507 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
6508
6509 * w32term.c (x_scroll_run): Delete region objects after use.
6510
6511 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6512
6513 * xmenu.c: Add prototypes for forward function declarations.
6514 (popup_get_selection): Remove parameter do_timers, remove call to
6515 timer_check.
6516 (create_and_show_popup_menu, create_and_show_dialog):
6517 Remove parameter do_timers from call to popup_get_selection.
6518
6519 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
6520 tool_bar_items and assign the result to f->tool_bar_items if
6521 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
6522 tool_bar_items to assignment of result.
6523
6524 * atimer.c (alarm_signal_handler): Do not call set_alarm if
6525 pending_atmers is non-zero.
6526
6527 2004-10-31 Kim F. Storm <storm@cua.dk>
6528
6529 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
6530
6531 2004-10-28 Will <will@glozer.net>
6532
6533 * macterm.c: Allow user to assign key modifiers to the Mac Option
6534 key via a 'mac-option-modifier' variable.
6535
6536 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
6537
6538 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
6539 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
6540 (x_handle_selection_request, x_handle_selection_clear)
6541 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
6542
6543 2004-10-28 Richard M. Stallman <rms@gnu.org>
6544
6545 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6546
6547 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
6548
6549 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
6550
6551 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
6552 comment-starter over a 1-char one.
6553
6554 2004-10-27 Richard M. Stallman <rms@gnu.org>
6555
6556 * xdisp.c (get_next_display_element): In mode lines,
6557 treat newline and tab like other control characters.
6558
6559 * editfns.c (Fmessage): Doc fix.
6560
6561 * indent.c (vmotion): When moving up, check the newline before.
6562 Make prevline an int, not a Lisp_Object.
6563
6564 2004-10-27 Kim F. Storm <storm@cua.dk>
6565
6566 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
6567 Only allocate info and discarded tables once.
6568
6569 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
6570 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
6571 (SAFE_FREE): Test it to determine if we need to unwind to free.
6572 Remove size arg. All users changed.
6573 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
6574
6575 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6576
6577 * gtkutil.c: Put empty line between comment and function body.
6578 (xg_destroy_widgets): Rename from remove_from_container.
6579 Just destroy all widgets in list. Argument wcont removed.
6580 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
6581 instead of remove_from_container.
6582 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
6583 (free_frame_tool_bar): Add comment.
6584
6585 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
6586 is not NULL before strcmp.
6587
6588 2004-10-26 Kim F. Storm <storm@cua.dk>
6589
6590 * callint.c (Fcall_interactively): Add 'U' code to get the
6591 up-event discarded by a previous 'k' or 'K' argument.
6592
6593 2004-10-26 David Kastrup <dak@gnu.org>
6594
6595 * buffer.c (syms_of_buffer): Fix a few typos.
6596
6597 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6598
6599 * xsmfns.c: Put empty line between comment and function body.
6600 Use two spaces before comment end.
6601
6602 2004-10-25 Kenichi Handa <handa@m17n.org>
6603
6604 * fontset.c (fontset_pattern_regexp): Optimize for the case that
6605 PATTERN is full XLFD.
6606
6607 2004-10-24 Kenichi Handa <handa@m17n.org>
6608
6609 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
6610
6611 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
6612 (regex_compile): Return REG_ERANGEX if appropriate.
6613
6614 2004-10-22 Kenichi Handa <handa@m17n.org>
6615
6616 * editfns.c (Ftranslate_region_internal): New function.
6617 (syms_of_editfns): Defsubr it.
6618
6619 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6620
6621 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
6622
6623 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
6624
6625 * xterm.h (x_output): New member `xic_base_fontname'.
6626 (FRAME_XIC_BASE_FONTNAME): New macro.
6627 (xic_free_xfontset): Declare.
6628
6629 * xfns.c (xic_create_xfontset): Share fontsets between frames
6630 based on base_fontname.
6631 (xic_free_xfontset): New function.
6632 (free_frame_xic): Use it.
6633 (xic_set_xfontset): Ditto.
6634
6635 * xterm.c (xim_destroy_callback): Ditto.
6636
6637
6638 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
6639
6640 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
6641
6642 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6643
6644 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
6645 XSync.
6646
6647 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
6648 New variables and constant.
6649 (main): Calculate heap_bss_diff. If we are dumping and the
6650 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
6651 and exec ourself again.
6652 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
6653 print a warning.
6654
6655 * lastfile.c: Make my_endbss and my_endbss_static available on all
6656 platforms.
6657
6658 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
6659 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
6660
6661 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
6662
6663 * data.c (Flocal_variable_if_set_p): Doc fix.
6664
6665 2004-10-19 Jason Rumney <jasonr@gnu.org>
6666
6667 * w32.c (init_environment): Set emacs_dir correctly when running
6668 emacs from the build directory.
6669
6670 2004-10-19 Richard M. Stallman <rms@gnu.org>
6671
6672 * editfns.c (Fdelete_and_extract_region):
6673 If region is empty, return null string.
6674
6675 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6676
6677 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
6678 and canon_width.
6679 (xg_frame_cleared): Remove.
6680
6681 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
6682 (xg_find_top_left_in_fixed): Remove.
6683 (xg_create_scroll_bar): Put an event box widget between
6684 the scroll bar widget and the edit widget.
6685 (xg_show_scroll_bar): Show the parent widget (the event box).
6686 (xg_remove_scroll_bar): Destroy parent (the event box) also.
6687 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
6688 Move the parent (the event box) widget inside the fixed widget.
6689 Move window clear to xterm.c.
6690
6691 * gtkutil.h (xg_frame_cleared): Remove.
6692
6693 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
6694 (x_scroll_bar_create, XTset_vertical_scroll_bar):
6695 Remove arguments left and width to xg_update_scrollbar_pos.
6696 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
6697
6698 2004-10-19 Kenichi Handa <handa@m17n.org>
6699
6700 * xdisp.c (display_mode_element): Fix display of wide chars.
6701
6702 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6703
6704 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
6705 gdk_window_clear and move gdk_window_process_all_updates after
6706 clear so events are sent to the X server in correct order.
6707
6708 2004-10-18 Kenichi Handa <handa@m17n.org>
6709
6710 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
6711 comparing font names.
6712 (fs_query_fontset): Use fast_string_match for comparing fontset names.
6713 (list_fontsets): Likewise.
6714
6715 * search.c (fast_string_match_ignore_case): New function.
6716
6717 * lisp.h (fast_string_match_ignore_case): Extern it.
6718
6719 2004-10-17 Kim F. Storm <storm@cua.dk>
6720
6721 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
6722 than bitmap if there is not left fringe.
6723 (get_overlay_arrow_glyph_row): Also used on windows system.
6724 (display_line): Display overlay string if no left fringe.
6725
6726 2004-10-16 Jason Rumney <jasonr@gnu.org>
6727
6728 * w32fns.c (w32_font_match): Encode font name being matched.
6729
6730 2004-10-16 Richard M. Stallman <rms@gnu.org>
6731
6732 * window.c (Fspecial_display_p): Doc fix.
6733
6734 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
6735
6736 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
6737 Don't ignore menus, because where-is-internal already does it for us.
6738
6739 2004-10-15 Kim F. Storm <storm@cua.dk>
6740
6741 * xdisp.c (redisplay_window): Only update fringes and vertical
6742 border on window frames.
6743
6744 2004-10-14 Andreas Schwab <schwab@suse.de>
6745
6746 * m/ia64.h (DATA_SEG_BITS): Don't define.
6747
6748 2004-10-14 Kim F. Storm <storm@cua.dk>
6749
6750 * xterm.h: Include Xutil.h after keysym.h to work around bug
6751 in some X versions.
6752
6753 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6754
6755 * fns.c (map_char_table): Add missing gcpros.
6756
6757 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
6758
6759 * keymap.c (get_keymap): An autoload form is not a keymap.
6760
6761 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
6762
6763 2004-10-13 Kim F. Storm <storm@cua.dk>
6764
6765 * callproc.c (Fcall_process): Simplify handling of display arg.
6766 Resume `display_on_the_fly' once a coding system is determined.
6767
6768 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
6769
6770 2004-10-12 Kim F. Storm <storm@cua.dk>
6771
6772 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
6773 caller, such as call-process, is not going to poll for input.
6774 (calc_line_height_property): Handle case where it->object is nil.
6775
6776 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
6777
6778 2004-10-12 Kenichi Handa <handa@m17n.org>
6779
6780 * xdisp.c (get_next_display_element):
6781 If unibyte_display_via_language_environment is zero, display 8-bit
6782 chars in octal in unibyte buffer.
6783
6784 2004-10-12 Kim F. Storm <storm@cua.dk>
6785
6786 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
6787 are no ordinary bindings.
6788
6789 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6790
6791 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
6792
6793 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6794
6795 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
6796 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
6797 (make_mac_frame): Add BLOCK_INPUT around the making of a
6798 terminal frame.
6799 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
6800 * macgui.h (mktime): Use emacs_mktime.
6801 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
6802 Make a cancel file-open dialog be like C-g.
6803 * mac.c (mktime): Use emacs_mktime.
6804 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
6805 (Fmac_paste_function): Add better error handling for carbon cut/paste.
6806
6807 2004-10-10 Kim F. Storm <storm@cua.dk>
6808
6809 * keyboard.c (timer_resume_idle): New function to resume idle
6810 timer without resetting timers on the idle list.
6811 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
6812 (timer_start_idle, timer_stop_idle): Declare static.
6813 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
6814
6815 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
6816
6817 2004-10-08 Steven Tamm <steventamm@mac.com>
6818
6819 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
6820 * macterm.c (mac_check_for_quit_char): Remove warning for using
6821 NULL where 0 should be used.
6822 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
6823 objc/malloc.h
6824 * mac.c: Include time.h for Tiger compatibility.
6825
6826 2004-10-07 Kim F. Storm <storm@cua.dk>
6827
6828 * xdisp.c (redisplay_window): Fix flicker on vertical line between
6829 windows. Update vertical line after drawing window fringes, but
6830 only if actually drawing any bitmaps--or there is no fringe.
6831
6832 * xterm.c (x_update_window_end): Likewise.
6833 * macterm.c (x_update_window_end): Likewise.
6834 * w32term.c (x_update_window_end): Likewise.
6835
6836 * fringe.c (draw_window_fringes): Return value now indicates if
6837 any fringe bitmaps were redrawn (or there are no fringes).
6838
6839 * dispextern.h (draw_window_fringes): Update prototype.
6840
6841 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6842
6843 * macfns.c (mac_get_window_bounds): Add extern.
6844 (x_real_positions): Use mac_get_window_bounds.
6845
6846 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
6847 xmenu.c (YAILOM).
6848
6849 * macterm.c [!MAC_OSX]: Include Windows.h.
6850 (front_emacs_window): Rename from mac_front_window. All uses
6851 changed. Return the frontmost non-tooltip emacs window.
6852 (mac_get_window_bounds): New function.
6853 (x_calc_absolute_position): Use the difference of width and height
6854 between the inner and outer window.
6855 (x_set_offset): Specify window position by the coordinae of the
6856 outer window. Adjust the position if the title bar is completely
6857 outside the screen.
6858 (app_is_suspended, app_sleep_time): Remove unused variables.
6859 (do_app_resume, do_app_suspend): Remove their contents because
6860 window-activate/deactivate events will do the job.
6861 (do_zoom_window): Remove unused variables. Make compliant to the
6862 standard way of zooming. Set f->left_pos and f->top_pos.
6863 (XTread_socket): Don't use argument `expected'. Don't use
6864 FrontWindow to determine the clicked window. Exclude unprocessed
6865 mouseUp cases in the early stage. Add parentheses to fix operator
6866 precedence.
6867 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
6868
6869 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
6870
6871 * config.in: Regenerate.
6872
6873 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
6874 HAVE_EXECSHIELD.
6875
6876 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6877
6878 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
6879 a row if Alt or Meta has been found for that row. Also stop scanning
6880 for Keysyms for that row.
6881
6882 2004-10-04 Kim F. Storm <storm@cua.dk>
6883
6884 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
6885 to list. Include overlay arrow bitmap in return value.
6886
6887 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
6888 bars with fractional column width. If scroll bar separates two
6889 windows, move it towards the window it belongs to. Only update
6890 the padding area below the scroll bar widget when necessary,
6891 i.e. when scroll bar widget is created, moved, or resized.
6892
6893 * xdisp.c (define_frame_cursor1): Do not change frame cursor
6894 while tracking/dragging mouse.
6895 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
6896
6897 * window.c (coordinates_in_window): Relax check for cursor
6898 on vertial border between mode lines.
6899 (Fset_window_fringes): Do not allow negative widths.
6900 (Fset_window_scroll_bars): Likewise.
6901
6902 * .gdbinit (pp): Shorthand for p ARG + pr.
6903 (ff): New command: flush frame updates (X only).
6904
6905 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
6906
6907 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
6908
6909 2004-09-30 Kenichi Handa <handa@m17n.org>
6910
6911 * process.c (send_process): Free composition data.
6912
6913 * fileio.c (Finsert_file_contents): Free composition data.
6914
6915 * coding.c (code_convert_region): Don't skip ASCIIs if there are
6916 compositions to encode.
6917 (encode_coding_string): Likewise. Free composition data.
6918
6919 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
6920
6921 * coding.c (code_convert_region): Free composition data.
6922
6923 2004-09-29 Kim F. Storm <storm@cua.dk>
6924
6925 * fringe.c: Remove limit on number of bitmaps.
6926 (fringe_bitmaps, fringe_faces): Change to pointers.
6927 (max_fringe_bitmaps): New var.
6928 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
6929 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
6930
6931 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
6932 (struct glyph_row): Reorder fringe_bitmap related fields.
6933 (struct it): Likewise.
6934
6935 * w32term.c (fringe_bmp): Change to pointer.
6936 (max_fringe_bmp): New var.
6937 (w32_define_fringe_bitmap): Expand fringe_bmp.
6938 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
6939 (w32_destroy_fringe_bitmap): Likewise.
6940
6941 2004-09-29 Kim F. Storm <storm@cua.dk>
6942
6943 * fringe.c: Simplify last change.
6944 (lookup_fringe_bitmap): New function.
6945 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
6946 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
6947 Keep standard bitmaps in Vfringe_bitmaps.
6948 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
6949 (Fset_fringe_bitmap_face): Likewise.
6950
6951 * dispextern.h (lookup_fringe_bitmap): Add prototype.
6952 (valid_fringe_bitmap_p): Remove prototype.
6953
6954 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
6955
6956 2004-09-29 Kim F. Storm <storm@cua.dk>
6957
6958 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
6959 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
6960
6961 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
6962
6963 * fringe.c (Vfringe_bitmaps): New variable.
6964 (syms_of_fringe): DEFVAR_LISP it.
6965 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
6966 Change arg to Lisp_Object and fail if not an integer.
6967 (get_fringe_bitmap_name, resolve_fringe_bitmap)
6968 (destroy_fringe_bitmap): New functions.
6969 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
6970 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
6971 clear its fringe property.
6972 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
6973 Fdestroy_fringe_bitmap.
6974 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
6975 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
6976 and set fringe property. Signal error if no free slots.
6977 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
6978 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
6979
6980 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
6981 symbols with a fringe property.
6982
6983 2004-09-27 Kim F. Storm <storm@cua.dk>
6984
6985 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
6986 Doc fix. Format may now be a symbol or alist, not a cons.
6987
6988 * fringe.c (update_window_fringes): Handle new formats of
6989 indicate-buffer-boundaries (symbol or alist). No longer
6990 allow a simple cons.
6991 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
6992
6993 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6994
6995 * config.in: Rebuild.
6996
6997 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6998
6999 * config.in: Rebuild.
7000
7001 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
7002
7003 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
7004
7005 * xterm.c (x_term_init): Work around a bug in some X servers.
7006
7007 2004-09-18 Richard M. Stallman <rms@gnu.org>
7008
7009 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
7010
7011 * xdisp.c (try_window_reusing_current_matrix):
7012 Handle the case where we reach the old displayed text,
7013 out of sync with the old line boundary.
7014
7015 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
7016
7017 * fileio.c (Finsert_file_contents): Fix case of replacement in a
7018 narrowed buffer.
7019
7020 2004-09-14 Kim F. Storm <storm@cua.dk>
7021
7022 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
7023
7024 * xfaces.c (Qface_no_inherit): New var.
7025 (syms_of_xfaces): Intern and staticpro it.
7026 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
7027 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
7028 Don't increment face_change_count when face has non-nil
7029 face-no-inherit property.
7030
7031 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
7032
7033 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
7034 (Fbyte_code): Remove dead code after `wrong_type_argument'.
7035
7036 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
7037 before doing the mark_stack_check_gcpros since they're not on the stack.
7038
7039 2004-09-12 Kim F. Storm <storm@cua.dk>
7040
7041 * editfns.c (Fformat): Handle format strings with multiple text
7042 properties. Reverse text property list from the format string,
7043 so the positions are in increasing order.
7044
7045 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7046
7047 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
7048 x_uncatch_errors so that possible protocol errors are delivered.
7049
7050 2004-09-10 Eli Zaretskii <eliz@gnu.org>
7051
7052 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
7053 blockinput.h.
7054 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
7055 charset.h, and coding.h
7056 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
7057 (term.o): Depend on window.h and keymap.h.
7058 (abbrev.o): Depend on syntax.h.
7059 (callint.o): Depend on keymap.h.
7060 (casefiddle.o): Depend on charset.h and keymap.h.
7061 (category.o): Depend on keymap.h.
7062 (coding.o): Depend on dispextern.h.
7063 (cmds.o): Depend on keyboard.h and keymap.h.
7064 (dispnew.o): Depend on indent.h and intervals.h.
7065 (doc.o): Depend on keymap.h.
7066 (editfns.o): Depend on frame.h.
7067 (emacs.o): Depend on dispextern.h.
7068 (fileio.o): Don't depend on ccl.h.
7069 (filelock.o): Depend on charset.h and coding.h.
7070 (frame.o): Depend on w32term.h and macterm.h.
7071 (insdel.o): Depend on region-cache.h.
7072 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
7073 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
7074 (search.o): Depend on $(INTERVALS_SRC).
7075 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
7076 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
7077 xterm.h, w32term.h, and macterm.h.
7078 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
7079 w32term.h, and macterm.h.
7080 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
7081 region-cache.h, xterm.h, w32term.h, and macterm.h.
7082 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
7083 (data.o): Depend on frame.h.
7084 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
7085 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
7086 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
7087 (intervals.o): Depend on keymap.h.
7088
7089 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
7090 Add debugging print-out to termscript.
7091
7092 2004-09-09 Richard M. Stallman <rms@gnu.org>
7093
7094 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
7095
7096 2004-09-08 Richard M. Stallman <rms@gnu.org>
7097
7098 * window.c (Fset_window_buffer): Doc fix.
7099
7100 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
7101
7102 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
7103
7104 * minibuf.c (history_delete_duplicates): New variable.
7105 (read_minibuf): Use it.
7106 (syms_of_minibuf): Create the corresponding lisp variable.
7107
7108 2004-09-08 Kim F. Storm <storm@cua.dk>
7109
7110 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
7111 overlay just before point.
7112
7113 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
7114
7115 * buffer.h (struct buffer): Add auto_save_file_format field.
7116 * buffer.c (reset_buffer, init_buffer_once):
7117 Handle auto_save_file_format field.
7118 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
7119 `buffer-auto-save-file-format'.
7120 * fileio.c: Delete declaration for removed Vauto_save_file_format.
7121 (build_annotations): Adapt to replacement of
7122 `auto-save-file-format' with the new buffer-local variable
7123 `buffer-auto-save-file-format'.
7124 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
7125
7126 2004-09-07 Jason Rumney <jasonr@gnu.org>
7127
7128 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
7129
7130 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
7131 Handle Unicode menu titles.
7132
7133 2004-09-07 Kim F. Storm <storm@cua.dk>
7134
7135 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
7136 property from text property or overlay strings at point.
7137
7138 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
7139
7140 * xmenu.c (update_submenu_strings): YAILOM.
7141 (set_frame_menubar): Make sure last_i is initialized.
7142
7143 2004-09-03 Jason Rumney <jasonr@gnu.org>
7144
7145 * w32menu.c (_widget_value): Add lname and lkey.
7146 (digest_single_submenu): Set lname and lkey in widget_value
7147 instead of name and key.
7148 (update_submenu_strings): New function.
7149 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7150 call update_submenu_strings.
7151
7152 * w32menu.c (globals_of_w32menu): Check for Unicode API.
7153 (digest_single_submenu, w32_menu_show): Encode menu strings as
7154 UTF-8 if Unicode API is available.
7155 (utf8to16): New function.
7156 (add_menu_item): Use it when calling Unicode API.
7157
7158 2004-09-03 Kim F. Storm <storm@cua.dk>
7159
7160 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
7161 in overlay or text-property strings; set cursor on corresponding
7162 glyph rather than at end of the string.
7163
7164 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7165
7166 * macfns.c (x_real_positions): Save the current window port and
7167 set a new one before obtaining the global coordinate.
7168 Use FRAME_MAC_WINDOW.
7169 (x_set_name, x_set_title): Encode title to UTF8.
7170 Use SetWindowTitleWithCFString.
7171 (Fx_server_version): Get correct OS version.
7172
7173 * macmenu.c (add_menu_item): Remove unused variable `i'.
7174 Don't let separator items destroy refence constants of other menu items.
7175
7176 * macterm.c (x_update_end): Move SetPortWindowPort to inside
7177 BLOCK_INPUT.
7178 (x_set_offset): Use FRAME_MAC_WINDOW.
7179
7180 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
7181 nontext_cursor if it is on a scroll bar.
7182
7183 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
7184 Carbon support.
7185 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
7186 Use LIBS_CARBON.
7187
7188 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7189
7190 * xfns.c (x_set_name_internal): New function. Check if we shall call
7191 xfree before ENCODE_UTF_8.
7192 (x_set_name, x_set_title): Call x_set_name_internal.
7193
7194 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
7195
7196 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
7197 reload it.
7198
7199 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7200
7201 * macmenu.c (_widget_value): Add lname and lkey.
7202 (single_submenu): Set lname and lkey in widget_value
7203 instead of name and key.
7204 (update_submenu_strings): New function.
7205 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7206 call update_submenu_strings.
7207
7208 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
7209 instead of name and key.
7210 (update_submenu_strings): New function.
7211 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7212 call update_submenu_strings.
7213
7214 * gtkutil.h (_widget_value): Added lname and lkey.
7215
7216 2004-08-30 Steven Tamm <steventamm@mac.com>
7217
7218 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
7219 by using different names for inner loop variables.
7220
7221 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7222
7223 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
7224 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
7225
7226 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
7227 tool bar items is 0.
7228
7229 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7230
7231 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
7232 strings in menu items.
7233 (single_submenu): Use ENCODE_MENU_STRING
7234 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
7235 button release isn't passed to event loop
7236 (add_menu_item): Use SetMenuItemWithCFString
7237
7238 2004-08-26 Steven Tamm <steventamm@mac.com>
7239
7240 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
7241 tool-bar/menu click.
7242 * macfns.c (Fx_file_dialog): Implement using NavServices.
7243
7244 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7245
7246 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
7247
7248 * xfns.c (x_window_to_frame, x_any_window_to_frame)
7249 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7250 (x_top_window_to_frame): Return 0 if wdesc is None.
7251
7252 2004-08-22 Richard M. Stallman <rms@gnu.org>
7253
7254 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
7255 HAVE_TERMIOS]: If there's no char for this signal, drop through
7256 and use system calls.
7257
7258 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
7259
7260 2004-08-20 Kim F. Storm <storm@cua.dk>
7261
7262 * process.c (wait_reading_process_output): Rename from
7263 wait_reading_process_input. All uses changed.
7264 (wait_reading_process_output_1): Rename from
7265 wait_reading_process_input_1. All uses changed.
7266
7267 * dispnew.c (Fsleep_for): Remove obsolete code.
7268
7269 2004-08-20 Kenichi Handa <handa@m17n.org>
7270
7271 * syntax.c (skip_chars): Fix for unibyte case.
7272
7273 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
7274
7275 * syntax.c (char_quoted): Mixup byte/char pos.
7276 (back_comment): Fixup globals in all cases.
7277
7278 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7279
7280 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
7281 passing it to gtk_window_set_title.
7282
7283 2004-08-19 Kim F. Storm <storm@cua.dk>
7284
7285 * process.c (wait_reading_process_input): Clean up.
7286 Add wait_for_cell, wait_proc, and just_wait_proc args
7287 to avoid overloading `read_kbd' and `do_display' args.
7288 Change read_kbd arg to int. All callers changed.
7289
7290 * process.c (process_send_signal): Use CDISABLE.
7291
7292 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
7293
7294 2004-08-18 Kim F. Storm <storm@cua.dk>
7295
7296 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
7297 forward to wait_reading_process_input via DO_DISPLAY arg.
7298 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
7299 object, only process output from that process; also inhibit
7300 running timers if DO_DISPLAY==-2.
7301
7302 2004-08-17 Kim F. Storm <storm@cua.dk>
7303
7304 * process.c (process_send_signal): Fix last change--use
7305 _POSIX_VDISABLE instead of CVDISABLE when available.
7306
7307 2004-08-16 Richard M. Stallman <rms@gnu.org>
7308
7309 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
7310 Set VQUIT and VINTR chars to the standard ones if they are unset.
7311 [AIX]: Don't do that here. And don't force VINTR to standard
7312 when SIGNALS_VIA_CHARACTERS.
7313
7314 * process.c (process_send_signal)
7315 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
7316 Do nothing if the character is CVDISABLE.
7317
7318 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
7319
7320 * intervals.c (move_if_not_intangible):
7321 Force POSITION to be between BEGV and ZV.
7322
7323 2004-08-14 John Paul Wallington <jpw@gnu.org>
7324
7325 * buffer.c (Frestore_buffer_modified_p): Doc fix.
7326
7327 * fileio.c (Fread_file_name): Doc fix.
7328
7329 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
7330
7331 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
7332
7333 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
7334
7335 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
7336
7337 * keyboard.c: Declare Qdisabled_command_function instead of
7338 Qdisabled_command_hook.
7339 (Fcommand_execute): Use Qdisabled_command_function instead of
7340 Qdisabled_command_hook.
7341 (syms_of_keyboard): Ditto.
7342
7343 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
7344
7345 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
7346 (syms_of_keymap) <key-translation-map>: Doc fixes.
7347
7348 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
7349
7350 * window.c (window_list_1): YAILOM.
7351
7352 * fileio.c (make_temp_name): Handle multibyte prefixes.
7353
7354 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
7355
7356 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
7357 Doc fix.
7358
7359 2004-08-03 Kenichi Handa <handa@m17n.org>
7360
7361 * coding.c (decode_coding_string): Adjust coding->consumed, and
7362 etc. with shrinked_bytes.
7363
7364 2004-08-03 Kim F. Storm <storm@cua.dk>
7365
7366 * indent.c (compute_motion): Fix check for full width window
7367 in non-window case. Do not count left truncation glyph on
7368 window systems.
7369
7370 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
7371
7372 * data.c (Finteractive_form): Doc fix.
7373
7374 2004-08-02 Kim F. Storm <storm@cua.dk>
7375
7376 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
7377 properly accounting for continuation glyph on non-window systems.
7378 (Fcompute_motion): Use actual window width if WIDTH is nil, and
7379 actual window width/height if TOPOS is nil, properly accounting for
7380 continuation glyphs on non-window systems, and optional header lines.
7381 (vmotion): Let compute_motion calculate actual window width.
7382
7383 * window.c (window_scroll_line_based): Let compute_motion
7384 calculate actual window width.
7385
7386 2004-08-02 Kim F. Storm <storm@cua.dk>
7387
7388 * process.c (read_process_output): Use whole read buffer.
7389 Don't trigger adaptive read buffering on errors.
7390
7391 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
7392
7393 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
7394
7395 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
7396
7397 * callint.c (Fcall_interactively): Doc fix.
7398
7399 2004-07-30 Richard M. Stallman <rms@gnu.org>
7400
7401 * abbrev.c (Fexpand_abbrev): Undo previous change.
7402
7403 2004-07-30 Kim F. Storm <storm@cua.dk>
7404
7405 * editfns.c (Fformat): Allocate extra (dummy) element in info.
7406
7407 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
7408
7409 * eval.c (Fdefvar, Fdefconst): Doc fixes.
7410
7411 2004-07-27 Kim F. Storm <storm@cua.dk>
7412
7413 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
7414 we have ensured that the glyph fits on the current line (or returned
7415 MOVE_LINE_CONTINUED otherwise).
7416
7417 2004-07-26 Kim F. Storm <storm@cua.dk>
7418
7419 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
7420 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
7421 if target position is at end of display line but char is not a newline.
7422
7423 2004-07-25 Richard M. Stallman <rms@gnu.org>
7424
7425 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
7426 instead of ON_VERTICAL_BORDER, when on scroll bar.
7427 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
7428
7429 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
7430
7431 * window.c (Fcoordinates_in_window_p):
7432 Take account of FRAME_INTERNAL_BORDER_WIDTH.
7433
7434 * alloc.c (check_cons_list): New function (contents commented out).
7435
7436 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
7437
7438 * xfaces.c (Fcolor_supported_p): Doc fix.
7439
7440 * frame.c (Fselect_frame, Fset_frame_selected_window)
7441 (Fframe_visible_p, Fraise_frame): Doc fixes.
7442
7443 2004-07-24 Richard M. Stallman <rms@gnu.org>
7444
7445 * keyboard.h (not_single_kboard_state): Declare.
7446
7447 * fileio.c (Fwrite_region): Doc fix.
7448
7449 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
7450
7451 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
7452 only when a real abbrev is present.
7453
7454 * xfns.c (x_icon_verify): New function.
7455 (Fx_create_frame): Use it.
7456
7457 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
7458
7459 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
7460
7461 2004-07-21 Kim F. Storm <storm@cua.dk>
7462
7463 * window.h (struct glyph_matrix): New members nrows_scale_factor
7464 and ncols_scale_factor.
7465
7466 * window.c (make_window): Initialize nrows_scale_factor and
7467 ncols_scale_factor members.
7468
7469 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
7470 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
7471 (required_matrix_height): Apply nrows_scale_factor.
7472 (required_matrix_width): Apply ncols_scale_factor.
7473
7474 * xdisp.c (display_line): Increment nrows_scale_factor and set
7475 fonts_changed_p if past last allocated row.
7476 (append_glyph, append_composite_glyph, produce_image_glyph)
7477 (append_stretch_glyph): Increment ncols_scale_factor and set
7478 fonts_changed_p if current area is full.
7479
7480 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7481
7482 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
7483
7484 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
7485
7486 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
7487 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
7488 (Fset_window_start, Fscroll_up, Fscroll_down)
7489 (Fother_window_for_scrolling, Fscroll_other_window)
7490 (Fsave_window_excursion, Fset_window_vscroll)
7491 (syms_of_window) <window-size-fixed>: Doc fixes.
7492
7493 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7494
7495 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
7496 ENCODE_SYSTEM for filenames.
7497
7498 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7499
7500 * mac.c (sys_select): Block input around call to
7501 ReceiveNextEvent to prevent breakage. Correctly handle
7502 blocking on event queue only by calling ReceiveNextEvent
7503 instead of select (since GUI events aren't on an fd).
7504 (sys_read): Remove function
7505 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
7506
7507 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7508
7509 * mac.c (sys_select): Redo sys_select to use alarm-based
7510 polling instead of 1 sec timeouts (like solaris).
7511
7512 * macterm.c (x_make_frame_visible): Comment in polling on
7513 frame creation.
7514
7515 * keyboard.c: Undef SIGIO on Carbon
7516
7517 * atimer.c (alarm_signal_handler): Call alarm handlers after
7518 scheduling.
7519
7520 * eval.c (Feval): Remove quit_char test
7521
7522 * process.c (wait_reading_process_input): Remove clearing
7523 stdin for select call on process input.
7524
7525 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
7526
7527 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
7528 capitalization error in docstring.
7529
7530 2004-07-17 Juanma Barranquero <lektu@terra.es>
7531
7532 * keyboard.c (not_single_kboard_state): Do nothing unless
7533 MULTI_KBOARD is defined.
7534
7535 2004-07-17 Richard M. Stallman <rms@gnu.org>
7536
7537 * window.c (coordinates_in_window): Inside the window but outside
7538 its box to the L or R, return ON_VERTICAL_BORDER.
7539 (window_list_1): Rotate the list to start with WINDOW.
7540
7541 * print.c (print_preprocess): Test for print_depth at limit
7542 before entering in being_printed.
7543
7544 * keyboard.c (not_single_kboard_state): New function.
7545 (stuff_buffered_input): Now no-op only if no SIGTSTP.
7546
7547 * frame.c (Fdelete_frame): If we're in single_bboard_state on
7548 this kboard, and we delete its last frame, go to any_kboard_state.
7549
7550 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
7551
7552 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7553
7554 * w32fns.c (Fx_file_dialog): Encode strings in system coding
7555 system before passing them to OS functions for display.
7556
7557 2004-07-15 David Kastrup <dak@gnu.org>
7558
7559 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
7560 Apparently fixes an abort condition.
7561
7562 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
7563
7564 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
7565 instead of a cons.
7566
7567 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7568
7569 * keyboard.c (echo_dash): Do nothing if there already is a dash
7570 at the end of the echo string.
7571
7572 2004-07-12 Kim F. Storm <storm@cua.dk>
7573
7574 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
7575 if GC_MARK_STACK.
7576
7577 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
7578
7579 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
7580
7581 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
7582 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
7583 (Freplace_buffer_in_windows, Fset_window_buffer)
7584 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
7585 (syms_of_window): Expand docstring of `display-buffer-function'.
7586
7587 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
7588
7589 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
7590 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
7591 that time values of the type (HIGH . LOW) are considered obsolete.
7592
7593 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
7594
7595 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
7596 docstring.
7597
7598 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
7599
7600 2004-07-06 John Paul Wallington <jpw@gnu.org>
7601
7602 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
7603
7604 * fns.c (Fclear_string): Signal an error if STRING is not a string.
7605
7606 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7607
7608 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
7609 instead of CGMainDisplayID (only in OSX 10.2 and later).
7610
7611 2004-07-04 John Paul Wallington <jpw@gnu.org>
7612
7613 * fileio.c (read_file_name_completion_ignore_case): New variable.
7614 (syms_of_fileio): Declare and initialise it.
7615 (Fread_file_name): Bind `completion-ignore-case' to respect it.
7616
7617 2004-07-03 Eli Zaretskii <eliz@gnu.org>
7618
7619 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
7620 for event.x and event.y.
7621
7622 2004-07-01 Kenichi Handa <handa@m17n.org>
7623
7624 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
7625 after getting a new string by pre-write-conversion.
7626
7627 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
7628
7629 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
7630 (x_calc_absolute_position): Remove unused var `child'.
7631
7632 * xfaces.c (x_supports_face_attributes_p)
7633 (Fdisplay_supports_face_attributes_p): YAILOM.
7634 (tty_supports_face_attributes_p): Remove unused var `i'.
7635
7636 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
7637 back_unibyte_ok.
7638
7639 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
7640
7641 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
7642
7643 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
7644
7645 2004-06-30 Andreas Schwab <schwab@suse.de>
7646
7647 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
7648 (Finit_image_library): Pass LIBRARIES through to
7649 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
7650 (lookup_image_type): Pass Qnil as second argument to
7651 Finit_image_library.
7652
7653 * lisp.h (Finit_image_library): Declare.
7654
7655 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7656
7657 * macterm.c (do_window_activate, do_window_deactivate): Remove.
7658 (XTread_socket): Send mouse button events to the toolbox
7659 dispatcher even when the mouse is grabbed. Don't process window
7660 activate events for non-Emacs windows. Replace function calls to
7661 do_window_activate and do_window_deactivate with their contents.
7662 Reset mouse grabbing status when a window is deactivated.
7663
7664 2004-06-29 Steven Tamm <steventamm@mac.com>
7665
7666 * macterm.c (mac_get_emulated_btn)
7667 (mac_event_to_emacs_modifiers): Fix emulated mouse button
7668 support to correctly mask out modifiers.
7669
7670 2004-06-29 David Kastrup <dak@gnu.org>
7671
7672 * search.c (Fset_match_data): Allow buffer before end of list
7673 which can happen if set-match-data is using a pre-consed list.
7674
7675 2004-06-28 Steven Tamm <steventamm@mac.com>
7676
7677 * macterm.c (XTread_socket): Correctly set the frame position
7678 after the window is moved.
7679
7680 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7681
7682 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
7683 gpix and gmask just before return to avoid memory leak.
7684 (xg_get_image_for_pixmap): Add workaround for monochrome displays
7685 so insensitive and activated icons look ok.
7686
7687 2004-06-27 Jason Rumney <jasonr@gnu.org>
7688
7689 * w32fns.c (file_dialog_callback): Disable edit control if set
7690 to directories only on CDN_INITDONE message.
7691 (Fx_file_dialog): Default to directories only when prompt starts
7692 with "Dired".
7693
7694 2004-06-25 Kim F. Storm <storm@cua.dk>
7695
7696 * alloc.c (allocate_misc): Update total_free_markers.
7697 (free_misc): New function.
7698 (safe_alloca_unwind, free_marker): Use it.
7699
7700 * lisp.h (free_misc): Add prototype.
7701
7702 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
7703
7704 2004-06-24 Richard M. Stallman <rms@gnu.org>
7705
7706 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
7707 (syms_of_emacs): Lisp variables deleted.
7708
7709 2004-06-23 David Kastrup <dak@gnu.org>
7710
7711 * search.c (Freplace_match): Adjust the match-data more thoroughly
7712 when replacing strings in the buffer.
7713 (Fmatch_data): When INTEGERS is non-nil and the last match was in
7714 a buffer, add the buffer as last element to the match data.
7715 (Fset_match_data): If an additional element of the match-data is a
7716 buffer, restore it to last_thing_searched.
7717 (save_search_regs): Save last_thing_searched as part of the match data.
7718 (restore_match_data): Restore it again.
7719
7720 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
7721
7722 * keymap.c (Ftext_char_description): Doc fix.
7723 * doc.c (Fsnarf_documentation): Doc fix.
7724
7725 2004-06-22 Kim F. Storm <storm@cua.dk>
7726
7727 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
7728
7729 * lisp.h (struct Lisp_Save_Value): New member dogc.
7730 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7731 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
7732 (SAFE_FREE_LISP): New macro.
7733
7734 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
7735 (make_save_value): Init new dogc member.
7736 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
7737
7738 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
7739 SAFE_FREE_LISP macros.
7740
7741 2004-06-22 Kim F. Storm <storm@cua.dk>
7742
7743 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
7744 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
7745 in that memory area are unknown to GC. Add comments.
7746
7747 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
7748
7749 2004-06-21 Kim F. Storm <storm@cua.dk>
7750
7751 * lisp.h (MAX_ALLOCA): Define here.
7752 (safe_alloca_unwind): Add prototype.
7753 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
7754
7755 * alloc.c (safe_alloca_unwind): New function.
7756
7757 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
7758
7759 * charset.c (Fstring): Use SAFE_ALLOCA.
7760
7761 * coding.c (MAX_ALLOCA): Remove define.
7762
7763 * data.c (MAX_ALLOCA): Remove define.
7764 (Faset): Use SAFE_ALLOCA.
7765
7766 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
7767
7768 * fns.c (string_make_multibyte, string_to_multibyte)
7769 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
7770 (MAX_ALLOCA): Remove define.
7771 (Fbase64_encode_region, Fbase64_encode_string)
7772 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
7773 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
7774 memory leak if encoding fails.
7775
7776 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
7777
7778 2004-06-21 Eli Zaretskii <eliz@gnu.org>
7779
7780 * print.c (Fwith_output_to_temp_buffer): Doc fix.
7781
7782 2004-06-20 Richard M. Stallman <rms@gnu.org>
7783
7784 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
7785
7786 * search.c (match_limit): Cleaner err msg when no match data available.
7787
7788 * window.c (syms_of_window): Doc fix.
7789
7790 * keyboard.c (command_loop_1): Handle values `only' and `identity'
7791 for Vtransient_mark_mode.
7792
7793 * buffer.c (syms_of_buffer): Doc fix.
7794
7795 2004-06-21 David Kastrup <dak@gnu.org>
7796
7797 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
7798 and unbinding of `case-fold-search' according to
7799 `completion-ignore-case' around calls of string-match and
7800 predicates, respectively. Should give satisfactory performance
7801 in all relevant cases.
7802
7803 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7804
7805 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
7806 clip_x/y_origin.
7807
7808 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
7809
7810 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
7811
7812 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
7813 on Mac OSX.
7814
7815 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
7816
7817 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
7818
7819 2004-06-16 Kim F. Storm <storm@cua.dk>
7820
7821 * dispextern.h (Vimage_types): Remove extern.
7822
7823 2004-06-16 Miles Bader <miles@gnu.org>
7824
7825 * image.c (lookup_image_type): Initialize image type if necessary.
7826
7827 2004-06-15 Kim F. Storm <storm@cua.dk>
7828
7829 * xdisp.c (try_cursor_movement): Exclude header line from scroll
7830 margin at top of window.
7831 (try_window_reusing_current_matrix): Calculate proper cursor position
7832 after scrolling up with non-zero scroll margin, as the old cursor
7833 position corresponds to value of PT before executing this command.
7834 (try_window_id): Consider scroll margin at bottom of window too;
7835 otherwise we fail to scroll when hl-line-mode is enabled.
7836
7837 * syntax.c (skip_chars): Only recognize [:class:] when it has the
7838 proper format and class is a lower-case word.
7839
7840 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7841
7842 * gtkutil.c (xg_get_image_for_pixmap): New function.
7843 (xg_get_gdk_pixmap_and_mask): Remove.
7844 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
7845 xg_get_gdk_pixmap_and_mask.
7846
7847 * xterm.h (struct x_display_info): Typo in comment fixed.
7848
7849 2004-06-14 Juanma Barranquero <lektu@terra.es>
7850
7851 * dispextern.h (Vimage_types): Make it conditional on
7852 HAVE_WINDOW_SYSTEM.
7853
7854 * image.c (Vimage_types): Move from xdisp.c.
7855 (Vimage_type_cache): New variable.
7856 (define_image_type): New argument indicating whether an image
7857 library was loaded; cache loaded status and return t on success,
7858 nil otherwise.
7859 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
7860 (w32_delayed_load): New function to load an image library from a
7861 list of possible filenames.
7862 (init_xpm_functions, init_png_functions, init_jpeg_functions)
7863 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
7864 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
7865 (Finit_image_library): New function, extracted from `init_image'.
7866 Try to initialize an image library on demand and cache whether we
7867 were successful or not.
7868 (syms_of_image): Initialize `Vimage_types' and
7869 `Vimage_type_cache'. Add recognized image types to Vimage_types.
7870 Export `init-image-library'.
7871 (init_image): Remove initialization of all image types, except xbm
7872 and pbm.
7873
7874 * xdisp.c (Vimage_types): Delete (moved to image.c).
7875
7876 2004-06-14 Andreas Schwab <schwab@suse.de>
7877
7878 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
7879 Avoid calling specbind when completion-regexp-list is empty.
7880
7881 2004-06-13 Richard M. Stallman <rms@gnu.org>
7882
7883 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7884 (re_wctype, re_iswctype, re_wctype_to_bit):
7885 Non-function definitions moved here from regex.c.
7886
7887 * regex.c (re_wctype, re_iswctype): Function defs longer static.
7888 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
7889 (re_wctype, re_iswctype, re_wctype_to_bit):
7890 Non-function definitions moved to regex.h.
7891
7892 * window.c (Fselect_window): Doc fix.
7893
7894 * syntax.c: Include regex.h.
7895 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
7896 If requested, make a list of classes, then check the scanned
7897 chars for membership in them.
7898 (in_classes): New function.
7899 Doc fix.
7900
7901 * keyboard.c (cmd_error): Don't call any_kboard_state
7902 if inside a recursive edit level.
7903
7904 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
7905
7906 * keyboard.c (command_loop): Call any_kboard_state before
7907 command_loop_2 when at top level.
7908
7909 2004-06-13 Andreas Schwab <schwab@suse.de>
7910
7911 * print.c (print_object): Always use %ld for printing EMACS_INT.
7912
7913 * keyboard.c (cancel_hourglass_unwind): Return a value.
7914 (modify_event_symbol): Always use %ld for printing EMACS_INT.
7915 (Fexecute_extended_command): Likewise.
7916
7917 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
7918 avoid clashes.
7919 (SYNTAX): Likewise.
7920 (SYNTAX_WITH_FLAGS): Likewise.
7921 (SYNTAX_MATCH): Likewise.
7922
7923 * syntax.c (char_quoted): Avoid warning about undefined operation.
7924 (find_defun_start): Likewise.
7925 (scan_lists): Likewise.
7926 (INC_FROM): Likewise.
7927 (scan_sexps_forward): Likewise.
7928
7929 * image.c: Include <ctype.h>.
7930
7931 * xfaces.c (face_attr_equal_p): Declare parameters.
7932
7933 2004-06-13 Kenichi Handa <handa@m17n.org>
7934
7935 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
7936
7937 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
7938
7939 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
7940
7941 2004-06-12 Kenichi Handa <handa@m17n.org>
7942
7943 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
7944 ccl_prog_stack_struct and update it.
7945 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
7946 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
7947 ccl->eof_ic on EOF.
7948 (ccl_debug_hook): New function.
7949 (struct ccl_prog_stack): New member eof_ic.
7950 (ccl_driver): Handle EOF in subrountine call correctly.
7951
7952 2004-06-11 Kenichi Handa <handa@m17n.org>
7953
7954 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
7955
7956 2004-06-11 Kim F. Storm <storm@cua.dk>
7957
7958 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
7959
7960 2004-06-11 Juanma Barranquero <lektu@terra.es>
7961
7962 * keyboard.c (Fposn_at_point): Doc fix.
7963
7964 2004-06-11 David Kastrup <dak@gnu.org>
7965
7966 * search.c (match_limit): Don't flag an error if match-data
7967 exceeding the allocated search_regs.num_regs gets requested, just
7968 return Qnil.
7969
7970 2004-06-08 Miles Bader <miles@gnu.org>
7971
7972 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
7973
7974 2004-06-07 Juanma Barranquero <lektu@terra.es>
7975
7976 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
7977 (Fcurrent_time_string, Fcurrent_time_zone)
7978 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
7979
7980 2004-06-07 Miles Bader <miles@gnu.org>
7981
7982 * xfaces.c (struct named_merge_point): New type.
7983 (push_named_merge_point): New function.
7984 (merge_named_face): New function.
7985 (merge_face_ref, face_at_buffer_position, face_at_string_position):
7986 Use `merge_named_face'.
7987 (merge_face_inheritance): Function removed.
7988 (merge_face_ref): Rename from `merge_face_vector_with_property'.
7989 Add new `err_msgs' and `named_merge_points' args. Return error
7990 status. Only print error messages if ERR_MSGS is true. Don't try to
7991 do :inherit attribute validation.
7992 (merge_face_heights): Handle `unspecified' in both directions.
7993 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
7994 Call `merge_face_ref' instead of `merge_face_inheritance'.
7995 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
7996 (compute_char_face, face_at_buffer_position)
7997 (face_at_string_position): Call `merge_face_ref' instead of
7998 `merge_face_vector_with_property'.
7999
8000 2004-06-07 Kenichi Handa <handa@m17n.org>
8001
8002 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
8003 the necessary places.
8004
8005 2004-06-07 Kim F. Storm <storm@cua.dk>
8006
8007 * process.c (Fdelete_process): Undo 2004-05-28 change.
8008 Instead, call status_notify also for network process.
8009 (status_message): Use process instead of status as arg.
8010 Give messages "deleted" or "connection broken by remote peer" for
8011 an exited network process.
8012 (status_notify): Change call to status_message.
8013 (read_process_output): Increase readmax to 4096. Do not increase
8014 buffer size for datagram channels (default is now large enough).
8015
8016 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8017
8018 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
8019 problem due to newly defined variable.
8020
8021 2004-06-06 Miles Bader <miles@gnu.org>
8022
8023 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
8024 immediately if non-interactive or not initialized.
8025
8026 2004-06-05 Richard M. Stallman <rms@gnu.org>
8027
8028 * minibuf.c (Fcompleting_read): Doc fix.
8029
8030 2004-06-05 Andreas Schwab <schwab@suse.de>
8031
8032 * macfns.c (x_create_tip_frame): Fix declaration after statement.
8033
8034 2004-06-05 Juanma Barranquero <lektu@terra.es>
8035
8036 * keymap.c (Fdescribe_vector): Fix docstring.
8037 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
8038
8039 2004-06-05 Miles Bader <miles@gnu.org>
8040
8041 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
8042 attributes have different values than the default face.
8043
8044 2004-06-04 Eli Zaretskii <eliz@gnu.org>
8045
8046 * xfaces.c (x_supports_face_attributes_p): Make this function
8047 conditional on HAVE_WINDOW_SYSTEM.
8048 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
8049 Don't call x_supports_face_attributes_p if it was not compiled in.
8050
8051 2004-06-04 Miles Bader <miles@gnu.org>
8052
8053 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
8054 from Ftty_supports_face_attributes_p.
8055 (x_supports_face_attributes_p): New function.
8056 (Ftty_supports_face_attributes_p): Function deleted.
8057 (Fdisplay_supports_face_attributes_p): New function.
8058 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
8059 (face_attr_equal_p): New function.
8060 (lface_equal_p): Use it.
8061
8062 2004-06-03 Juanma Barranquero <lektu@terra.es>
8063
8064 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
8065 (Vw32_color_map): Fix typo in docstring.
8066 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
8067 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
8068 Make argument names match their use in docstring.
8069
8070 2004-06-02 Juanma Barranquero <lektu@terra.es>
8071
8072 Work around bugs/problems with MinGW builds of graphics libraries
8073 called from MSVC builds of Emacs.
8074
8075 * image.c (lookup_image): Make pointer to img static.
8076 (png_read_from_memory): Disable "global" optimization.
8077
8078 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
8079
8080 * eval.c (Fcondition_case): Fix usage. Simplify.
8081
8082 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
8083
8084 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8085
8086 * macfns.c: Don't include ccl.h.
8087 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
8088 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
8089 TextUtils.h.
8090 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
8091 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
8092 display height/width.
8093 (compute_tip_xy, Vx_max_tooltip_size): Declare.
8094 (unwind_create_tip_frame, compute_tip_xy): New functions.
8095 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
8096 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
8097 and last_show_tip_args.
8098
8099 * macgui.h [!MAC_OSX]: Include Gestalt.h.
8100 (Cursor, No_Cursor): New defines.
8101 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
8102 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
8103
8104 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
8105
8106 * macterm.c: Don't include Gestalt.h.
8107 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
8108 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
8109 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
8110 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
8111 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
8112 (construct_mouse_click, XTmouse_position)
8113 (x_scroll_bar_report_motion, x_calc_absolute_position)
8114 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
8115 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
8116 (note_mouse_movement): Clear the mouse face and reset the pointer
8117 shape when the pointer goes outside the frame without grabbing.
8118 (mac_front_window): New function.
8119 (mac_window_to_frame): New macro.
8120 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
8121 (do_window_activate, do_window_deactivate, do_app_resume)
8122 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
8123 (do_zoom_window, mac_do_receive_drag, XTread_socket)
8124 (mac_check_for_quit_char): Use mac_front_window and/or
8125 mac_window_to_frame.
8126 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
8127 scroll-bar click event.
8128 (mac_define_frame_cursor): Change the pointer shape.
8129 (x_free_frame_resources): Reset tip_window to NULL when it is
8130 disposed of.
8131 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
8132 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
8133 (do_window_update): Don't do anything if the updated window is the
8134 tooltip window.
8135 (do_mouse_moved): Handle mouse movement events here (previously in
8136 XTread_socket). Clear the mouse face if
8137 dpyinfo->mouse_face_hidden is set.
8138 (do_os_event, do_events): Remove (now in XTread_socket).
8139 (XTread_socket): Immediately return if interrupt_input_blocked.
8140 Loop until all the events in the queue are processed.
8141 Rearrange codes for mouse grabbing. Add tooltip support. Include the
8142 contents of do_os_event and do_events. Remove mouse movement
8143 handling (now in do_mouse_moved). Add the case where
8144 Vmouse_highlight has an integer value.
8145 (NewMacWindow): Remove.
8146 (make_mac_frame): Do what NewMacWindow previously did. Don't do
8147 excess initializations.
8148 (make_mac_terminal_frame): Previous initializations in
8149 make_mac_frame are moved here.
8150 (mac_initialize_display_info):
8151 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
8152
8153 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
8154 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
8155
8156 2004-05-29 Richard M. Stallman <rms@gnu.org>
8157
8158 * lisp.h (truncate_undo_list): Update decl.
8159
8160 * alloc.c (undo_outer_limit): New variable.
8161 (syms_of_alloc): Defvar it.
8162 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
8163
8164 * undo.c (truncate_undo_list): New arg LIMITSIZE.
8165
8166 * alloc.c (lisp_align_malloc): Check for base == 0
8167 regardless of HAVE_POSIX_MEMALIGN.
8168 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
8169
8170 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8171
8172 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
8173 (marker_blocks_pending_free): Remove.
8174 (Fgarbage_collect): Sweep after cleaning up undo-lists.
8175 Mark the undo lists after claning them up.
8176 Don't free block in marker_blocks_pending_free.
8177 (mark_buffer): Don't mark undo_list.
8178 (gc_sweep): Sweep hash-tables and strings first.
8179 Do free marker blocks that are empty.
8180
8181 2004-05-28 Jim Blandy <jimb@redhat.com>
8182
8183 * regex.c (print_partial_compiled_pattern): Add missing 'break'
8184 after 'case wordend'. For symbeg and symend, print to stderr,
8185 like the other cases.
8186
8187 2004-05-28 Noah Friedman <friedman@splode.com>
8188
8189 * process.c (Fdelete_process): Do not call remove_process.
8190
8191 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
8192
8193 * alloc.c (struct backtrace): Remove.
8194 (Fgarbage_collect): Use the new mark_backtrace.
8195
8196 * eval.c (mark_backtrace): New function.
8197
8198 * minibuf.c (run_exit_minibuf_hook): New function.
8199 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
8200 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
8201
8202 2004-05-27 Kim F. Storm <storm@cua.dk>
8203
8204 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
8205 over display properties, e.g. images, that replace buffer text.
8206
8207 2004-05-25 Kim F. Storm <storm@cua.dk>
8208
8209 * alloc.c (marker_blocks_pending_free): New var.
8210 (gc_sweep): Store free marker blocks on that list.
8211 (Fgarbage_collect): Free them after undo-list cleanup.
8212
8213 * process.c (wait_reading_process_input): Check connect_wait_mask
8214 before actually accepting connection in case it has already been
8215 accepted due to recursion.
8216
8217 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8218
8219 * coding.c (Fset_safe_terminal_coding_system_internal):
8220 Set suppress_error in safe_terminal_coding, not terminal_coding.
8221
8222 2004-05-22 Richard M. Stallman <rms@gnu.org>
8223
8224 * alloc.c (Fmake_string): Doc fix.
8225
8226 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
8227 and the alist pairs too.
8228
8229 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
8230
8231 * emacs.c (main): Update copyright year.
8232
8233 * fileio.c (Fread_file_name): Expand DIR if not absolute.
8234
8235 * insdel.c (del_range_2, replace_range): Don't write an anchor
8236 if the gap is empty.
8237
8238 * xdisp.c (try_scrolling): If scroll-up-aggressively or
8239 scroll-down-aggressively is small but positive, put point
8240 near the screen edge.
8241
8242 2004-05-22 Juanma Barranquero <lektu@terra.es>
8243
8244 * keymap.c (Fdefine_key): Doc fix.
8245
8246 2004-05-22 Kim F. Storm <storm@cua.dk>
8247
8248 * alloc.c (struct backtrace): Add debug_on_exit member.
8249 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
8250 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
8251 the removed cons cells.
8252 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
8253 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
8254 any cons cells pointing to unallocated stings.
8255 Do not lisp_free any marker blocks, as there may still be pointers
8256 to them from buffer undo lists at this stage of GC.
8257
8258 * keyboard.c (struct backtrace): Add debug_on_exit member.
8259 (Fcommand_execute): Clear it.
8260
8261 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
8262
8263 * intervals.c (lookup_char_property): Do not prematurely return nil.
8264
8265 2004-05-19 Jim Blandy <jimb@redhat.com>
8266
8267 Add support for new '\_<' and '\_>' regexp operators, matching the
8268 beginning and end of symbols.
8269
8270 * regex.c (enum syntaxcode): Add Ssymbol.
8271 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
8272 (re_opcode_t): New opcodes `symbeg' and `symend'.
8273 (print_partial_compiled_pattern): Print the new opcodes properly.
8274 (regex_compile): Parse the new operators.
8275 (analyse_first): Skip sym(beg|end) (they match only the empty string).
8276 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
8277 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
8278 (re_match_2_internal): Match symbeg and symend.
8279
8280 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
8281
8282 2004-05-19 Kim F. Storm <storm@cua.dk>
8283
8284 * .gdbinit (xsymbol): Fix last change.
8285
8286 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
8287
8288 * .gdbinit (xprintstr): New fun.
8289 (xstring, xprintsym): Use it.
8290
8291 * w32proc.c (create_child): Use INTMASK.
8292
8293 * alloc.c (Fgarbage_collect): Do all the marking before flushing
8294 unmarked elements of the undo list.
8295
8296 2004-05-18 David Ponce <david@dponce.com>
8297
8298 * print.c (print): Reset print_depth before to call print_object.
8299
8300 2004-05-18 Jason Rumney <jasonr@gnu.org>
8301
8302 * w32console.c: Prefix RIF functions with w32con_ to avoid
8303 namespace clash with functions in term.c and w32term.c.
8304
8305 * w32menu.c (add_menu_item, w32_menu_display_help)
8306 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
8307
8308 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
8309
8310 2004-05-18 Eli Zaretskii <eliz@gnu.org>
8311
8312 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
8313
8314 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
8315 with make_number.
8316 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
8317 with XINT.
8318
8319 2004-05-18 Kim F. Storm <storm@cua.dk>
8320
8321 * blockinput.h (INPUT_BLOCKED_P): New macros.
8322
8323 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
8324 (Ftop_level): Unblock input if blocked.
8325
8326 * buffer.h (GET_OVERLAYS_AT): New macro.
8327 * msdos.c (IT_note_mouse_highlight): Use it.
8328 * textprop.c (get_char_property_and_overlay): Use it.
8329 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
8330 * xfaces.c (face_at_buffer_position): Use it.
8331
8332 * print.c (print_object): Increase buf size.
8333
8334 2004-05-17 Jason Rumney <jasonr@gnu.org>
8335
8336 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
8337 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
8338 Lisp_Object using i member.
8339 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
8340 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
8341 consistently.
8342
8343 * w32proc.c (create_child): Use make_number instead of masking pid.
8344
8345 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
8346 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
8347 Use EQ to compare Lisp_Objects.
8348 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
8349
8350 * w32term.c (w32_num_mouse_buttons): Rename from
8351 Vw32_num_mouse_buttons and make it an int.
8352
8353 * w32.c (init_environment): Use it.
8354
8355 * w32fns.c (w32_wnd_proc): Likewise.
8356
8357 * w32proc.c (w32_pipe_read_delay): Rename from
8358 Vw32_pipe_read_delay and make it an int.
8359
8360 * w32.c (_sys_read_ahead): Use it.
8361
8362 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
8363
8364 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
8365
8366 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
8367 (key_event): Don't mix Lisp_Object and int.
8368
8369 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
8370
8371 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
8372 modifiers in language change event.
8373
8374 2004-05-17 Kim F. Storm <storm@cua.dk>
8375
8376 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
8377 Such objects may be freed markers which still exist on an undo list.
8378
8379 2004-05-16 Juanma Barranquero <lektu@terra.es>
8380
8381 * data.c (Fset_default): Make argument names match their use in
8382 docstring.
8383
8384 2004-05-15 Andreas Schwab <schwab@suse.de>
8385
8386 * emacs.c (gdb_array_mark_flag): Define.
8387 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
8388
8389 2004-05-15 Eli Zaretskii <eliz@gnu.org>
8390
8391 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
8392 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
8393 defined for the MS-DOS build.
8394
8395 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
8396
8397 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
8398
8399 2004-05-14 Kenichi Handa <handa@m17n.org>
8400
8401 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
8402
8403 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8404
8405 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
8406 section to frame.c section.
8407 (Fxw_display_color_p, Fx_file_dialog): Declare if
8408 HAVE_WINDOW_SYSTEM defined.
8409
8410 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
8411
8412 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
8413
8414 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
8415 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
8416 (XTread_socket): Fix int/Lisp_Object mixup.
8417 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
8418
8419 * macterm.h (struct frame, struct face, struct image)
8420 (display_x_get_resource, Fx_display_color_p)
8421 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
8422 Add prototypes.
8423
8424 2004-05-14 Kim F. Storm <storm@cua.dk>
8425
8426 * process.c (wait_reading_process_input): Make reentrant.
8427 Make Available and Connecting non-static. Save and restore value
8428 of waiting_for_user_input_p.
8429
8430 2004-05-13 Kim F. Storm <storm@cua.dk>
8431
8432 * keyboard.c (mark_kboards): Don't mark x and y members
8433 that are overloaded in selection request events.
8434
8435 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
8436
8437 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
8438
8439 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
8440
8441 * window.c (Fdisplay_buffer, Fsplit_window)
8442 (split-height-threshold): Doc fix.
8443
8444 2004-05-13 Juanma Barranquero <lektu@terra.es>
8445
8446 * xfaces.c (Ftty_supports_face_attributes_p)
8447 (Finternal_copy_lisp_face): Fix typo in docstring.
8448 (Finternal_get_lisp_face_attribute): Fix docstring.
8449
8450 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8451
8452 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
8453
8454 2004-05-11 Steven Tamm <steventamm@mac.com>
8455
8456 * macfns.c (Fx_create_frame): Default to using tool-bar by
8457 setting tool-bar-lines to 1 in default-frame-alist.
8458
8459 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8460
8461 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
8462 (xpm_get_color_table_v, xpm_make_color_table_h)
8463 (xpm_put_color_table_h, xpm_get_color_table_h)
8464 (xpm_str_to_color_key, xpm_load_image, xpm_load)
8465 (syms_of_image): Support XPM on Carbon Emacs. Does not
8466 depend on libXpm, but only supports XPM version 3 without extensions.
8467
8468 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8469
8470 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
8471 instead of FRAME_X_P
8472
8473 2004-05-11 Kim F. Storm <storm@cua.dk>
8474
8475 * process.c (read_process_output): Grow decoding_buf when needed;
8476 this could cause a crash in allocate_string and compact_small_strings.
8477
8478 2004-04-29 Jim Blandy <jimb@redhat.com>
8479
8480 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
8481 against proper opcode.
8482
8483 2004-05-10 Juanma Barranquero <lektu@terra.es>
8484
8485 * process.c (Fstart_process): Fix docstring.
8486
8487 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
8488 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
8489 (Fsplit_char, Fchar_charset): Make argument names match their use
8490 in docstring.
8491
8492 2004-05-10 Richard M. Stallman <rms@gnu.org>
8493
8494 * print.c (print_preprocess): Use being_printed, loop_count and
8495 halftail to detect overdeep nesting and cyclic cdr chains.
8496
8497 2004-05-10 Andreas Schwab <schwab@suse.de>
8498
8499 * lisp.h (Fmake_symbolic_link): Declare.
8500
8501 * fileio.c (Frename_file): Remove extra argument in call to
8502 Fmake_symbolic_link.
8503
8504 2004-05-10 Kim F. Storm <storm@cua.dk>
8505
8506 * xdisp.c (calc_line_height_property): Use string position when
8507 object is a string.
8508
8509 2004-05-10 Kenichi Handa <handa@m17n.org>
8510
8511 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
8512 inhibit-modification-hooks to t temporarily before calling
8513 Ferase_buffer.
8514
8515 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
8516 inhibit-modification-hooks to t temporarily before calling
8517 Ferase_buffer.
8518
8519 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
8520 inhibit-modification-hooks to t temporarily before calling
8521 Ferase_buffer.
8522
8523 * fns.c (count_combining): Delete it.
8524 (concat): Don't check combining bytes.
8525
8526 2004-05-09 Jason Rumney <jasonr@gnu.org>
8527
8528 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
8529 (globals_of_w32fns): Set it.
8530
8531 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
8532
8533 * data.c (Fquo): Simplify.
8534
8535 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
8536
8537 * data.c (Fquo): If any argument is float, do the computation in
8538 floating point.
8539
8540 2004-05-08 Juanma Barranquero <lektu@terra.es>
8541
8542 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
8543 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
8544 Fix spelling of Emacs on docstring.
8545 (Fset_process_coding_system, Fprocess_coding_system)
8546 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
8547 Make argument names match their use in docstring.
8548 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
8549 Fix docstring.
8550
8551 * editfns.c (Finsert_buffer_substring): Make argument names match their
8552 use in docstring.
8553
8554 * syntax.c (Fmodify_syntax_entry): Fix docstring.
8555
8556 2004-05-07 Steven Tamm <steventamm@mac.com>
8557
8558 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
8559 around call to ReceiveEvent to avoid certain crashes.
8560
8561 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8562
8563 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
8564 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
8565 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
8566 Save/restore the current graphics port and device handle when
8567 drawing into an offscreen graphics world.
8568
8569 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
8570 (gif_load): Likewise.
8571
8572 2004-05-07 Juanma Barranquero <lektu@terra.es>
8573
8574 * window.c (Fset_window_buffer): Fix docstring.
8575
8576 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
8577
8578 * emacs.c (main) [VMS]: Fix var ref.
8579
8580 2004-05-06 Romain Francoise <romain@orebokech.com>
8581
8582 * data.c (Fsetq_default): Fix docstring.
8583
8584 2004-05-06 Jason Rumney <jasonr@gnu.org>
8585
8586 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
8587 to avoid name clash.
8588
8589 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8590
8591 * fileio.c (barf_or_query_if_file_exists): Use lstat.
8592 (Frename_file): Handle renaming of symlinks across file systems.
8593 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
8594
8595 2004-05-04 Kim F. Storm <storm@cua.dk>
8596
8597 * xdisp.c (Qtotal): New var.
8598 (syms_of_xdisp): Intern and staticpro it.
8599 (calc_line_height_property): New arg total. Set it if
8600 line-spacing property has format (total . VALUE).
8601 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
8602 Handle total line-spacing property.
8603
8604 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8605
8606 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
8607 "under" scroll bar when size/position changes.
8608
8609 2004-05-03 Jason Rumney <jasonr@gnu.org>
8610
8611 * makefile.nt: Remove.
8612
8613 2004-05-02 Eli Zaretskii <eliz@gnu.org>
8614
8615 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
8616 Avoid compiler warnings.
8617
8618 * Makefile.in (region-cache.o): Depend on config.h.
8619
8620 2004-05-02 Romain Francoise <romain@orebokech.com>
8621
8622 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
8623 with continuation lines, too.
8624
8625 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
8626
8627 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
8628
8629 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
8630
8631 * xdisp.c (calc_line_height_property): YAILOM (yet another
8632 int/Lisp_Object mixup).
8633
8634 2004-05-01 Eli Zaretskii <eliz@gnu.org>
8635
8636 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
8637 undo bad effect of pack(4) in some versions of system headers.
8638
8639 2004-05-01 Jason Rumney <jasonr@gnu.org>
8640
8641 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
8642
8643 2004-04-30 Kim F. Storm <storm@cua.dk>
8644
8645 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
8646 (syms_of_buffer) <cursor-type>: Doc fix.
8647
8648 * dispextern.h (struct it): Remove member use_default_face.
8649 Add members override_ascent, override_descent, override_boff.
8650
8651 * xdisp.c (init_iterator): Handle line-spacing float value.
8652 Initialize override_ascent member.
8653 (append_space_for_newline): Reset override_ascent.
8654 Remove use_default_face.
8655 (calc_line_height_property): New function to calculate value of
8656 line-height and line-spacing properties. Look at overlays, too.
8657 Set override_ascent, override_descent, override_boff members when
8658 using another face than the current face. Float values are now
8659 relative to the frame default font, by default; accept a cons
8660 of ratio and face name to specify value relative to a specific face.
8661 (x_produce_glyphs): Use calc_line_height_property.
8662 Use override_ascent etc. when set to handle different face heights.
8663 A negative line-spacing property value is interpreted as a total
8664 line height, rather than inter-line spacing.
8665 (note_mouse_highlight): Allocate room for 40 overlays initially.
8666
8667 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
8668
8669 * data.c (Fsubr_name): New fun.
8670 (syms_of_data): Defsubr it.
8671
8672 2004-04-29 Kim F. Storm <storm@cua.dk>
8673
8674 * xdisp.c (null_glyph_slice): New var.
8675 (append_glyph, append_composite_glyph, append_stretch_glyph):
8676 Use it to initialize glyph slice.
8677
8678 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
8679
8680 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
8681 (on_hot_spot_p): Make sure we always return a value.
8682 (Flookup_image_map): Remove unused var ix and iy.
8683 (note_mode_line_or_margin_highlight): Remove unused var `image'.
8684
8685 2004-04-27 Eli Zaretskii <eliz@gnu.org>
8686
8687 * msdos.c (init_environment): If one of the TMP... environment
8688 variables is set to a drive letter without a trailing slash,
8689 append a slash.
8690
8691 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
8692
8693 * editfns.c (lisp_time_argument): Provide externally.
8694
8695 * fileio.c (Fset_file_times): New function.
8696 (syms_of_fileio): Intern and staticpro it.
8697
8698 2004-04-27 Kim F. Storm <storm@cua.dk>
8699
8700 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
8701 header line strings.
8702
8703 * dispextern.h (struct it): New member use_default_face.
8704
8705 * xdisp.c (Qline_height): New variable.
8706 (syms_of_xdisp): Intern and staticpro it.
8707 (append_space_for_newline): Partially undo 2004-04-25 change;
8708 add default_face_p arg, and restore callers.
8709 Clear it->use_default_face after use.
8710 (x_produce_glyphs): Set default font for ascii char if
8711 it->use_default_font is set. Change line-spacing property to set
8712 just extra line spacing. Handle new line-height property.
8713
8714 2004-04-26 Andreas Schwab <schwab@suse.de>
8715
8716 * print.c (print_object): Print non-ascii characters in bool
8717 vector representation as octal escapes.
8718
8719 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
8720 * print.c (print_object): Use it instead of BITS_PER_CHAR for
8721 bool vectors.
8722 * lread.c (read1): Likewise.
8723 * alloc.c (Fmake_bool_vector): Likewise.
8724 * data.c (Faref, Faset): Likewise.
8725 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
8726 (mapcar1): Likewise.
8727
8728 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
8729
8730 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
8731
8732 2004-04-26 Miles Bader <miles@gnu.org>
8733
8734 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
8735
8736 2004-04-26 Juanma Barranquero <lektu@terra.es>
8737
8738 * buffer.c (Fpop_to_buffer): Fix docstring.
8739
8740 2004-04-26 Steven Tamm <steventamm@mac.com>
8741
8742 * lread.c (init_lread): Don't display missing lisp directory
8743 warnings with Carbon Emacs because self-contained bundled Emacs
8744 may be built without correct installation path.
8745
8746 2004-04-25 Kim F. Storm <storm@cua.dk>
8747
8748 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8749
8750 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
8751
8752 * xdisp.c (append_space_for_newline): Rename from append_space.
8753 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
8754 (x_produce_glyphs): Handle line-spacing property on newline char.
8755 If value is t, adjust ascent and descent to fit current row height.
8756 If value is an integer or float, set extra_line_spacing to integer
8757 value, or to float value x current line height.
8758
8759 2004-04-23 Kenichi Handa <handa@m17n.org>
8760
8761 * fontset.c (Finternal_char_font): If POSITION is nil, return
8762 font for displaying CH with the default face.
8763
8764 2004-04-23 Juanma Barranquero <lektu@terra.es>
8765
8766 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
8767
8768 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
8769
8770 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
8771 Don't make assumptions about the relative place of i and val.
8772 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
8773
8774 2004-04-21 Kim F. Storm <storm@cua.dk>
8775
8776 * dispextern.h (struct glyph_slice): New struct.
8777 (struct glyph): New member slice.
8778 (GLYPH_SLICE_EQUAL_P): New macro.
8779 (GLYPH_EQUAL_P): Use it.
8780 (struct glyph_string): New member slice.
8781 (struct it_slice): New struct.
8782 (struct it): New member slice, add member to stack too.
8783 New member constrain_row_ascent_descent_p.
8784 (image_ascent): Add prototype.
8785
8786 * dispnew.c (buffer_posn_from_coords): Return full image width
8787 and height even for image slices (posn is relative to full image).
8788 (marginal_area_string): Adjust x0,y0 for image slice.
8789
8790 * image.c (image_ascent): Add slice arg; calculate ascent for
8791 image slice (or full image).
8792
8793 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
8794 (syms_of_keyboard): Defsubr them.
8795
8796 * lisp.h (pos_visible_p): Fix prototype.
8797
8798 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8799 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8800 (x_draw_image_foreground, x_draw_image_relief)
8801 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8802 Draw sliced images.
8803
8804 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
8805 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8806 (x_draw_image_foreground, x_draw_image_relief)
8807 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
8808 Draw sliced images.
8809
8810 * w32term.h (image_ascent): Remove prototype.
8811
8812 * window.c (Fpos_visible_in_window_p): Return pixel position if
8813 PARTIALLY arg is non-nil. Simplify. Doc fix.
8814 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
8815 to return/set vscroll in pixels.
8816
8817 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
8818
8819 * xdisp.c (Qslice): New variable.
8820 (syms_of_xdisp): Intern and staticpro it.
8821 (pos_visible_p): Return pixel position in new x and y args.
8822 (init_iterator): Reset it->slice info.
8823 (handle_display_prop): Parse (slice ...) property.
8824 (push_it, pop_it): Save/restore slice info.
8825 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
8826 force repositioning of tall row if window is vscrolled, as that
8827 would reset vscroll.
8828 (append_space): Set it->constrain_row_ascent_descent_p to avoid
8829 increasing row height if row is non-empty.
8830 (fill_image_glyph_string): Copy slice info.
8831 (take_vertical_position_into_account): Simplify.
8832 (produce_image_glyph): Handle iterator slice info, setup glyph
8833 slice info. Do not force minimum line height.
8834 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
8835 do not increase height (ascent/descent) of non-empty row when
8836 adding normal character glyph; instead reduce glyph ascent/descent
8837 appropriately; if row is higher than current glyph, adjust glyph
8838 descent/ascent to reposition glyph within the existing row.
8839 Likewise, when char is newline, only set ascent/descent if row is
8840 currently empty.
8841 (note_mouse_highlight): Handle hotspots with sliced image.
8842
8843 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
8844 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
8845 (x_draw_image_foreground, x_draw_image_relief)
8846 (x_draw_image_foreground_1, x_draw_image_glyph_string):
8847 Draw sliced images.
8848
8849 * xterm.h (image_ascent): Remove prototype.
8850
8851 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
8852
8853 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
8854
8855 2004-04-20 John Paul Wallington <jpw@gnu.org>
8856
8857 * fns.c (Fassoc, Feql): Fix indentation.
8858
8859 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
8860
8861 2004-04-19 John Paul Wallington <jpw@gnu.org>
8862
8863 * fns.c (Feql): New function.
8864 (syms_of_fns): Defsubr it.
8865
8866 2004-04-18 Jason Rumney <jasonr@gnu.org>
8867
8868 * w32select.c (Fw32_set_clipboard_data): Get sequence number
8869 after closing the clipboard.
8870
8871 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
8872
8873 * buffer.c (Fbuffer_base_buffer): Doc fix.
8874
8875 2004-04-17 Kim F. Storm <storm@cua.dk>
8876
8877 * keymap.c (Fkey_description): Add optional PREFIX arg.
8878 Combine prefix with KEYS to make up the full key sequence to describe.
8879 Correlate meta_prefix_char and following (simple) key to describe
8880 as meta modifier. All callers changed.
8881 (describe_map): Rename arg `keys' to `prefix'. Remove local
8882 `elt_prefix' var. Use Fkey_description with prefix instead of
8883 elt_prefix combined with Fsingle_key_description.
8884 (describe_vector): Declare static. Replace arg `elt_prefix' with
8885 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
8886 if !KEYMAP_P. Use Fkey_description with prefix instead of
8887 Fsingle_key_description.
8888
8889 * keymap.h (Fkey_description): Fix prototype.
8890 (describe_vector): Remove prototype.
8891
8892 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
8893
8894 * image.c (PNG_BG_COLOR_SHIFT): Remove.
8895 (png_load): Fix calculation of transparent background color on X
8896 and W32 platforms.
8897
8898 2004-04-16 Juanma Barranquero <lektu@terra.es>
8899
8900 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
8901 not too large before computing how much to scroll.
8902
8903 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
8904
8905 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
8906
8907 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
8908
8909 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
8910 Add hyperlink to Elisp manual to the docstring.
8911
8912 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
8913
8914 * callint.c (fix_command): Use XDCR.
8915
8916 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
8917
8918 * window.c (Fget_lru_window): Doc fix.
8919
8920 2004-04-14 Kim F. Storm <storm@cua.dk>
8921
8922 * editfns.c (Fformat): Fix allocation size of precision array.
8923
8924 * dispnew.c (update_window): Only set changed_p if
8925 scrolling_window actually did scroll.
8926 (scrolling_window): Only return 1 if we actually did scroll.
8927
8928 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
8929 height to glyph height when cursor row is not fully visible.
8930 (make_cursor_line_fully_visible): Add FORCE_P arg to return
8931 failure in case row is higher than window. Callers changed.
8932 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
8933 Try to scroll partially visible, higher-than-window cursor row.
8934 (redisplay_window): Always try to scroll partially visible,
8935 higher-than-window cursor row - both initially and again with
8936 centering_position = 0.
8937 Clear desired matrix before retrying with centering_position = 0.
8938
8939 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
8940
8941 * syntax.c (scan_lists): Simplify backward string scan.
8942 Fix off-by-one boundary check for string and comment fences.
8943
8944 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
8945
8946 * sheap.c, unexcw.c: New files.
8947
8948 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
8949
8950 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
8951 base buffer has been killed. Correct the error message if the
8952 base buffer does not exist.
8953
8954 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
8955
8956 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
8957 Cygwin itself. Add support for Xaw3d scrollbars.
8958
8959 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
8960
8961 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
8962
8963 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
8964 before Cygwin unexec.
8965
8966 * Makefile.in: Link changes for Cygwin unexec() support.
8967
8968 2004-04-12 Andreas Schwab <schwab@suse.de>
8969
8970 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
8971
8972 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
8973
8974 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
8975 IGNORE argument equals NAME. Doc fix.
8976
8977 2004-04-11 Masatake YAMATO <jet@gyve.org>
8978
8979 * buffer.c (fix_start_end_in_overlays): Make overlays
8980 empty if they are backwards.
8981
8982 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
8983
8984 * xfaces.c (face_color_supported_p): Fix compilation without X11.
8985
8986 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
8987
8988 * doc.c (Fsnarf_documentation): Ignore new file name entries.
8989
8990 2004-04-06 Kim F. Storm <storm@cua.dk>
8991
8992 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8993 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
8994
8995 * w32term.c (w32_read_socket): Set mouse_face_hidden after
8996 clearing highlight.
8997
8998 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
8999
9000 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
9001 clearing highlight.
9002
9003 * indent.c (vmotion): Do not reserve one column for continuation
9004 marks on window frames.
9005
9006 2004-04-04 Eli Zaretskii <eliz@gnu.org>
9007
9008 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
9009 from GCC.
9010
9011 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
9012
9013 * .gdbinit-union: Remove.
9014
9015 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
9016 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
9017 ($nonvalbits): Remove.
9018 ($valmask): Set it by calling xreload to avoid redundancy.
9019
9020 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
9021 (gdb_emacs_intbits): Remove.
9022
9023 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9024
9025 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
9026
9027 2004-03-30 Kenichi Handa <handa@m17n.org>
9028
9029 * editfns.c (Fformat): Fix initialization of the array info.
9030
9031 2004-03-30 Kim F. Storm <storm@cua.dk>
9032
9033 * xterm.c (x_mouse_click_focus_ignore_position): New var.
9034 (syms_of_xterm): DEFVAR_BOOL it.
9035 (ignore_next_mouse_click_timeout): New var.
9036 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
9037 Use it to filter mouse clicks following focus event.
9038
9039 2004-03-29 David Ponce <david@dponce.com>
9040
9041 * callint.c (Fcall_interactively): Fix last change.
9042
9043 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
9044
9045 * eval.c (Fcommandp): Simplify.
9046
9047 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
9048 Extend to handle all kinds of functions.
9049
9050 * lisp.h (Finteractive_form): Declare.
9051
9052 * callint.c (Fcall_interactively): Use it.
9053
9054 2004-03-26 Kim F. Storm <storm@cua.dk>
9055
9056 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
9057 to catch errors in calc_pixel_width_or_height during redisplay.
9058
9059 2004-03-26 Masatake YAMATO <jet@gyve.org>
9060
9061 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
9062
9063 * lisp.h (fix_start_end_in_overlays): Likewise.
9064
9065 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
9066
9067 * editfns.c (Ftranspose_regions): Likewise.
9068
9069 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9070
9071 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
9072
9073 2004-03-19 Richard M. Stallman <rms@gnu.org>
9074
9075 * s/sol2-6.h: Delete previous change.
9076
9077 2004-03-19 Kim F. Storm <storm@cua.dk>
9078
9079 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
9080 to_charpos corresponds to newline in right fringe. Use local
9081 BUFFER_POS_REACHED_P macro.
9082
9083 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9084
9085 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
9086 to compile on non-window system.
9087
9088 2004-03-19 Kim F. Storm <storm@cua.dk>
9089
9090 * dispextern.h (calc_pixel_width_or_height): Add prototype.
9091
9092 * image.c (Qcenter): Move to xdisp.c.
9093
9094 * xdisp.c (Qcenter): Declare here.
9095 (syms_of_xdisp): Intern and staticpro it.
9096 (handle_single_display_prop): Allow space display property on all
9097 platforms.
9098 (display_mode_line): Set mode_line_p before displaying line.
9099 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
9100 handling. Remove complex cases for fringes and scroll-bars.
9101 Add left, right, and center alignment positions. Add text (area)
9102 width/height. Return width or height for image specs.
9103 (produce_stretch_glyph): Improve handling of :align-to. Is now
9104 relative to left of text area by default, but other base offsets
9105 can be specified -- also for text lines.
9106
9107 * term.c (produce_glyphs): Handle IT_STRETCH.
9108 (produce_stretch_glyph): New function to handle space width and
9109 align-to display properties on non-window systems.
9110
9111 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
9112
9113 * fileio.c (Fread_file_name): Set completion-ignore-case for
9114 case-insensitive systems.
9115
9116 2004-03-14 Masatake YAMATO <jet@gyve.org>
9117
9118 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
9119 when keymap and cursor are setup.
9120
9121 2004-03-14 Steven Tamm <steventamm@mac.com>
9122
9123 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9124
9125 2004-03-14 Kim F. Storm <storm@cua.dk>
9126
9127 * dispextern.h (x_find_image_file): Add prototype.
9128
9129 * image.c (x_find_image_file): Make extern.
9130
9131 * xfns.c (x_find_image_file): Remove prototype.
9132
9133 2004-03-13 Eli Zaretskii <eliz@gnu.org>
9134
9135 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
9136
9137 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
9138
9139 2004-03-12 Richard M. Stallman <rms@gnu.org>
9140
9141 * fns.c (internal_equal): New arg PROPS controls comparing
9142 text properties. All callers changed.
9143 (Fequal_including_properties): New function.
9144 (syms_of_fns): defsubr it.
9145
9146 2004-03-12 Kim F. Storm <storm@cua.dk>
9147
9148 Fix image support on MAC. From YAMAMOTO Mitsuharu.
9149
9150 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
9151 (image_background, image_background_transparent): Fix prototypes.
9152
9153 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
9154
9155 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
9156 (x_query_font, x_find_ccl_program, x_set_window_size)
9157 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9158 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9159 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
9160
9161 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
9162 (x_query_font, x_find_ccl_program, x_set_window_size)
9163 (x_make_frame_visible, mac_initialize, XCreatePixmap)
9164 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
9165 (mac_draw_line_to_pixmap): Add prototypes.
9166
9167 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9168
9169 * macterm.c (XTread_socket): Fix mouse click on tool bar.
9170
9171 2004-03-11 Kim F. Storm <storm@cua.dk>
9172
9173 * dispextern.h: Move image related prototypes from xfns.c section
9174 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
9175 HAVE_X_WINDOWS.
9176
9177 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
9178 Move gtkutil.o to new GTK_OBJ list.
9179 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
9180 (GTK_OBJ) [USE_GTK]: New declaration.
9181 (obj): Add $(GTK_OBJ) to list.
9182
9183 2004-03-11 Steven Tamm <steventamm@mac.com>
9184
9185 * image.c [MAC_OSX]: Include sys/stat.h.
9186
9187 * macfns.c (syms_of_macfns): Remove definitions of things now
9188 defined in image.c.
9189
9190 2004-03-11 Kim F. Storm <storm@cua.dk>
9191
9192 The following changes consolidates the identical/similar image
9193 support code previously found in xfns.c, w32fns.c, and macfns.c
9194 into a new file image.c.
9195
9196 * makefile.w32-in (OBJ1): Add image.o.
9197 ($(BLD)/image.$(O)): Add dependencies.
9198
9199 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
9200 (image.o): Add dependencies.
9201
9202 * image.c: New file with consolidated image support code.
9203 (COLOR_TABLE_SUPPORT): New define to control whether
9204 color table support is available (X only).
9205 (Bitmap_Record): Common name for x_bitmap_record,
9206 w32_bitmap_record, and mac_bitmap_record.
9207 (XImagePtr): Common name for pointer to XImage or equivalent.
9208 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
9209 to XImagePtr on X+MAC, and to HDC on W32.
9210 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
9211 (NO_PIXMAP): Common name for "None" or equivalent.
9212 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
9213 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
9214 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
9215 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
9216 Define with suitable equivalents on W32 and MAC for code sharing.
9217 (XDrawLine): Define on MAC for code sharing.
9218 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
9219 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
9220 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9221 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9222 (x_reference_bitmap, x_create_bitmap_from_data)
9223 (x_create_bitmap_from_file, x_destroy_bitmap)
9224 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9225 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9226 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9227 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9228 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9229 (define_image_type, lookup_image_type, valid_image_p)
9230 (image_error, enum image_value_type, struct image_keyword)
9231 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9232 (make_image, free_image, prepare_image_for_display, image_ascent)
9233 (four_corners_best, image_background, image_background_transparent)
9234 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9235 (make_image_cache, free_image_cache, clear_image_cache)
9236 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9237 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9238 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9239 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9240 (init_image_func_pointer, image_load_quartz2d)
9241 (struct ct_color, init_color_table, free_color_table)
9242 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9243 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9244 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9245 (x_disable_image, x_build_heuristic_mask)
9246 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9247 (TIFF support, GIF support, Ghostscript support): Consolidate image
9248 code from xfns.c, w32fns.c, and macfns.c.
9249 (syms_of_image): Consolidate image related symbol setup here.
9250 (init_image): Consolidate image related initializations here.
9251
9252 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
9253 and init_image. Remove call to init_xfns.
9254
9255 * macterm.h (struct mac_bitmap_record): Add file member.
9256 Not currently used, but simplifies code sharing.
9257
9258 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9259 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9260 (x_reference_bitmap, x_create_bitmap_from_data)
9261 (x_create_bitmap_from_file, x_destroy_bitmap)
9262 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9263 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9264 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9265 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9266 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9267 (define_image_type, lookup_image_type, valid_image_p)
9268 (image_error, enum image_value_type, struct image_keyword)
9269 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9270 (make_image, free_image, prepare_image_for_display, image_ascent)
9271 (four_corners_best, image_background, image_background_transparent)
9272 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9273 (make_image_cache, free_image_cache, clear_image_cache)
9274 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9275 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9276 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9277 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
9278 (init_image_func_pointer, image_load_quartz2d)
9279 (struct ct_color, init_color_table, free_color_table)
9280 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9281 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9282 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9283 (x_disable_image, x_build_heuristic_mask)
9284 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9285 (TIFF support, GIF support, Ghostscript support): Merge with image
9286 code from xfns.c and macfns.c into image.c.
9287 (syms_of_xfns): Move image related symbols to image.c.
9288 (init_external_image_libraries, init_xfns): Remove; initialization
9289 moved to init_image in image.c.
9290
9291 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9292 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9293 (x_reference_bitmap, x_create_bitmap_from_data)
9294 (x_create_bitmap_from_file, x_destroy_bitmap)
9295 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9296 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9297 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9298 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9299 (define_image_type, lookup_image_type, valid_image_p)
9300 (image_error, enum image_value_type, struct image_keyword)
9301 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9302 (make_image, free_image, prepare_image_for_display, image_ascent)
9303 (four_corners_best, image_background, image_background_transparent)
9304 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9305 (make_image_cache, free_image_cache, clear_image_cache)
9306 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9307 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9308 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9309 (struct ct_color, init_color_table, free_color_table)
9310 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9311 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9312 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9313 (x_disable_image, x_build_heuristic_mask)
9314 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9315 (TIFF support, GIF support, Ghostscript support): Merge with image
9316 code from xfns.c and macfns.c into image.c.
9317 (syms_of_xfns): Move image related symbols to image.c.
9318 (init_external_image_libraries, init_xfns): Remove; initialization
9319 moved to init_image in image.c.
9320
9321 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
9322 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9323 (x_reference_bitmap, x_create_bitmap_from_data)
9324 (x_create_bitmap_from_file, x_destroy_bitmap)
9325 (x_destroy_all_bitmaps, x_create_bitmap_mask)
9326 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
9327 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
9328 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
9329 (define_image_type, lookup_image_type, valid_image_p)
9330 (image_error, enum image_value_type, struct image_keyword)
9331 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
9332 (make_image, free_image, prepare_image_for_display, image_ascent)
9333 (four_corners_best, image_background, image_background_transparent)
9334 (x_clear_image_1, x_clear_image, x_alloc_image_color)
9335 (make_image_cache, free_image_cache, clear_image_cache)
9336 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
9337 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
9338 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
9339 (struct ct_color, init_color_table, free_color_table)
9340 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
9341 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
9342 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
9343 (x_disable_image, x_build_heuristic_mask)
9344 (XBM support, XPM support, PBM support, PNG support, JPEG support)
9345 (TIFF support, GIF support, Ghostscript support): Merge with
9346 w32fns.c and macfns.c image code into image.c.
9347 (syms_of_xfns): Move image related symbols to image.c.
9348 (init_xfns): Remove; initialization moved to init_image in image.c.
9349
9350 * lisp.h (syms_of_image, init_image): Add protoypes.
9351 (init_xfns): Remove prototype.
9352
9353 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9354 (x_reference_bitmap, x_create_bitmap_from_data)
9355 (x_create_bitmap_from_file, x_destroy_bitmap)
9356 (x_create_bitmap_mask): Move prototypes from dispextern.h.
9357 (gamma_correct) [MAC_OS]: Add prototype.
9358
9359 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
9360 (x_reference_bitmap, x_create_bitmap_from_data)
9361 (x_create_bitmap_from_file, x_destroy_bitmap)
9362 (x_create_bitmap_mask): Move prototypes to dispextern.h.
9363
9364 2004-03-09 Kenichi Handa <handa@etlken2>
9365
9366 * coding.c (decode_coding_emacs_mule): Handle insufficent source
9367 correctly.
9368
9369 2004-03-04 Richard M. Stallman <rms@gnu.org>
9370
9371 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
9372
9373 * window.c (Fdisplay_buffer): Doc fix.
9374
9375 * buffer.c (Fpop_to_buffer): Doc fix.
9376
9377 2004-03-03 Kim F. Storm <storm@cua.dk>
9378
9379 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
9380
9381 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
9382
9383 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
9384
9385 2004-03-02 Richard M. Stallman <rms@gnu.org>
9386
9387 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
9388
9389 2004-03-02 Kenichi Handa <handa@m17n.org>
9390
9391 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
9392
9393 2004-03-02 Kim F. Storm <storm@cua.dk>
9394
9395 * window.h (struct window): New member overlay_arrow_bitmap.
9396
9397 * window.c (make_window): Initialize overlay_arrow_bitmap.
9398
9399 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
9400 implement and integrate multiple overlay arrows with redisplay.
9401 (syms_of_xdisp): DEFVAR_LISP and initialize it.
9402 (last_arrow_position, last_arrow_string): Replace by properties.
9403 (Qlast_arrow_position, Qlast_arrow_string)
9404 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
9405 (syms_of_xdisp): Intern and staticpro them.
9406 (overlay_arrow_string_or_property, update_overlay_arrows)
9407 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
9408 (overlay_arrow_at_row): New functions for multiple overlay arrows.
9409 (redisplay_internal): Use them instead of directly accessing
9410 Voverlay_arrow_position etc. for multiple overlay arrows.
9411 (mark_window_display_accurate): Use update_overlay_arrows.
9412 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
9413 (try_window_id): Use overlay_arrows_changed_p.
9414 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
9415 (display_line): Use overlay_arrow_at_row to check multiple
9416 overlay arrows, and get relevant overlay-arrow-string and
9417 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
9418 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
9419 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
9420
9421 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
9422 (update_window_fringes): Remove unused code.
9423
9424 2004-03-01 Jason Rumney <jasonr@gnu.org>
9425
9426 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
9427
9428 2004-03-01 Juanma Barranquero <lektu@terra.es>
9429
9430 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
9431
9432 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
9433
9434 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9435
9436 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
9437 how many colors can be displayed.
9438
9439 2004-03-01 Kenichi Handa <handa@m17n.org>
9440
9441 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
9442 correctly.
9443
9444 2004-02-28 Kim F. Storm <storm@cua.dk>
9445
9446 * dispnew.c (update_window): Update header line also if there are
9447 no other changes in window (move code after set_cursor label).
9448
9449 * lisp.h (mark_window_display_accurate): Remove prototype.
9450
9451 * window.c (window_loop, Fforce_window_update): Force mode line
9452 updates by setting prevent_redisplay_optimizations_p and
9453 update_mode_lines.
9454
9455 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9456
9457 * xfns.c (x_window): Fix indentation.
9458
9459 * xterm.c (x_calc_absolute_position): Call x_real_positions
9460 to get WM window sizes and use those to calculate position.
9461 (x_set_offset): Remove code commented out.
9462
9463 2004-02-28 Miles Bader <miles@gnu.org>
9464
9465 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
9466
9467 2004-02-28 Kim F. Storm <storm@cua.dk>
9468
9469 * keyboard.c (kbd_buffer_store_event_hold): New function to store
9470 an event into kbd fifo, but with special handling of quit event;
9471 a quit event is saved for later, and further events are discarded
9472 until the saved quit event has been processed.
9473 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
9474 (gen_help_event): Store help event in kbd fifo.
9475 (NREAD_INPUT_EVENTS): Remove.
9476 (read_avail_input): Adapt to new read_socket_hook interface.
9477 Remove allocation and initialization of local input_event buffer,
9478 as read_socket_hook stores events directly in fifo. Allocate and
9479 initialize local hold_quit event to handle postponed quit event
9480 (and store it if set by kbd_buffer_store_event_hold).
9481
9482 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
9483 (gen_help_event): Fix prototype.
9484
9485 * macterm.c (XTread_socket): Remove bufp_r and
9486 numcharsp args. Add hold_quit arg.
9487 Rework to use just one, local, inev input_event. Store inev
9488 directly in fifo using kbd_buffer_store_event_hold.
9489
9490 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
9491 (read_input_waiting): Adapt to new read_socket_hook interface.
9492 Remove allocation and initialization of local input_event buffer,
9493 as read_socket_hook stores events directly in fifo. Allocate and
9494 initialize local hold_quit event to handle postponed quit event
9495 (and store it if set by kbd_buffer_store_event_hold).
9496
9497 * term.c (read_socket_hook): Fix arg list.
9498
9499 * termhooks.h (read_socket_hook): Fix prototype.
9500
9501 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
9502 numcharsp args. Add hold_quit arg.
9503 Rework to use just one, local, inev input_event. Store inev
9504 directly in fifo using kbd_buffer_store_event_hold.
9505
9506 * w32inevt.h (w32_console_mouse_position): Fix prototype.
9507
9508 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
9509 Add hold_quit arg. Rework to use just one, local, inev
9510 input_event. Store inev directly in fifo using
9511 kbd_buffer_store_event_hold. Update count in one place.
9512 Postpone call to gen_help_event until inev is stored; use new
9513 local do_help for this.
9514 Remove local emacs_event in handing of ButtonPress event; just use
9515 inev instead (so no reason to copy it later).
9516
9517 * xsmfns.c (x_session_check_input): Remove numchars arg.
9518
9519 * xterm.c (x_focus_changed, x_detect_focus_change):
9520 Remove numchars arg. Always store event into bufp arg.
9521 Return nothing. Callers changed accordingly.
9522 (glyph_rect): Simplify.
9523 (STORE_KEYSYM_FOR_DEBUG): New macro.
9524 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
9525 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
9526 (current_hold_quit) [USE_GTK]: Add.
9527 (event_handler_gdk): Adapt to new handle_one_xevent.
9528 (handle_one_xevent): Remove bufp_r and numcharsp args.
9529 Add hold_quit arg. Rework to use just one, local, inev
9530 input_event. Store inev directly in fifo using
9531 kbd_buffer_store_event_hold. Update count in one place.
9532 Postpone call to gen_help_event until inev is stored; use new
9533 local do_help for this.
9534 Simplify handling of keysyms (consolidate common code). Fix bug
9535 where count was updated with nchars instead of nbytes.
9536 Remove local emacs_event in handing of ButtonPress event; just use
9537 inev instead (so no reason to copy it later).
9538 Remove `out' label. Rename label `ret' to `done'; add various
9539 `goto done' to clarify code flow in deeply nested blocks.
9540 (x_dispatch_event): Simplify as handle_one_xevent now calls
9541 kbd_buffer_store_event itself.
9542 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
9543 arg. Call handle_one_xevent with new arglist. Store event from
9544 x_session_check_input in fifo.
9545 [USE_GTK]: Setup current_hold_quit.
9546 Decrement handling_signal before unblocking input.
9547 (x_initialize) [USE_GTK]: Initialize current_count.
9548
9549 * xterm.h (x_session_check_input): Fix prototype.
9550
9551 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9552
9553 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
9554
9555 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
9556 macgui.h).
9557
9558 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
9559
9560 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
9561 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
9562 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
9563 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
9564 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
9565 (Bitmap): Remove typedef.
9566 (Pixmap): Change int to GWorldPtr.
9567
9568 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9569
9570 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9571 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
9572 New #define to extract 16-bit depth color components from unsigned
9573 long representation.
9574 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
9575 colors used for masks.
9576 (struct mac_display_info): Add color_p. Remove n_cbits.
9577
9578 * macfns.c: Include sys/types.h and sys/stat.h.
9579 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
9580 Include QuickTime/QuickTime.h.
9581 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
9582 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
9583 functions defined in macterm.c.
9584 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
9585 (ZPixmap): New #define for compatibility with xfns.c.
9586 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
9587 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
9588 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
9589 New functions.
9590 (four_corners_best, x_create_x_image_and_pixmap)
9591 (x_destroy_x_image, unwind_create_frame, x_disable_image)
9592 (x_edge_detection, init_color_table, colors_in_color_table)
9593 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
9594 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
9595 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
9596 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
9597 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
9598 long mixup.
9599 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
9600 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
9601 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
9602 (x_set_cursor_type, Fxw_color_values, valid_image_p)
9603 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
9604 (x_alloc_image_color, clear_image_cache, lookup_image)
9605 (x_find_image_file, xbm_read_bitmap_file_data)
9606 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
9607 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
9608 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
9609 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
9610 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
9611 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
9612 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
9613 #if 0.
9614 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
9615 #if 0. Free white_relief.gc and black_relief.gc.
9616 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
9617 New functions (from xfns.c).
9618 (Fx_create_frame): Record unwind_create_frame.
9619 (Fxw_display_color_p): Use dpyinfo->color_p.
9620 (Fx_display_grayscale_p, Fx_display_planes): Don't use
9621 dpyinfo->n_cbits.
9622 (Fx_display_color_cells): Use dpyinfo->n_planes;
9623 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
9624 (Qheuristic, cross_disabled_images, emboss_matrix)
9625 (laplace_matrix): New variables (from xfns.c).
9626 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
9627 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
9628 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
9629 (image_background_transparent): New function (from xfns.c).
9630 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9631 (image_load_quicktime): Add declaration.
9632 [MAC_OSX] (image_load_quartz2d): Likewise.
9633 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
9634 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
9635 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
9636 (xbm_load_image_from_file, x_laplace_read_row)
9637 (x_laplace_write_row, pbm_read_file): Remove functions.
9638 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
9639 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
9640 (colors_in_color_table): Sync with xfns.c (although not used).
9641 (lookup_rgb_color): Don't lookup color table. Just do gamma
9642 correction.
9643 (COLOR_INTENSITY): New #define (from xfns.c).
9644 (x_disable_image): New function (from xfns.c).
9645 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9646 (x_build_heuristic_mask): Sync with xfns.c.
9647 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9648 (HAVE_PBM): Remove #ifdef.
9649 (pbm_load): Sync with xfns.c. Set img->width and img->height
9650 before IMAGE_BACKGROUND.
9651 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
9652 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
9653 Don't enclose with #if HAVE_PNG.
9654 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
9655 symbol _CGImageCreateWithPNGDataProvider is defined.
9656 Otherwise use image_load_quicktime.
9657 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
9658 [HAVE_PNG] (png_load): Sync with xfns.c.
9659 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
9660 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
9661 HAVE_JPEG.
9662 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
9663 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
9664 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
9665 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
9666 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
9667 (tiff_image_p, tiff_load): Don't enclose declarations with #if
9668 HAVE_TIFF.
9669 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
9670 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
9671 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
9672 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
9673 New functions (from xfns.c).
9674 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
9675 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
9676 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
9677 Don't enclose with #if HAVE_GIF.
9678 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
9679 animated gif. Otherwise use image_load_quicktime.
9680 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
9681 gif_DrawText to avoid conflict with QuickdrawText.h.
9682 [HAVE_GIF] (gif_load): Sync with xfns.c.
9683 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
9684 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
9685 Ghostscript is not supported yet).
9686 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
9687 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
9688 cross_disabled_images (from xfns.c). Remove #if 0 for supported
9689 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9690 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
9691 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
9692 HAVE_PNG. Call EnterMovies to support animated gifs.
9693 Call init_image_func_pointer to bind a symbol
9694 _CGImageCreateWithPNGDataProvider if it is defined.
9695
9696 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
9697 (x_draw_bar_cursor): Sync declaration with xterm.c.
9698 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
9699 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
9700 graphics).
9701 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
9702 (mac_draw_line_to_pixmap, XCreatePixmap)
9703 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
9704 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
9705 New functions.
9706 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
9707 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9708 Cast bits to char *.
9709 (reflect_byte): New function (from w32fns.c).
9710 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
9711 due to byte alignment.
9712 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
9713 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
9714 (XSetForeground): Remove static (now used in macfns.c).
9715 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
9716 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
9717 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
9718 (x_draw_glyph_string_box, x_draw_image_foreground)
9719 (x_draw_image_foreground_1, x_draw_image_glyph_string)
9720 (x_draw_stretch_glyph_string, x_draw_glyph_string)
9721 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
9722 Sync with xterm.c.
9723 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
9724 than the xterm.c version when a strictly horizontal or vertical
9725 line is drawn.
9726 (XTset_terminal_window): Add static.
9727 (x_make_frame_visible): Add UNBLOCK_INPUT.
9728 (x_free_frame_resources): New funcion (from xterm.c).
9729 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
9730 occurs in tool bar area.
9731 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
9732 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
9733 Initialize image cache.
9734 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
9735 Enclose unused functions with #if 0.
9736 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
9737 (decode_mac_font_name): New function to apply code conversions
9738 from a mac font name to an XLFD font name according to its script code.
9739 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
9740 font name to a mac font name according to REGISTRY and ENCODING fields.
9741 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
9742 whose name starts with `.'.
9743 (init_font_name_table): Use decode_mac_font_name. Add both
9744 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
9745 of a font is smJapanese.
9746 (mac_do_list_fonts): New function to list fonts that match a given
9747 pattern.
9748 (x_list_fonts, XLoadQueryFont): Use it.
9749 (XLoadQueryFont): Set rbearing field for each variable width
9750 character to avoid needless redraw.
9751 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
9752
9753 2004-02-26 Kim F. Storm <storm@cua.dk>
9754
9755 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
9756 as read_socket_hook handler on X aborts if buffer is too small
9757 and W32 handler doesn't always check buffer limit.
9758
9759 * xdisp.c (handle_single_display_prop): Handle left-fringe and
9760 right-fringe similar to a display margin image. Specifically,
9761 the characters having the fringe prop are no longer shown, and
9762 we use IT_IMAGE/next_element_from_image with image_id = -1 to
9763 do this. Set fringe bitmap face_id in it->face_id.
9764 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
9765 still realize it->face (i.e. the fringe bitmap face).
9766
9767 2004-02-25 Miles Bader <miles@gnu.org>
9768
9769 * xdisp.c (check_it): Check string/string_pos consistency.
9770 (init_iterator): Initialize string-related fields properly.
9771
9772 2004-02-11 Miles Bader <miles@gnu.org>
9773
9774 * xdisp.c (produce_image_glyph): Force negative descents to zero.
9775
9776 2004-02-10 Miles Bader <miles@gnu.org>
9777
9778 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
9779 BLOCK_INPUT can be nested, so it doesn't make much sense.
9780
9781 2004-02-24 Michael Mauger <mmaug@yahoo.com>
9782
9783 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
9784 (xbm_read_bitmap_data): Use unsigned char for image data.
9785
9786 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
9787
9788 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
9789
9790 2004-02-22 Jason Rumney <jasonr@gnu.org>
9791
9792 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
9793 correctly over other bitmaps.
9794
9795 2004-02-21 Eli Zaretskii <eliz@gnu.org>
9796
9797 * emacs.c (USAGE1): Split into two halves.
9798 (USAGE2): Second half of the old USAGE1.
9799 (USAGE3): Rename from USAGE2.
9800 (USAGE4): Rename from USAGE3.
9801
9802 2004-02-21 Juri Linkov <juri@jurta.org>
9803
9804 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
9805 Fix --multibyte. Move --help, --version to USAGE2. Add alias
9806 --file. Fix -f, -l. Sort options. Untabify.
9807 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
9808
9809 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
9810
9811 * category.c (Fdefine_category, Fcategory_docstring)
9812 (Fget_unused_category, Fset_category_table)
9813 (Fcategory_set_mnemonics): Doc fixes.
9814
9815 2004-02-20 Kim F. Storm <storm@cua.dk>
9816
9817 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
9818 The following changes are relative to the 2004-01-21 revision.
9819 (NREAD_INPUT_EVENTS): Define as max number of input events to read
9820 in one call to read_socket_hook. Value is 8.
9821 (read_avail_input): Separate and rework handling of read_socket_hook
9822 and non-read_socket_hook cases. Use smaller input_event buffer
9823 in read_socket_hook case, and repeat if full buffer is read.
9824 Use new local variable 'discard' to skip input after C-g.
9825 In non-read_socket_hook case, just use a single input_event, and
9826 call kbd_buffer_store_event on the fly for each character.
9827
9828 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
9829
9830 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
9831 Remove unused `gu' alternative.
9832
9833 2004-02-19 Andreas Schwab <schwab@suse.de>
9834
9835 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
9836 warning.
9837
9838 2004-02-18 Kim F. Storm <storm@cua.dk>
9839
9840 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
9841 Fix last change.
9842
9843 2004-02-17 Kim F. Storm <storm@cua.dk>
9844
9845 * xdisp.c (fast_find_position): Fix return value of new version;
9846 it was inverted compared to the 21.1 version.
9847 (get_window_cursor_type): Don't look at glyph if NULL.
9848 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
9849
9850 * keyboard.c: Rework previous change; it didn't consider that the
9851 buf array was allocated on the stack.
9852 (prev_read): Remove variable.
9853 (read_avail_input_buf): New static event buffer array.
9854 (in_read_avail_input): New static variable to handle re-entrancy.
9855 (read_avail_input): Change buf to pinter to read_avail_input_buf.
9856 Use in_read_avail_input to handle re-entrance; when re-entered,
9857 fully initialize and use tmp_buf array instead of read_avail_input_buf.
9858 Do not initialize read_avail_input_buf in full here; instead assume it
9859 is always cleared on entry. To ensure that, we clear (just) the
9860 entries that were used before we return.
9861 (init_keyboard): Initialize read_avail_input_buf here.
9862
9863 2004-02-16 Jesper Harder <harder@ifa.au.dk>
9864
9865 * cmds.c (Fend_of_line): Doc fix.
9866
9867 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
9868
9869 * keyboard.c (prev_read): New static variable.
9870 (read_avail_input): Use it to zero out only those slots in buf[]
9871 that were used last time we were called.
9872
9873 2004-02-16 Eli Zaretskii <eliz@gnu.org>
9874
9875 * Makefile.in (obj): Move fringe.o from here...
9876 (XOBJ, MAC_OBJ): ...to here.
9877
9878 2004-02-16 Stephen Eglen <stephen@gnu.org>
9879
9880 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
9881
9882 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
9883
9884 * data.c (Fbyteorder):
9885 * fringe.c (Fdefine_fringe_bitmap):
9886 * xdisp.c (handle_single_display_prop):
9887 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
9888
9889 2004-02-16 Jason Rumney <jasonr@gnu.org>
9890
9891 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
9892
9893 2004-02-15 Steven Tamm <steventamm@mac.com>
9894
9895 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
9896 controlling emulation of a three button mouse with option and
9897 command keys.
9898 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
9899 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
9900
9901 2004-02-15 Kim F. Storm <storm@cua.dk>
9902
9903 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
9904
9905 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
9906 Perform byte-swapping.
9907
9908 2004-02-14 Kim F. Storm <storm@cua.dk>
9909
9910 * dispextern.h (struct draw_fringe_bitmap_params): Change member
9911 bits from char to short to facilitate wider bitmaps.
9912 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
9913 member.
9914
9915 * fringe.c (struct fringe_bitmap): Change member bits from char to
9916 short to facilitate 16 bits wide bitmaps. Modify all standard
9917 bitmaps accordingly.
9918 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
9919 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
9920 (draw_fringe_bitmap): Ditto.
9921 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
9922 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
9923 handle up to 16 bits wide bitmaps.
9924 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
9925 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
9926
9927 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
9928 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
9929 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
9930
9931 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
9932 so it is no longer necessary to expand them here.
9933
9934 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
9935
9936 2004-02-12 Kim F. Storm <storm@cua.dk>
9937
9938 * window.c (Fwindow_fringes): Doc fix.
9939
9940 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9941
9942 * xselect.c (x_get_foreign_selection): Add new optional parameter
9943 time_stamp.
9944 (Fx_get_selection_internal): Ditto, pass time_stamp to
9945 x_get_foreign_selection.
9946
9947 * data.c (Fbyteorder): New function.
9948
9949 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9950
9951 * atimer.c: Move include stdio.h to same place as in other files.
9952
9953 * region-cache.c: Ditto.
9954
9955 * sysdep.c: Ditto.
9956
9957 * xfaces.c: Ditto.
9958
9959 2004-02-09 Sam Steingold <sds@gnu.org>
9960
9961 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
9962
9963 2004-02-09 Kim F. Storm <storm@cua.dk>
9964
9965 * fringe.c: New file. Move original fringe related declarations
9966 and code from dispextern.h and xdisp.c here.
9967 Rework code to support user defined fringe bitmaps, redefining
9968 standard bitmaps, ability to overlay user defined bitmap with
9969 overlay arrow bitmap, and add faces to bitmaps.
9970 (Voverflow_newline_into_fringe): Declare here.
9971 (enum fringe_bitmap_align): New enum.
9972 (..._bits): All bitmaps are now defined without bitswapping; that
9973 is now done in init_fringe_once (if necessary).
9974 (standard_bitmaps): New array with specifications for the
9975 standard fringe bitmaps.
9976 (fringe_faces): New array.
9977 (valid_fringe_bitmap_id_p): New function.
9978 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
9979 (draw_fringe_bitmap): New function which draws fringe bitmap,
9980 possibly overlaying bitmap with cursor in right fringe or the
9981 overlay arrow in the left fringe.
9982 (update_window_fringes): Do not handle overlay arrow here.
9983 Compare and copy fringe bitmap faces.
9984 (init_fringe_bitmap): New function.
9985 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
9986 define and destroy user defined fringe bitmaps.
9987 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
9988 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
9989 (syms_of_fringe): New function. Defsubr new DEFUNs.
9990 DEFVAR_LISP Voverflow_newline_into_fringe.
9991 (init_fringe_once, init_fringe): New functions.
9992 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
9993
9994 * Makefile.in (obj): Add fringe.o.
9995 (fringe.o): New dependencies.
9996
9997 * dispextern.h (FRINGE_ID_BITS): New definition for number of
9998 bits allocated to hold a fringe number. Increase number of bits
9999 from 4 to 8 to allow user defined fringe bitmaps.
10000 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
10001 left_user_fringe_face_id, right_user_fringe_bitmap,
10002 right_user_fringe_face_id.
10003 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
10004 Move to new file fringe.c.
10005 (MAX_FRINGE_BITMAPS): Define here.
10006 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
10007 and overlay_p. Change member which to int.
10008 (struct redisplay_interface): New members define_fringe_bitmap
10009 and destroy_fringe_bitmap.
10010 (valid_fringe_bitmap_id_p): Add prototype.
10011 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
10012
10013 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
10014 arrows.
10015 (update_frame): Do flush_display if force_flush_display_p to
10016 ensure display (specifically fringes) are updated in a timely
10017 manner when resizing the frame by dragging the mouse.
10018 (update_window_line): Update row if overlay arrow changed.
10019 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
10020 or overlay arrow changed.
10021
10022 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
10023 syms_of_fringe, and init_fringe.
10024
10025 * frame.h (struct frame): New member force_flush_display_p.
10026
10027 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
10028 Add prototypes.
10029
10030 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
10031 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
10032 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
10033 Use cursor color for displaying cursor in fringe.
10034 (x_redisplay_interface): Add null handlers for
10035 define_fringe_bitmap and destroy_fringe_bitmap functions.
10036
10037 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
10038 xterm.c to handle overlayed fringe bitmaps and to use cursor color
10039 for displaying cursor in fringe.
10040 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
10041 specific functions to define and destroy fringe bitmaps in fringe_bmp.
10042 (w32_redisplay_interface): Add them to redisplay_interface.
10043 (w32_term_init): Call w32_init_fringe instead of explicitly
10044 defining fringe bitmaps in fringe_bmp array.
10045 (x_delete_display): Call w32_reset_fringes instead of explicitly
10046 destroying fringe bitmaps in fringe_bmp array.
10047
10048 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
10049 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
10050 (continued_bits, continuation_bits, ov_bits, first_line_bits)
10051 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
10052 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
10053 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
10054 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
10055 Move fringe handling vars and code to new file fringe.c.
10056 (handle_display_prop): Handle left-fringe and right-fringe
10057 display properties; store user fringe bitmaps in iterator.
10058 (move_it_in_display_line_to): Handle cursor in fringe at eob.
10059 (clear_garbaged_frames): Set force_flush_display_p if resized.
10060 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
10061 (display_line): Handle cursor in fringe at eob.
10062 (display_line): Set row user fringe bitmaps from iterator.
10063
10064 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
10065 Use cursor color for displaying cursor in fringe.
10066 (x_redisplay_interface): Add null handlers for
10067 define_fringe_bitmap and destroy_fringe_bitmap functions.
10068
10069 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10070
10071 * macfns.c (Fx_change_window_property): Make doc string and
10072 parameters same as for X version.
10073
10074 * w32fns.c (Fx_change_window_property): Ditto.
10075
10076 2004-02-07 Kim F. Storm <storm@cua.dk>
10077
10078 * xdisp.c (hscroll_window_tree): Position cursor near to right
10079 margin in hscrolled window when jumping to end of line (rather
10080 than centering cursor).
10081
10082 * process.c (wait_reading_process_input): Don't do adaptive read
10083 buffering if waiting for a specific process.
10084
10085 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
10086
10087 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
10088 (Fread_minibuffer, Feval_minibuffer)
10089 (Fread_string, Fread_no_blanks_input)
10090 (Fcompleting_read): Doc fixes.
10091 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
10092 completion-regexp-list. Define Qcase_fold_search and staticpro it.
10093 (read_minibuf): Fix initial comment.
10094 (Ftry_completion, Fall_completions, Ftest_completion): Bind
10095 case-fold-search to the value of completion-ignore-case when
10096 checking completion-regexp-list.
10097 (Fdisplay_completion_list): Make it handle arguments that are
10098 symbols. Doc fix.
10099
10100 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10101
10102 * xterm.h: Add declaration of free_frame_menubar.
10103
10104 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
10105 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
10106 (Fx_change_window_property): Add declaration of parameters type and
10107 format. Remove unused variable cons.
10108
10109 * xselect.c: Include stdio,h.
10110
10111 2004-02-05 Kenichi Handa <handa@m17n.org>
10112
10113 * fns.c (Fset_char_table_range): Fix previous change.
10114
10115 * buffer.c (Fset_buffer_multibyte): Fix docstring.
10116
10117 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
10118
10119 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
10120
10121 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
10122
10123 * keymap.c (Vmouse_events): Rename from Vmenu_events.
10124 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
10125
10126 2004-02-04 Kenichi Handa <handa@m17n.org>
10127
10128 * fns.c (Fset_char_table_range): Handle charsets ascii,
10129 eight-bit-control, and eight-bit-graphic correctly.
10130
10131 2004-02-03 Jason Rumney <jasonr@gnu.org>
10132
10133 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
10134
10135 * w32fns.c (x_to_w32_font): Likewise.
10136
10137 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10138
10139 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
10140 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
10141
10142 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
10143 ClientMessages.
10144
10145 * xselect.c: Include termhooks.h and X11/Xproto.h
10146 (x_check_property_data, x_fill_property_data)
10147 (x_property_data_to_lisp, mouse_position_for_drop)
10148 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
10149 (Fx_send_client_event): Move here from xfns.c.
10150 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
10151
10152 * xfns.c (x-send-client-message): Move to xselect.c
10153 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
10154 OUTER_P.
10155 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
10156 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
10157 if vector_ret_p is true.
10158 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
10159
10160 2004-02-02 Eli Zaretskii <eliz@gnu.org>
10161
10162 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
10163 basename of FILE relative to it, not FILE itself.
10164
10165 2004-02-02 Kenichi Handa <handa@m17n.org>
10166
10167 * coding.c (coding_restore_composition): Check invalid
10168 composition data more rigidly.
10169
10170 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
10171
10172 * fileio.c (Fread_file_name_internal): Correctly handle the case
10173 where insert-default-directory is nil.
10174 (Fread_file_name): Always return an empty string if the user exits
10175 with an empty minibuffer. Adapt the docstring accordingly.
10176 (syms_of_fileio): Adapt the docstring of insert-default-directory
10177 to the change in Fread_file_name.
10178
10179 2004-01-29 Eli Zaretskii <eliz@gnu.org>
10180
10181 * alloca.c [!alloca]: Fix the prototype for xfree.
10182
10183 2004-01-29 Kenichi Handa <handa@m17n.org>
10184
10185 * fns.c (string_char_to_byte): Optimize for ASCII only string.
10186 (string_byte_to_char): Likewise.
10187
10188 2004-01-28 Peter Runestig <peter@runestig.com>
10189
10190 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
10191
10192 2004-01-27 Steven Tamm <steventamm@mac.com>
10193
10194 * unexmacosx.c (unexec_copy): Do not copy more than was
10195 requested to prevent overwriting during unexec.
10196
10197 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10198
10199 * process.c (sigchld_handler): Add comment about not calling malloc.
10200
10201 * process.h: Add extern to synch_process_termsig.
10202
10203 2004-01-27 Steven Tamm <steventamm@mac.com>
10204
10205 * macterm.c (make_mac_frame, make_mac_terminal_frame):
10206 Move setting of scroll bars from make_mac_frame to
10207 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
10208
10209 2004-01-26 Richard M. Stallman <rms@gnu.org>
10210
10211 * search.c (Freplace_match): Handle nonexistent
10212 back-references properly.
10213
10214 2004-01-03 Richard M. Stallman <rms@gnu.org>
10215
10216 * window.c (decode_any_window): New function.
10217 (Fwindow_height, Fwindow_width, Fwindow_edges)
10218 (Fwindow_pixel_edges, Fwindow_inside_edges)
10219 (Fwindow_inside_pixel_edges): Use decode_any_window.
10220
10221 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10222
10223 * process.h: synch_process_termsig new variable.
10224
10225 * callproc.c: Define synch_process_termsig.
10226 (Fcall_process): Initiate synch_process_termsig to zero and
10227 check if non-zero and get signal name after subprocess has ended.
10228
10229 * process.c (sigchld_handler): Set synch_process_termsig
10230 if terminated by a signal. synch_process_death setting removed.
10231
10232 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
10233
10234 2004-01-26 Andreas Schwab <schwab@suse.de>
10235
10236 * print.c (print_preprocess): Declare size as EMACS_INT to not
10237 lose bits.
10238 (print_object): Likewise.
10239 * alloc.c (Fpurecopy): Likewise.
10240
10241 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
10242
10243 * window.c (Fwindow_minibuffer_p): Doc fix.
10244
10245 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
10246
10247 * editfns.c (Fformat): Make both passes accept the same set of flags.
10248
10249 2004-01-23 Kenichi Handa <handa@m17n.org>
10250
10251 * fns.c (Fmd5): If OBJECT is a buffer different from the current
10252 one, set buffer to OBJECT temporarily.
10253
10254 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10255
10256 * keyboard.c (kbd_buffer_gcpro): Remove.
10257 (kbd_buffer_store_event, clear_event, Fdiscard_input)
10258 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
10259 Don't initialize and/or maintain the variable any more. It was made
10260 redundant by my commit of 2003-06-15.
10261
10262 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
10263
10264 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10265
10266 * lisp.h: Add undef DECL_ALIGN.
10267
10268 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
10269
10270 * process.c (wait_reading_process_input) [SYNC_INPUT]:
10271 Check interrupt_input_pending explicitly.
10272
10273 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
10274
10275 * keyboard.c (handle_async_input): New fun,
10276 extracted from input_available_signal.
10277 (input_available_signal, reinvoke_input_signal): Use it.
10278
10279 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
10280
10281 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
10282
10283 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
10284 manipulation macros for when tags are in the lower bits.
10285 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
10286 (DECL_ALIGN): New macro.
10287 (DEFUN): Use it.
10288
10289 * lisp.h [ENABLE_CHECKING]: Don't force union type.
10290
10291 * s/darwin.h (__attribute__): Remove outdated workaround.
10292
10293 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
10294
10295 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
10296 Don't check range of malloc address.
10297 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
10298
10299 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
10300
10301 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
10302
10303 2004-01-19 Kenichi Handa <handa@m17n.org>
10304
10305 * fontset.c (fontset_font_pattern): Fix previous change.
10306
10307 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
10308
10309 * xdisp.c (Voverflow_newline_into_fringe)
10310 (move_it_in_display_line_to, redisplay_internal)
10311 (update_window_fringes, redisplay_window, display_line, window):
10312 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
10313 that it compiles without a window-system.
10314 * dispnew.c (direct_output_for_insert, update_window): Likewise.
10315
10316 2004-01-16 Kim F. Storm <storm@cua.dk>
10317
10318 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
10319
10320 * buffer.c (init_buffer_once): Set buffer_defaults and
10321 buffer_local_flags for indicate_buffer_boundaries.
10322 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
10323 default- variable for it.
10324
10325 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
10326 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
10327 New members exact_window_width_line_p and cursor_in_fringe_p for
10328 overflowing newlines into right fringe.
10329 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
10330 and indicate_bottom_line_p for buffer boundaries and scrolling.
10331 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
10332 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
10333 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
10334 and HOLLOW_SQUARE_BITMAP.
10335 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
10336 Add prototypes.
10337
10338 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
10339 instead of related indicator fields.
10340 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
10341 (direct_output_for_insert): Handle exact width lines like
10342 contined lines. Call update_window_fringes.
10343 (update_window): Call update_window_fringes.
10344 (scrolling_window): Don't skip desired rows with changed bitmaps.
10345 Check if fringe bitmaps changes when assigning scrolled rows.
10346
10347 * xdisp.c (Voverflow_newline_into_fringe): New variable.
10348 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
10349 (move_it_in_display_line_to): Overflow newline into fringe for
10350 rows that are exactly as wide as the window.
10351 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
10352 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
10353 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
10354 (fringe_bitmaps): Add new bitmaps.
10355 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
10356 Select proper bitmap for cursor in fringe when appropriate.
10357 Handle alignment of bitmap to top or bottom of row.
10358 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
10359 done by update_window_fringes.
10360 (update_window_fringes, draw_window_fringes): New functions.
10361 (redisplay_internal): Call update_window_fringes in case only
10362 cursor row is updated.
10363 (redisplay_window): Call update_window_fringes.
10364 Explicitly call draw_window_fringes if redisplay was done using
10365 the current matrix or the overlay arrow is in the window.
10366 (try_window_reusing_current_matrix): Mark scrolled rows for
10367 fringe update (to update buffer-boundaries / scrolling icons).
10368 (find_last_unchanged_at_beg_row): Handle exact width lines line
10369 continued lines.
10370 (display_line): Overflow newline into fringe for rows that are
10371 exactly as wide as the window. Don't append space for newline
10372 in this case.
10373 (notice_overwritten_cursor): Explicitly clear cursor bitmap
10374 in fringe as if it had been overwritten.
10375 (erase_phys_cursor): Erase cursor bitmap in fringe.
10376 (syms_of_xdisp): Mark show-trailing-whitespace and
10377 void-text-area-pointer as user options.
10378 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
10379
10380 * xterm.c (x_update_window_end): Call draw_window_fringes.
10381 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10382 in row instead of actually drawing fringe bitmaps.
10383 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10384 (x_draw_window_cursor): Draw cursor in fringe.
10385
10386 * w32term.c (x_update_window_end): Call draw_window_fringes.
10387 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10388 in row instead of actually drawing fringe bitmaps.
10389 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10390 (w32_draw_window_cursor): Draw cursor in fringe.
10391
10392 * macterm.c (x_update_window_end): Call draw_window_fringes.
10393 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
10394 in row instead of actually drawing fringe bitmaps.
10395 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
10396 (mac_draw_window_cursor): Draw cursor in fringe.
10397
10398 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10399
10400 * xterm.c (handle_one_xevent): Don't handle characters that are part
10401 of an old style (XLookupString) compose sequence.
10402
10403 2004-01-15 Kenichi Handa <handa@m17n.org>
10404
10405 * search.c (Freplace_match): Use make_multibyte_string or
10406 make_unibyte_string according to the buffer multibyteness.
10407
10408 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
10409
10410 * alloc.c (struct interval_block, struct string_block)
10411 (struct symbol_block, struct marker_block, live_string_p)
10412 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
10413 Better preserve alignment for objects in blocks.
10414 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
10415
10416 * lread.c (defvar_per_buffer): Remove dead declaration.
10417
10418 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
10419 space size.
10420
10421 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10422
10423 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
10424 if a key press should pop down. Only pop down if a key is pressed
10425 outside the menu/dialog.
10426 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
10427 popup_get_selection.
10428 (create_and_show_dialog): Pass 1 for down_on_keypress to
10429 popup_get_selection.
10430
10431 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10432
10433 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
10434 BLOCK/UNBLOCK_INPUT.
10435
10436 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10437
10438 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
10439 specified.
10440
10441 2004-01-08 Kenichi Handa <handa@m17n.org>
10442
10443 * editfns.c (Fformat): Fix '&' to '&&'.
10444
10445 2004-01-08 Andreas Schwab <schwab@suse.de>
10446
10447 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
10448 size if PSEUDOVECTOR_FLAG is set.
10449
10450 2004-01-07 Kenichi Handa <handa@m17n.org>
10451
10452 * charset.c (Fdeclare_equiv_charset): Fix docstring.
10453
10454 * fontset.c (fontset_ref_via_base): Fix previous change.
10455
10456 2004-01-07 Kim F. Storm <storm@cua.dk>
10457
10458 * process.c (read_process_output): Only activate adaptive
10459 buffering if we read less than 256 bytes at a time.
10460
10461 2004-01-06 Kim F. Storm <storm@cua.dk>
10462
10463 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
10464 object and image object. Return glyph width and height.
10465 (mode_line_string, marginal_area_string): Ditto.
10466
10467 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10468 (marginal_area_string): Fix prototypes.
10469
10470 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
10471 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
10472 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
10473
10474 * keyboard.c (make_lispy_position): Use modified mode_line_string,
10475 buffer_posn_from_coords, and marginal_area_string functions to
10476 include both string object and image object in the lispy position.
10477 Also add actual glyph width and height to position.
10478 (read_key_sequence): Use real buffer position from mouse
10479 event to find keymap property even when click is in marginal area.
10480
10481 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
10482 mode_line_string and marginal_area_string functions to handle
10483 both string object and image object properties.
10484
10485 2004-01-06 Andreas Schwab <schwab@suse.de>
10486
10487 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
10488 character.
10489
10490 2004-01-02 Andreas Schwab <schwab@suse.de>
10491
10492 * macterm.c (emacs_options, x_initialized, same_x_server):
10493 Remove unused (and duplicated) definitions.
10494
10495 2004-01-02 Kim F. Storm <storm@cua.dk>
10496
10497 * process.h (struct Lisp_Process): New members for adaptive read
10498 buffering: adaptive_read_buffering, read_output_delay, and
10499 read_output_skip.
10500
10501 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
10502 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
10503 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
10504 (process_output_delay_count, process_output_skip): New vars.
10505 (Vprocess_adaptive_read_buffering): New variable.
10506 (make_process): Initialize adaptive read buffering members.
10507 (Fstart_process): Set adaptive_read_buffering member.
10508 (deactivate_process): Cleanup adaptive read buffering.
10509 (wait_reading_process_input): Temporarily omit delayed
10510 subprocesses from the set of file descriptors to read from;
10511 adjust the select timeout if we skipped any subprocesses.
10512 (read_process_output): Increase adaptive read buffering delay if
10513 we read less than a full buffer; reduce delay when we read a
10514 full buffer.
10515 (send_process): Simplify using local Lisp_Process var.
10516 Reset adaptive read buffering delay after write.
10517 (init_process): Initialize process_output_delay_count and
10518 process_output_skip.
10519 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
10520
10521 2004-01-01 Jason Rumney <jasonr@gnu.org>
10522
10523 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
10524
10525 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
10526
10527 * print.c (Ferror_message_string): Add hyperlink in the docstring
10528 to the definition of `signal' in the Elisp manual.
10529 * eval.c (Fsignal): Ditto.
10530
10531 2003-12-29 James Clark <jjc@jclark.com>
10532
10533 * fns.c (internal_equal): Return t for two NaN arguments.
10534
10535 2003-12-29 Richard M. Stallman <rms@gnu.org>
10536
10537 * data.c (store_symval_forwarding): Handle setting
10538 default-fill-column, etc., by changing the value in
10539 buffers that use the default.
10540
10541 * minibuf.c (Fset_minibuffer_window): Doc fix.
10542
10543 * fileio.c (choose_write_coding_system): Ignore auto_saving
10544 if using the visited file for auto saves.
10545 (Fwrite_region): Don't update SAVE_MODIFF
10546 if auto-saving in visited file.
10547
10548 2003-12-29 Kenichi Handa <handa@m17n.org>
10549
10550 * dispextern.h (face_font_available_p): Extern it.
10551
10552 * fontset.c (Voverriding_fontspec_alist): New variable.
10553 (lookup_overriding_fontspec): New function.
10554 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
10555 (fontset_font_pattern): Likewise.
10556 (regulalize_fontname): New function.
10557 (Fset_fontset_font): Call regulalize_fontname.
10558 (Fset_overriding_fontspec_internal): New function.
10559 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
10560 Defsubr Sset_overriding_fontspec_internal.
10561
10562 * xfaces.c (face_font_available_p): New function.
10563
10564 2003-12-28 Richard M. Stallman <rms@gnu.org>
10565
10566 * buffer.c (Fother_buffer): Don't crash if BUF is nil
10567 or if its name is nil.
10568
10569 * buffer.c (Fkill_buffer): Don't delete auto-save file
10570 if it's the same as the visited file.
10571
10572 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
10573
10574 * coding.c (Fcheck_coding_system): Doc fix.
10575
10576 2003-12-28 Kim F. Storm <storm@cua.dk>
10577
10578 * Makefile.in (eval.o): Depend on dispextern.h.
10579
10580 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
10581 image glyph using image's ascent.
10582 (mode_line_string): Return image glyph as object clicked on.
10583 Adjust y0 for image glyph using image's ascent.
10584
10585 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
10586 (struct glyph): New members, ascent and descent. Used to save
10587 this glyph's ascent and descent, instead of having.
10588 (struct glyph): Declare member face_id using FACE_ID_BITS.
10589 (find_hot_spot): Add prototype.
10590
10591 * keyboard.c (Qimage): Remove extern (now in lisp.h).
10592 (QCmap): Declare extern.
10593 (make_lispy_position): When position is inside image hot-spot,
10594 use hot-spot element's id as posn element.
10595
10596 * lisp.h (IMAGEP): New macro to test for image object type.
10597 (Qimage): Declare extern.
10598
10599 * macfns.c (Qimage): Remove extern (now in lisp.h).
10600 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10601
10602 * macterm.c (Qface, Qmouse_face): Remove unused externs.
10603
10604 * w32fns.c (Qimage): Remove extern (now in lisp.h).
10605 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10606
10607 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
10608
10609 * w32term.c (Qface, Qmouse_face): Remove unused externs.
10610
10611 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
10612 pointer types.
10613 (Qrelative_width, Qalign_to): Remove unused variables.
10614 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
10615 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
10616 image maps.
10617 (x_y_to_hpos_vpos): Return glyph relative coordinates through
10618 new dx and dy args.
10619 Remove buffer_only_p arg (always 0). Simplify code accordingly.
10620 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
10621 than row's ascent and height, to get sensible height on tall rows.
10622 (build_desired_tool_bar_string): Remove Qimage extern.
10623 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
10624 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
10625 image glyph is alone on the last line.
10626 (append_glyph, append_composite_glyph, produce_image_glyph)
10627 (append_stretch_glyph): Set glyph's ascent and descent.
10628 (on_hot_spot_p): New function to check if position is inside an
10629 rectangular, circular, or polygon-shaped image hot-spot,
10630 (find_hot_spot): New function to search for image hot-spot.
10631 (Flookup_image_map): New defun to search for image hot-spot.
10632 (define_frame_cursor1): New aux function to determine frame pointer.
10633 (note_mode_line_or_margin_highlight, note_mouse_highlight):
10634 Handle `pointer' text property and :pointer image property to
10635 control frame pointer shape. Detect image hot-spots for pointer
10636 and help_echo properties. Use define_frame_cursor1.
10637 (note_mouse_highlight): Use Vvoid_text_area_pointer.
10638 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
10639 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
10640
10641 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
10642
10643 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
10644 (Qimage): Remove extern (now in lisp.h).
10645 (valid_image_p, parse_image_spec): Use IMAGEP macro.
10646
10647 * xmenu.c (show_help_event): Remove unused code.
10648
10649 * xterm.c (Qface, Qmouse_face): Remove unused externs.
10650 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
10651 row's ascent and descent, to get a sensible height on tall rows.
10652
10653 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
10654
10655 * minibuf.c (Fcompleting_read): Undo previous change.
10656
10657 2003-12-25 Lars Hansen <larsh@math.ku.dk>
10658
10659 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
10660 Arguments GCPRO'ed in call to file name handler.
10661
10662 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
10663
10664 * termcap.c (tgetst1): Scan for "%pN"; if all
10665 N are continuous in [1,9], remove all "%pN".
10666
10667 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10668
10669 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
10670
10671 * xfaces.c (lface_fully_specified_p): Take into account that
10672 MAC OS always have unspecified stipple.
10673
10674 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10675
10676 * tparam.c (tparam1): Add handling for `%pN', which
10677 means use param N for the next substitution.
10678
10679 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
10680
10681 * xfaces.c (Fcolor_gray_p): Fix omission bug:
10682 In case `frame' is nil, consult the selected frame.
10683 (Fcolor_supported_p): Likewise.
10684
10685 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
10686
10687 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
10688 Doc fixes.
10689
10690 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
10691 and an integer. Adapt the introductory comment accordingly.
10692 (Fread_from_minibuffer): Delete code moved into read_minibuf.
10693 Doc fix.
10694 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
10695 read_minibuf.
10696 (Fcompleting_read): Delete code moved into read_minibuf.
10697 (Ftest_completion): Make it handle obarrays and hash tables correctly.
10698
10699 2003-12-03 Kenichi Handa <handa@m17n.org>
10700
10701 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
10702 encoding sequence.
10703
10704 2003-12-01 Kenichi Handa <handa@m17n.org>
10705
10706 * composite.c (syms_of_composite): Don't make the compostion hash
10707 table week.
10708
10709 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
10710
10711 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
10712 * textprop.c (Fget_char_property_and_overlay): New function.
10713 (syms_of_textprop): Defsubr it.
10714
10715 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10716
10717 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
10718 to compile on terminal configuration.
10719
10720 * fileio.c (Fread_file_name): Check use_file_dialog also before
10721 calling Fx_file_dialog.
10722
10723 * fns.c (use_file_dialog): New variable.
10724 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
10725
10726 2003-11-29 Kim F. Storm <storm@cua.dk>
10727
10728 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
10729 (syms_of_msdos): Don't intern and staticpro them.
10730
10731 2003-11-27 Kim F. Storm <storm@cua.dk>
10732
10733 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
10734 coordinates relative to glyph at posn. If glyph is an image,
10735 return that as object at posn. Callers changed.
10736 (mode_line_string, marginal_area_string): Calculate and return
10737 pixel coordinates relative to glyph. Callers changed.
10738
10739 * dispextern.h (buffer_posn_from_coords, mode_line_string)
10740 (marginal_area_string): Fix prototypes.
10741 (window_box_left_offset, window_box_right_offset): Add prototypes.
10742
10743 * frame.h (get_specified_cursor_type, get_window_cursor_type):
10744 Remove prototypes.
10745
10746 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
10747
10748 * keyboard.c (make_lispy_position): Add x and y coordinates
10749 relative to the current glyph as 7th element of position.
10750 If glyph is an image, return it in the object element.
10751 (read_key_sequence): Skip checks for keymap property in cases
10752 where POSN_STRING is not a string (e.g. an image).
10753
10754 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
10755 (Vshow_text_cursor_in_void): New variable.
10756 (glyph_to_pixel_coords): Don't use negative hpos.
10757 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
10758 (append_stretch_glyph): Change ascent arg to be actual value
10759 in pixels rather than ratio to height. Callers changed.
10760 (calc_pixel_width_or_height): New aux function, implementing
10761 pixel based artihmetic for glyph widths and heights.
10762 (produce_stretch_glyph): Use calc_pixel_width_or_height for
10763 :width, :height, :align-to, and :ascent, thus allowing these to
10764 be specified in pixels as well as multiples of characters.
10765 Don't produce stretch glyphs with zero width or height.
10766 (get_specified_cursor_type): Declare static.
10767 (get_window_cursor_type): Declare static. Add glyph arg to be
10768 able to know when cursor is on an image; always substitute
10769 hollow-box cursor for filled-box cursor on images, to avoid
10770 negative images and flicker when blinking the cursor.
10771 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
10772 (note_mode_line_or_margin_highlight): Use non-text cursor rather
10773 than vertical scroll-bar cursor in display margins.
10774 (note_mouse_highlight): Use non-text cursor rather than text
10775 cursor in fringes and over images in the text area.
10776 Use non-text cursor when mouse pointer is outside editable text,
10777 i.e. in the void after end-of-line or end-of-buffer; this was
10778 already done for W32, but is now standard for all systems --
10779 user can toggle show-text-cursor-in-void to get old behaviour.
10780 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
10781 Vdisplay_pixels_per_inch.
10782
10783 2003-11-25 Andreas Schwab <schwab@suse.de>
10784
10785 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
10786 EMACS_INT to not lose bits.
10787 (Ffillarray): Don't set bits beyond the size of a bool vector.
10788
10789 2003-11-25 Kim F. Storm <storm@cua.dk>
10790
10791 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
10792 define this defun on systems that cannot use stderr as lvalue.
10793
10794 2003-11-24 Gerd Moellmann <gerd@gnu.org>
10795
10796 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
10797 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
10798 ld's default is incompatible with unexec.
10799
10800 2003-11-23 Kim F. Storm <storm@cua.dk>
10801
10802 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
10803 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
10804 (Fforce_window_update): New defun.
10805 (syms_of_window): Defsubr it.
10806 (Fset_window_margins, Fset_window_fringes): Doc fix.
10807
10808 * print.c (Fredirect_debugging_output): New defun.
10809 (syms_of_print): Defsubr it.
10810
10811 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
10812
10813 * fns.c (Fset_char_table_parent): Doc fix.
10814
10815 2003-11-22 Kim F. Storm <storm@cua.dk>
10816
10817 * dispnew.c (buffer_posn_from_coords): Return actual row/column
10818 for glyph clicked on, rather than (unused) pixel positions.
10819 (mode_line_string, marginal_area_string): Change X and Y args to
10820 pointers for returning actual row/column for glyph clicked on.
10821 Simplify and optimize loops.
10822
10823 * dispextern.h (mode_line_string, marginal_area_string):
10824 Update prototypes.
10825
10826 * keyboard.c (make_lispy_position): New function for generating
10827 mouse click positions from frame and pixel coordinates.
10828 Enhanced to return buffer position and actual row/column for
10829 events outside the text area using updated mode_line_string and
10830 marginal_area_string functions.
10831 Return left-fringe and right-fringe clicks as such, rather than
10832 clicks in text area.
10833 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
10834 pixel_to_glyph_coords, as we never use the results.
10835 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
10836 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
10837 Eliminate unused code in WHEEL_EVENT handling.
10838 (make_lispy_movement): Use make_lispy_position.
10839
10840 * window.c (coordinates_in_window): Remove redundant tests.
10841 Fix returned X pixel value for left-margin.
10842
10843 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
10844 mode_line_string and marginal_area_string parameters.
10845
10846 2003-11-22 Lars Hansen <larsh@math.ku.dk>
10847
10848 * w32.c (struct the_group, getgrgid): Add.
10849 * mac.c (struct my_group, getgrgid): Add.
10850
10851 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10852
10853 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
10854
10855 2003-11-21 Lars Hansen <larsh@math.ku.dk>
10856
10857 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
10858 include in call to file name handler. Optionally translate numeric
10859 UID and GID to strings. Update docstring.
10860 (directory_files_internal): Add parameter ID-FORMAT.
10861 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
10862 include in call to file name handler and call to
10863 directory_files_internal. Update Docstring.
10864 (Fdirectory_files): Add dummy parameter in call to
10865 directory_files_internal.
10866 * lisp.h (Qinteger): Add.
10867 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
10868 (Ffile_attributes): Add parameter.
10869 * data.c (Qinteger): Export.
10870
10871 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
10872
10873 * fns.c (Freverse, Fnreverse): Doc fixes.
10874
10875 2003-11-19 Kim F. Storm <storm@cua.dk>
10876
10877 * xdisp.c (init_iterator): Initialize it->start to position
10878 before reseating (in case start position is invisible).
10879 (init_to_row_start): Set it->start to row-start.
10880 (redisplay_window): Accept optional_new_start if start position
10881 is invisible (in which case IT_CHARPOS overshoots PT).
10882 (display_line): Setup row->start from it->start (rather than
10883 it->current which is wrong if first char on line is invisible).
10884 When done, reseat it->start to it->current (= start of next row).
10885 (expose_area): Fix exposure of text area when first char (e.g. TAB)
10886 is only partially visible.
10887
10888 * dispextern.h (struct it): New member start.
10889
10890 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
10891
10892 * alloc.c (make_float, Fcons): Clear the markbit at init time.
10893 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
10894 of block_index outside of the macro call.
10895 (Fgarbage_collect): Remove null code.
10896
10897 * m/amdx86-64.h: Don't redefine XPNTR.
10898
10899 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
10900 of VALMASK.
10901
10902 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
10903 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
10904 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
10905
10906 * lisp.h (VALMASK): Only define for non-union type.
10907 (MARKBIT): Remove.
10908 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
10909 (XTYPE): Define unconditionally.
10910 (XSETTYPE): Remove one more remnant.
10911 (EQ): Define differently for the union and non-union cases.
10912 (INTMASK): New bit mask.
10913 (struct Lisp_Marker): Move down to prepare for upcoming patch.
10914 (GC_EQ): Delegate to EQ.
10915
10916 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
10917
10918 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10919
10920 * xterm.c (x_window_to_scroll_bar): Move check of display to
10921 where window_id is compared.
10922
10923 2003-11-17 Kim F. Storm <storm@cua.dk>
10924
10925 * dispextern.h (struct it): New member first_vpos.
10926
10927 * xdisp.c (start_display): Set it->first_vpos.
10928 (try_window_id): Use first_vpos to start display in first _text_
10929 line if no reusable lines at start of window with header line.
10930
10931 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10932
10933 * w32fns.c (XPutPixel):
10934 * w32bdf.c (w32_init_bdf_font):
10935 * sunfns.c (sel_read):
10936 * process.c (Fmake_network_process):
10937 * frame.c (store_frame_param):
10938 * fontset.c (Fset_fontset_font):
10939 * emacs.c (shut_down_emacs):
10940 * ccl.c (ccl_driver): Remove period at end of error message.
10941
10942 * config.in: Regenerate.
10943
10944 * xfns.c (x_window_to_frame, x_any_window_to_frame)
10945 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
10946 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
10947 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
10948 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
10949
10950 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
10951
10952 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
10953 (XTmouse_position, handle_one_xevent): Pass Display* to
10954 x_window_to_scroll_bar.
10955 (x_window_to_scroll_bar): Take a Display* argument.
10956 Check that display for frame is equal to Display* argument.
10957 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
10958 x_display_info_for_display instead. Use Display in xev instead
10959 of GDK_DISPLAY.
10960 (x_dispatch_event): Call x_display_info_for_display.
10961 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
10962 (x_connection_closed): Call xg_display_close for GTK.
10963 (x_term_init): Call xg_display_open for additional displays.
10964 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
10965 for GTK.
10966
10967 * xmenu.c (single_menu_item, mouse_position_for_popup)
10968 (x_activate_menubar): Formatting adjustments.
10969
10970 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
10971 adjustments.
10972
10973 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
10974 (xg_display_close, xg_create_default_cursor)
10975 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
10976 handling.
10977 (xg_left_ptr_cursor): Remove.
10978 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
10979 cursor here.
10980 (xg_win_to_widget): Take Display* argument, call
10981 gdk_xid_table_lookup_for_display.
10982 (xg_create_frame_widgets, xg_get_file_name, create_menus)
10983 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
10984 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
10985 in FRAME_X_DISPLAY_INFO.
10986 (xg_get_scroll_id_for_window): Take Display* argument.
10987 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
10988 (xg_initialize): Remove xg_left_ptr_cursor.
10989
10990 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
10991 Display* argument.
10992 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
10993
10994 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10995
10996 * xterm.c (x_detect_focus_change): Do not change focus frame for
10997 Enter/LeaveNotify if the current focus frame has explicit focus.
10998
10999 2003-11-14 Kim F. Storm <storm@cua.dk>
11000
11001 * dispnew.c (update_text_area): Fix redisplay error when hscroll
11002 is active and first glyph is only partially visible.
11003
11004 2003-11-13 Kenichi Handa <handa@m17n.org>
11005
11006 * xdisp.c (select_frame_for_redisplay): New function.
11007 (redisplay_internal): Record also selected_frame for
11008 unwind_redisplay. Call select_frame_for_redisplay before
11009 redrawing each frame.
11010 (unwind_redisplay): Argument changed to a cons.
11011
11012 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
11013
11014 * fns.c (Fstring_to_multibyte): Doc fix.
11015
11016 2003-11-11 Kenichi Handa <handa@m17n.org>
11017
11018 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
11019
11020 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11021
11022 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
11023 program specified positions.
11024
11025 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11026
11027 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
11028
11029 2003-11-08 Kenichi Handa <handa@m17n.org>
11030
11031 * Makefile.in (lisp): Add kannada.el.
11032 (shortlisp): Likewise.
11033
11034 2003-11-07 Kenichi Handa <handa@m17n.org>
11035
11036 * coding.c (coding_allocate_composition_data):
11037 Reset coding->composing to COMPOSITION_NO.
11038 (coding_restore_composition): Detect invalid composition data.
11039 Give Fstring and Fvector a Lispy integer, not C int.
11040
11041 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
11042
11043 * floatfns.c (Flogb): Don't use VALMASK.
11044
11045 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
11046 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
11047
11048 * lisp.h (XINT): Move the cast to clarify what is going on.
11049 (GCTYPEMASK, XSETTYPE): Remove.
11050 (XGCTYPE): Make it an alias of XTYPE.
11051
11052 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11053
11054 * xterm.c (x_term_init): Fix formatting.
11055
11056 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11057
11058 * gtkutil.h (xg_have_tear_offs): Declare.
11059 (xg_keep_popup, xg_did_tearoff): Remove.
11060
11061 * gtkutil.c: Remove variable xg_did_tearoff.
11062 (xg_have_tear_offs): New function.
11063 (tearoff_remove): Just decrease xg_detached_menus.
11064 (tearoff_activate): Increase xg_detached_menus and call
11065 tearoff_remove when tearoff is removed.
11066 (xg_keep_popup): Remove function.
11067 (create_menus): Give add_tearoff_p as argument to recursive
11068 call to create_menus.
11069 (xg_create_widget): Use variables instead of multiple
11070 strcmp. Tell create_menus to create tear off only for
11071 menu bar menus.
11072 (xg_update_menubar): Change title for a detached menu also.
11073 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
11074 of deep_p.
11075 (xg_initialize): Initialize xg_detached_menus, remove
11076 initialization of xg_did_tearoff.
11077
11078 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
11079 xg_have_tear_offs returns non-zero.
11080 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
11081 call to xg_keep_popup.
11082
11083 2003-11-01 Andrew Choi <akochoi@shaw.ca>
11084
11085 * macterm.c (XTread_socket): Handle menubar selection and grow
11086 window only for mouseDown events.
11087
11088 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11089
11090 * xterm.c (x_term_init): For GTK part, increase x_initialized
11091 to check for more than one display. Use error instead of return 0.
11092
11093 2003-10-31 Andrew Choi <akochoi@shaw.ca>
11094
11095 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
11096 (copy_dysymtab): Call it.
11097
11098 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
11099
11100 * eval.c (Fdefvaralias): Doc fix.
11101
11102 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
11103
11104 * data.c (Fsetplist): Doc fix.
11105
11106 2003-10-14 Lute Kamstra <lute@gnu.org>
11107
11108 * window.c (Fset_window_fringes): Clarify docstring.
11109
11110 2003-10-14 Kim F. Storm <storm@cua.dk>
11111
11112 * window.c (Fset_window_margins): Simplify arg checking.
11113
11114 2003-10-13 Richard M. Stallman <rms@gnu.org>
11115
11116 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
11117 (print_partial_compiled_pattern): Replace assert with a printout.
11118 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
11119
11120 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
11121
11122 * window.c (Fset_window_margins): Allow only integers as args.
11123 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
11124 Doc fixes.
11125
11126 2003-10-13 Lute Kamstra <lute@gnu.org>
11127
11128 * window.c (Fset_window_fringes): Elaborate docstring.
11129
11130 2003-10-12 Andrew Choi <akochoi@shaw.ca>
11131
11132 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
11133
11134 * s/darwin.h (GC_MARK_STACK): Define.
11135
11136 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11137
11138 * window.c (shrink_windows): New function.
11139 (size_window): Call shrink_windows to calculate window sizes when
11140 shrinking frame with more than one window.
11141
11142 2003-10-12 Kim F. Storm <storm@cua.dk>
11143
11144 * xdisp.c (compute_fringe_widths): Doc fix.
11145
11146 2003-10-08 Kenichi Handa <handa@m17n.org>
11147
11148 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
11149
11150 2003-10-07 Kenichi Handa <handa@m17n.org>
11151
11152 * coding.c (Qcoding_system_define_form): New variable.
11153 (syms_of_coding): Intern and staticpro it.
11154 (Fcheck_coding_system): Try to autoload the definition of
11155 CODING-SYSTEM.
11156
11157 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
11158
11159 * fns.c (Frequire): Doc fix.
11160
11161 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11162
11163 * xfns.c (Fx_send_client_event): New function as a base for
11164 manipulating extended window manager hints.
11165 (Fx_send_client_event): Remove unused variable s.
11166
11167 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
11168 that function is removed.
11169
11170 * xterm.c (x_set_offset): Use move_offset_left/top instead of
11171 x/y_pixels_outer_diff.
11172 (x_check_expected_move): Calculate move_offset_left/top.
11173
11174 * xterm.h (struct x_output): New members: move_offset_top/left.
11175
11176 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
11177 call x_set_offset directly.
11178
11179 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
11180
11181 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
11182
11183 * xterm.c (x_delete_display): Free font names and font_encoder
11184 in dpyinfo->font_table.
11185
11186 * xfns.c (Fx_close_connection): Only call XFreeFont here.
11187 Move xfree of font names to x_delete_display.
11188
11189 * xterm.h (struct x_display_info): New member, wm_type.
11190 (struct x_output): New members, expected_top/left and
11191 check_expected_move.
11192
11193 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
11194 is received.
11195 (handle_one_xevent): Rename x_check_expected_move from
11196 x_check_fullscreen_move.
11197 (x_set_offset): Only add WM decoration sizes to modified_top/left
11198 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
11199 (x_check_expected_move): Rename from x_check_fullscreen_move.
11200 Removed fullscreen specific code. Use check_expected_move,
11201 expected_left/top instead. Also, set wm_type.
11202 (x_term_init): Initialize wm_type to unknown.
11203
11204 * frame.c (x_fullscreen_move): Remove addition of WM decoration
11205 sizes to move_x/y.
11206
11207 2003-10-03 Kenichi Handa <handa@m17n.org>
11208
11209 * macterm.c (x_load_font): Clear all members of FONTP before start
11210 filling them.
11211
11212 2003-10-02 Kenichi Handa <handa@m17n.org>
11213
11214 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
11215 before calling find_ccl_program_func. Call find_ccl_program_func
11216 only when fontp->font_encoder is not NULL.
11217
11218 * xterm.c (x_load_font): Clear all members of FONTP before start
11219 filling them.
11220
11221 2003-10-03 John Paul Wallington <jpw@gnu.org>
11222
11223 * keymap.c (map_keymap): Don't abort when binding is a vector.
11224
11225 2003-10-02 Jason Rumney <jasonr@gnu.org>
11226
11227 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
11228 Sync dependencies with Makefile.in.
11229 (alloca.o): Remove.
11230
11231 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
11232 filling them.
11233
11234 * w32bdf.c (w32_load_bdf_font): Likewise.
11235
11236 2003-09-30 Richard M. Stallman <rms@gnu.org>
11237
11238 * term.c (set_tty_color_mode): Calculate current_mode_spec
11239 regardless of value of VAL.
11240
11241 * intervals.c (graft_intervals_into_buffer):
11242 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
11243 Handle over_used when splitting UNDER.
11244
11245 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11246
11247 * regex.c (regex_compile): Free the stack when returning from function.
11248
11249 2003-09-28 Kenichi Handa <handa@m17n.org>
11250
11251 * fontset.c (Finternal_char_font): Change return value to
11252 cons (FONT-NAME . GLYPH-CODE).
11253
11254 2003-09-28 Eli Zaretskii <eliz@gnu.org>
11255
11256 * term.c (tty_setup_colors): Treat any negative argument as -1.
11257
11258 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
11259
11260 * process.c (send_process): Delete unused temp_buf.
11261
11262 2003-09-26 Dave Love <fx@gnu.org>
11263
11264 * xterm.c (x_bitmap_mask): Declare.
11265
11266 2003-09-25 Dave Love <fx@gnu.org>
11267
11268 * Makefile.in (fns.o): Depend on md5.h.
11269
11270 2003-09-25 Kim F. Storm <storm@cua.dk>
11271
11272 * window.c (set_window_buffer): Fix redisplay problems when
11273 switching between buffers with different display margin widths.
11274
11275 2003-09-23 Kim F. Storm <storm@cua.dk>
11276
11277 * process.c (set_socket_option): Fix :bindtodevice option.
11278 (Fset_network_process_option): Update process contact list when
11279 setting option succeeds.
11280 (Fmake_network_process): Doc fix.
11281
11282 2003-09-23 Dave Love <fx@gnu.org>
11283
11284 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
11285
11286 2003-09-22 Eli Zaretskii <eliz@gnu.org>
11287
11288 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
11289 color mode is an integer number (it could be -1).
11290
11291 2003-09-22 Richard M. Stallman <rms@gnu.org>
11292
11293 * intervals.c (graft_intervals_into_buffer): Correct the main loop
11294 in the case where OVER is longer than UNDER.
11295
11296 2003-09-22 Masatake YAMATO <jet@gyve.org>
11297
11298 * window.c (Fset_window_scroll_bars): Validate the value of
11299 `vertical_type'.
11300
11301 2003-09-21 Kim F. Storm <storm@cua.dk>
11302
11303 * frame.c (Vdefault_frame_scroll_bars): New variable.
11304 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
11305 (syms_of_frame): DEFVAR_LISP it, and initialize according to
11306 window-system default scroll bar position.
11307
11308 * window.c (Fwindow_scroll_bars): Doc fix.
11309
11310 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11311
11312 * xterm.c (x_set_offset): Take window manager decorations into account.
11313
11314 2003-09-19 Richard M. Stallman <rms@gnu.org>
11315
11316 * atimer.h: Don't include lisp.h.
11317 (P_): Define it here (as well as elsewhere).
11318
11319 * print.c (Fprin1_to_string): Move the PRINTPREPARE
11320 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
11321
11322 * data.c (Fvariable_binding_locus): New function.
11323 (syms_of_data): defsubr it.
11324 (Flocal_variable_p): Delete duplicate call to indirect_variable.
11325
11326 2003-09-18 Dave Love <fx@gnu.org>
11327
11328 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
11329
11330 * process.c (Fnetwork_interface_info): Fix type error.
11331 (Fnetwork_interface_list): Doc fix.
11332 (read_process_output, read_process_output): Delete unused var.
11333
11334 2003-09-17 Kim F. Storm <storm@cua.dk>
11335
11336 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
11337 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
11338 (Fnetwork_interface_info): Check that ifreq struct has required
11339 fields before accessing them; this requires that those fields are
11340 defined as macros, which may be too restrictive on some platforms,
11341 but it is better than failing on other platforms.
11342 (syms_of_process): Only defsubr above fns when included.
11343
11344 2003-09-17 Dave Love <fx@gnu.org>
11345
11346 * unexalpha.c: Don't include varargs.h.
11347
11348 2003-09-17 Kim F. Storm <storm@cua.dk>
11349
11350 * process.c (Fset_process_sentinel): Add sentinel to childp plist
11351 for network process.
11352 (socket_options): Add `:' prefix to option names. Add optbit field.
11353 (set_socket_option): Remove no_error arg and special handling of s < 0.
11354 Return 1<<optbit for known option, 0 for unknown.
11355 Do not interpret 0 as false for boolean option (only nil).
11356 Pass failed option and value to report_file_error.
11357 (Fset_network_process_options): Replace by Fset_network_process_option.
11358 (Fset_network_process_option): New function to set just one option.
11359 (Fmake_network_process): Allow :coding arg to be a cons.
11360 Allow :server arg to be an integer specifying backlog size.
11361 Remove :options arg, and allow options to be specified directly
11362 as :KEY, VALUE pairs. Parse these options before binding socket.
11363 As before, :reuseaddr t is default for a server process, but this
11364 can now be disabled by specifying :reuseaddr nil.
11365 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
11366 (init_process): Availability of network options is now checked with
11367 simpler syntax (featurep 'make-network-process :OPTION); use loop to
11368 setup features.
11369 (syms_of_process): Fix defsubr's for the replaced functions.
11370
11371 2003-09-16 Dave Love <fx@gnu.org>
11372
11373 * Makefile.in: Depend on coding.h.
11374
11375 2003-09-14 Kim F. Storm <storm@cua.dk>
11376
11377 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
11378 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
11379 (syms_of_process): Defsubr them.
11380
11381 * config.in: Regenerate.
11382
11383 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
11384
11385 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
11386 * m/news-r6.h (XUNMARK): Remove.
11387 * m/mips.h (XUNMARK): Remove.
11388 * m/mips-siemens.h (XUNMARK): Remove.
11389 * m/iris4d.h (XUNMARK): Remove.
11390 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
11391
11392 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
11393
11394 * lisp.h (VALBITS): Don't remove 1 for the markbit.
11395 (union Lisp_Object): Use unsigned int for types. Remove markbit.
11396 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
11397 (XTYPE): Use unsigned right-shift.
11398 (XMARKBIT, XMARK, XUNMARK): Remove.
11399
11400 * alloc.c (init_intervals, init_symbol, init_marker):
11401 Don't preallocate anything.
11402 (Fgarbage_collect, mark_object): Ignore the markbit.
11403
11404 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
11405
11406 2003-09-08 Lute Kamstra <lute@gnu.org>
11407
11408 * xdisp.c (pint2hrstr): New function.
11409 (decode_mode_spec): Add `%i' and `%I' specs.
11410 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
11411 for `mode-line-format'.
11412
11413 2003-09-07 Andreas Schwab <schwab@suse.de>
11414
11415 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
11416 avoid warning.
11417
11418 2003-09-07 Eli Zaretskii <eliz@gnu.org>
11419
11420 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
11421
11422 2003-09-03 Kim F. Storm <storm@cua.dk>
11423
11424 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
11425 change (superseded by 2002-08-30 change); the default blink-off
11426 cursor is now again "no cursor".
11427
11428 2003-09-01 Jason Rumney <jasonr@gnu.org>
11429
11430 * makefile.w32-in (alloca.o): Remove.
11431 (coding.o): Depend on intervals.h
11432 (emacs.o, bytecode.o): Depend on window.h
11433
11434 2003-09-01 Dave Love <fx@gnu.org>
11435
11436 * Makefile.in (alloca.o): Remove commands.
11437 (coding.o): Depend on intervals.h composite.h window.h.
11438 (emacs.o): Depend on window.h keyboard.h keymap.h.
11439 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
11440 (bytecode.o): Depend on window.h.
11441
11442 2003-08-31 Jason Rumney <jasonr@gnu.org>
11443
11444 * w32term.c (w32_per_char_metric): Allow cached metrics to be
11445 returned even when font_type is unknown.
11446
11447 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
11448
11449 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11450
11451 * xterm.c (x_term_init): Initialize new fields in x_display_info.
11452
11453 * xterm.h (struct x_display_info): Add red/green/blue_bits and
11454 *_offset.
11455
11456 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
11457 calculate pixel value.
11458
11459 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
11460
11461 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
11462 Don't tell redisplay display is accurate when it's actually been
11463 paused for pending input.
11464
11465 2003-08-29 Richard M. Stallman <rms@gnu.org>
11466
11467 * dispnew.c (adjust_glyph_matrix): Call window_box
11468 whenever W is nonzero.
11469
11470 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
11471 (Fkill_local_variable, Fmake_variable_frame_local)
11472 (Flocal_variable_p, Flocal_variable_if_set_p):
11473 Use indirect_variable to trace thru variable aliases.
11474
11475 * config.in: Updated.
11476
11477 * callint.c (Fcall_interactively): Save and restore
11478 Vthis_command, Vthis_original_command, real_this_command,
11479 and current_kboard->Vlast_command.
11480
11481 * abbrev.c (Fexpand_abbrev): Insert before deleting.
11482
11483 2003-08-29 Gerd Moellmann <gerd@gnu.org>
11484
11485 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
11486
11487 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
11488
11489 * coding.c (decode_coding_iso2022): Initialize local variable c2.
11490 (decode_coding_sjis_big5): Likewise.
11491
11492 2003-08-27 Jason Rumney <jasonr@gnu.org>
11493
11494 * w32.c (sys_pipe): Protect against file descriptor overflow.
11495
11496 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
11497
11498 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
11499
11500 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
11501
11502 * xfns.c (Vgtk_version_string): New variable.
11503 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
11504
11505 2003-08-24 Eli Zaretskii <eliz@gnu.org>
11506
11507 * term.c (term_init): Remove `const' from buffer_size's declaration.
11508
11509 * Makefile.in (msdos.o): Depend on intervals.h.
11510
11511 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
11512
11513 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11514
11515 * xterm.h (struct x_display_info): New fields: client_leader_window
11516 and Xatom_wm_client_leader.
11517
11518 * xterm.c (x_initialize): Move call to x_session_initialize to ...
11519 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
11520
11521 * xsmfns.c (create_client_leader_window): New function.
11522 (x_session_initialize): Call create_client_leader_window, take
11523 dpyinfo as argument.
11524
11525 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
11526
11527 * Makefile.in (xsmfns.o): Add more depenedencies.
11528
11529 2003-08-21 Dave Love <fx@gnu.org>
11530
11531 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
11532
11533 2003-08-21 Kenichi Handa <handa@m17n.org>
11534
11535 * term.c (term_init): Fix previous change; don't rely on the
11536 length of `buffer' if TERMINFO is defined.
11537
11538 2003-08-20 Dave Love <fx@gnu.org>
11539
11540 * atimer.h: Include lisp.h.
11541
11542 * lisp.h (EMACS_LISP_H): New.
11543 (popup_activated_flag): Don't declare.
11544
11545 * alloca.c: Some merging with gnulib. Change logic and doc
11546 concerning (x)malloc/(x)free -- no longer Emacs-specific.
11547 [DO_BLOCK_INPUT]: Don't include lisp.h.
11548 (xmalloc, xfree): Declare.
11549 (malloc): Don't declare.
11550
11551 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
11552 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
11553 atimer.h, blockinput.h.
11554
11555 * alloc.c (lisp_align_malloc): Change type of `aligned'.
11556
11557 * alloca.s: Remove.
11558
11559 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11560
11561 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
11562 use -lncurses.
11563
11564 * term.c (term_init): Use a buffer of size 4096 for tgetent since
11565 FreeBSD returns something longer than 2044. Abort if the end of
11566 the buffer is overwritten.
11567
11568 2003-08-19 Miles Bader <miles@gnu.org>
11569
11570 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
11571
11572 2003-08-19 Gerd Moellmann <gerd@gnu.org>
11573
11574 * alloc.c (lisp_align_malloc): Check for memory full when
11575 allocating ablocks, which also avoids freeing a pointer into an
11576 ablocks structure.
11577
11578 * puresize.h (BASE_PURESIZE): Increase to 1100000.
11579
11580 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
11581
11582 2003-08-16 Richard M. Stallman <rms@gnu.org>
11583
11584 * editfns.c (Fencode_time): Doc fix.
11585
11586 2003-08-16 David Ponce <david@dponce.com>
11587
11588 * fileio.c (Fwrite_region): Fix conditional expression to issue
11589 the right message.
11590
11591 2003-08-16 Juri Linkov <juri@jurta.org>
11592
11593 * syntax.c (Fforward_word): Argument changed to optional.
11594 Set default value to 1.
11595
11596 2003-08-15 Kenichi Handa <handa@m17n.org>
11597
11598 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
11599 what autoscaled.
11600 (best_matching_font): Once we find a better scalable font, set
11601 non_scalable_has_exact_height_p to 1.
11602 (try_font_list): Call try_alternative_families to try any family
11603 with the given registry.
11604
11605 2003-08-09 Andreas Schwab <schwab@suse.de>
11606
11607 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
11608
11609 * print.c (print_string): Fix printing of multibyte string with
11610 nontrivial printcharfun.
11611
11612 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11613
11614 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
11615
11616 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
11617
11618 2003-07-31 Kenichi Handa <handa@m17n.org>
11619
11620 * process.c (read_process_output): Return the actually read bytes
11621 instead of the result of decoding.
11622
11623 2003-07-31 Kenichi Handa <handa@m17n.org>
11624
11625 * xterm.h (struct x_bitmap_record): New member have_mask.
11626
11627 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
11628 to 0.
11629 (x_create_bitmap_from_file): Likewise.
11630 (x_destroy_bitmap): Check have_mask member before freeing a mask.
11631 (x_destroy_all_bitmaps): Likewise.
11632 (x_create_bitmap_mask): Set have_mask member to 1.
11633
11634 2003-07-30 Richard M. Stallman <rms@gnu.org>
11635
11636 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
11637
11638 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11639
11640 * gtkutil.c (xg_mark_data): Update calls to mark_object.
11641
11642 2003-07-29 Richard M. Stallman <rms@gnu.org>
11643
11644 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
11645 Conditionalize XIM code on HAVE_XIM.
11646
11647 * fns.c (Fclear_string): New function.
11648 (syms_of_fns): defsubr it.
11649
11650 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
11651
11652 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
11653
11654 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
11655
11656 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
11657
11658 * buffer.c (delete_all_overlays): New function.
11659 * buffer.h (delete_all_overlays): Declare.
11660 * coding.c (run_pre_post_conversion_on_str):
11661 * print.c (temp_output_buffer_setup):
11662 * fileio.c (Finsert_file_contents):
11663 * minibuf.c (get_minibuffer): Use it.
11664
11665 2003-07-22 Andrew Choi <akochoi@shaw.ca>
11666
11667 * unexmacosx.c (unexec_regions_sort_compare):
11668 (unexec_regions_merge): New functions. Sort and merge unexec
11669 regions before dumping them.
11670
11671 2003-07-22 Dave Love <fx@gnu.org>
11672
11673 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
11674
11675 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
11676
11677 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
11678 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
11679 MARKBIT as the gcmarkbit for strings.
11680
11681 2003-07-21 Richard M. Stallman <rms@gnu.org>
11682
11683 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
11684
11685 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
11686 (syms_of_fns): Corresponding change.
11687
11688 * alloc.c (syms_of_alloc): Doc fixes.
11689
11690 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
11691
11692 * s/netbsd.h: Use -Wl syntax.
11693
11694 2003-07-17 Richard M. Stallman <rms@gnu.org>
11695
11696 * xterm.c (xim_initialize): Redo 6/24 change.
11697
11698 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
11699
11700 * buffer.c (copy_overlays): Use EMACS_INT for positions.
11701 (Fswitch_to_buffer): Don't signal an error when switching to the same
11702 buffer in a dedicated window.
11703
11704 * alloc.c: Use bitmaps for cons, as was done for floats.
11705 (init_float, init_cons): Let the normal code allocate the first block.
11706 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
11707 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
11708 New macros.
11709 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
11710 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
11711 (live_cons_p): Check the pointer is not past the `conses' array.
11712 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
11713 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
11714 (survives_gc_p): Use CONS_MARKED_P and simplify.
11715 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
11716
11717 2003-07-13 Paul Eggert <eggert@twinsun.com>
11718
11719 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
11720 puts it into BSS instead, at least on Solaris 8 and 9.
11721 This is a valid optimization, and it may occur on other platforms,
11722 so Emacs should not assume that initializing a static variable to
11723 zero puts it into data.
11724 * alloc.c (pure, staticvec):
11725 Initialize these arrays to nonzero, so that they're not
11726 put into BSS by that optimization.
11727
11728 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
11729
11730 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
11731 (lisp_align_malloc): Use posix_memalign is available.
11732 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
11733 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
11734 for consistency. Update users.
11735
11736 2003-07-13 Richard M. Stallman <rms@gnu.org>
11737
11738 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
11739
11740 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
11741
11742 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
11743 and use the Gtk+ function gtk_window_icon_from_file if available.
11744
11745 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
11746 handle mask of bitmaps.
11747 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
11748 mask property.
11749 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
11750
11751 * xterm.h (xg_set_icon): New function.
11752
11753 2003-07-12 Paul Eggert <eggert@twinsun.com>
11754
11755 * unexelf.c (unexec): Consider a section to precede the .bss
11756 section if its addresses overlap that of .bss.
11757
11758 2003-07-12 Richard M. Stallman <rms@gnu.org>
11759
11760 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
11761
11762 * config.in (HAVE_CRTIN): Add #undef.
11763 (INLINE): Really inline only if OPTIMIZE is defined.
11764
11765 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
11766 END_FILES_1.
11767 (START_FILES_1, END_FILES_1): New macros (conditional).
11768 (LD_SWITCH_SYSTEM_TEMACS): Define.
11769
11770 * s/openbsd.h: Don't include bsd4-3.h.
11771 (TERMINFO): Define.
11772 (LIBS_TERMCAP): Define.
11773 (LD_SWITCH_SYSTEM): Define (two definitions).
11774
11775 * xfns.c: Include libpng/png.h instead of png.h.
11776
11777 2003-07-11 Andreas Schwab <schwab@suse.de>
11778
11779 * buffer.c (modify_overlay): Update prototype.
11780 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
11781 Likewise.
11782
11783 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11784
11785 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
11786 (struct interval): Move to intervals.h.
11787 (struct Lisp_Marker): Use EMACS_INT for position info.
11788 (forward_point): Remove prototype of defunct function.
11789 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
11790 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
11791 (syms_of_textprop, set_text_properties): Remove prototypes that are
11792 already in intervals.h.
11793
11794 * intervals.h (struct interval): Move from lisp.h.
11795 Use EMACS_INT for position and size info.
11796
11797 * coding.c: Include intervals.h for Fset_text_properties.
11798
11799 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11800 position and length information.
11801
11802 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11803
11804 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
11805 position and length information.
11806
11807 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
11808
11809 Change overlays_after and overlays_before so the overlays themselves
11810 are linked into lists, rather than using cons cells. After all each
11811 Lisp_Misc already occupies 5 words, so we can add a `next' field to
11812 Lisp_Overlay for free and save up one cons cell per overlay (not
11813 to mention one indirection when traversing the list of overlay).
11814
11815 * lisp.h (struct Lisp_Overlay): New field `next'.
11816
11817 * buffer.h (struct buffer): Change overlays_before and overlays_after
11818 from Lisp lists of overlays to pointers to overlays.
11819
11820 * buffer.c (overlay_strings, recenter_overlay_lists):
11821 Fix typo in eassert in last commit.
11822 (unchain_overlay): New function.
11823 (add_overlay_mod_hooklist): Use AREF.
11824 (copy_overlays, reset_buffer, overlays_at, overlays_in)
11825 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
11826 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
11827 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
11828 (report_overlay_modification, evaporate_overlays, init_buffer_once):
11829 Adjust to new type of overlays_(before|after).
11830
11831 * alloc.c (mark_object): Mark the new `next' field of overlays.
11832 (mark_buffer): Manually mark the overlays_(after|before) fields.
11833
11834 * coding.c (run_pre_post_conversion_on_str):
11835 * editfns.c (overlays_around):
11836 * xdisp.c (load_overlay_strings):
11837 * fileio.c (Finsert_file_contents):
11838 * indent.c (current_column):
11839 * insdel.c (signal_before_change, signal_after_change):
11840 * intervals.c (set_point_both):
11841 * print.c (temp_output_buffer_setup): Use new type for
11842 overlays_(before|after).
11843
11844 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
11845
11846 * buffer.c (report_overlay_modification): Don't run hooks while
11847 traversing the list of overlays.
11848
11849 * buffer.h (struct buffer): Use an int for overlay_center.
11850 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11851 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11852
11853 * buffer.c (reset_buffer, recenter_overlay_lists)
11854 (adjust_overlays_for_insert, adjust_overlays_for_delete)
11855 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
11856 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
11857 (overlays_at, evaporate_overlays, recenter_overlay_lists)
11858 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
11859
11860 * xdisp.c (fast_find_position): Remove unused var.
11861
11862 * cmds.c (Qexpand_abbrev): New sym.
11863 (syms_of_cmds): Initialize it.
11864 (internal_self_insert): Use it to call expand-abbrev.
11865
11866 2003-07-09 Kim F. Storm <storm@cua.dk>
11867
11868 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
11869 was configured with --without-xim.
11870 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
11871
11872 2003-07-07 Richard M. Stallman <rms@gnu.org>
11873
11874 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
11875
11876 * alloc.c (Fgarbage_collect): Doc fix.
11877
11878 2003-07-07 Nozomu Ando <nand@mac.com>
11879
11880 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
11881
11882 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11883
11884 * minibuf.c (read_minibuf): UNGCPRO before returning.
11885 (Ftry_completion, Fall_completions): Doc fix.
11886
11887 * alloc.c (live_float_p): Check that p is not past the `floats' array,
11888 now that `floats' is not the last element of the struct any more.
11889
11890 2003-07-06 Jason Rumney <jasonr@gnu.org>
11891
11892 * w32term.h (ClipboardSequence_Proc): New type.
11893
11894 * w32fns.c (clipboard_sequence_fn): New variable.
11895 (globals_of_w32fns): Initialize it.
11896
11897 * w32select.c (last_clipboard_sequence_number): New variable.
11898 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
11899 number if possible.
11900
11901 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
11902
11903 * m/amdx86-64.h (MARKBIT):
11904 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
11905 MARKBIT and ARRAY_MARK_FLAG any more.
11906
11907 * m/hp800.h (XSETMARKBIT):
11908 * m/sr2k.h (XSETMARKBIT):
11909 * lisp.h (XSETMARKBIT): Remove unused macro.
11910
11911 * lisp.h (mark_object): Change prototype.
11912
11913 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
11914 (last_marked): Change accordingly.
11915 (mark_interval, mark_maybe_object, mark_maybe_pointer)
11916 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
11917 (mark_buffer): Update calls to mark_object.
11918
11919 * bytecode.c (mark_byte_stack):
11920 * fns.c (sweep_weak_table):
11921 * keyboard.c (mark_kboards): Update calls to mark_object.
11922
11923 2003-07-06 Jason Rumney <jasonr@gnu.org>
11924
11925 * alloc.c (struct ablock): Only include padding when there is some.
11926
11927 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
11928
11929 * alloc.c (ALIGN): Add casts to simplify usage.
11930 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
11931 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
11932 (struct ablock, struct ablocks): New types.
11933 (free_ablock): New global var.
11934 (lisp_align_malloc, lisp_align_free): New functions.
11935 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
11936 (struct float_block): Reorder and add gcmarkbits.
11937 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
11938 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
11939 (init_float, make_float): Use lisp_align_malloc.
11940 (free_float, live_float_p): Don't use `type' any more.
11941 (make_float): Use FLOAT_UNMARK to access to mark bit.
11942 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
11943 Use FLOAT_MARKED_P to access the mark bit.
11944 (pure_alloc): Simplify use of ALIGN.
11945 (mark_object): Use FLOAT_MARK to access the mark bit.
11946 (gc_sweep): Use new macros to access the float's mark bit.
11947 (init_alloc_once): Init free_ablock.
11948
11949 * lisp.h (struct Lisp_Float): Remove unused field `type'.
11950
11951 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
11952
11953 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
11954 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
11955 (allocate_buffer): Move.
11956 (string_bytes): Don't mask markbit of `size_byte'.
11957 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
11958 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
11959 Use the `size' field of buffers (rather than the `name' field) for
11960 the mark bit, as is done for all other vectorlike objects.
11961 Use the new macros to access the mark bit of vectorlike objects.
11962
11963 2003-06-26 Richard M. Stallman <rms@gnu.org>
11964
11965 * puresize.h (BASE_PURESIZE): Increment base size.
11966
11967 * xdisp.c (fast_find_position): Enable Gerd's new definition.
11968
11969 * xterm.c (xim_initialize): Undo previous change.
11970
11971 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
11972
11973 * alloc.c (survives_gc_p): Simplify.
11974
11975 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
11976
11977 * window.c (Fset_window_dedicated_p): Simplify.
11978 (display_buffer_1): Don't raise the win from which minibuf was entered.
11979 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
11980 (Fminibuffer_selected_window): Simplify.
11981
11982 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
11983
11984 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
11985 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
11986
11987 * insdel.c (check_markers, adjust_markers_for_delete)
11988 (adjust_markers_for_insert, adjust_markers_for_replace)
11989 (prepare_to_modify_buffer, RESTORE_VALUE):
11990 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
11991 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
11992 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
11993 * alloc.c (Fmake_marker, free_marker, gc_sweep):
11994 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
11995 * editfns.c (save_excursion_restore, transpose_markers):
11996 * window.c (delete_window):
11997 * xdisp.c (message_dolog): Update for new types.
11998
11999 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12000
12001 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
12002 (realize_default_face): Use default_face_done_p for the force_p
12003 argument to set_lface_from_font_name. Set default_face_done_p to one.
12004
12005 * frame.c (make_frame): Initialize default_face_done_p.
12006
12007 * frame.h (struct frame): Add default_face_done_p.
12008
12009 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
12010 will be defined.
12011
12012 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
12013
12014 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
12015 Initialize the new field `gcmarkbit'.
12016 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
12017 (mark_interval_tree): Don't mark the tree separately from the nodes.
12018 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
12019 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
12020 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
12021
12022 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
12023 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
12024 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
12025 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
12026 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
12027
12028 2003-06-24 Dave Love <fx@gnu.org>
12029
12030 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
12031
12032 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
12033 from gnulib.
12034
12035 2003-06-21 Richard M. Stallman <rms@gnu.org>
12036
12037 * fileio.c (Fwrite_region): Alternate messages
12038 for append and partial write.
12039
12040 * keyboard.c (read_key_sequence): When converting upcase fn key to
12041 downcase, update fkey and keytran so `backspace' gets translated.
12042
12043 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
12044
12045 * process.c (wait_reading_process_input): Don't signal SIGIO
12046 in batch mode.
12047
12048 2003-06-17 Kenichi Handa <handa@m17n.org>
12049
12050 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
12051 composite.h.
12052
12053 * xselect.c: Don't include charset.h, coding.h, composite.h.
12054 (Qforeign_selection): New variable.
12055 (syms_of_xselect): Intern and static it.
12056 (selection_data_to_lisp_data): Return a unibyte string made from
12057 data with `foreign-selection' text property.
12058
12059 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
12060
12061 * termhooks.h (EVENT_INIT): New macro.
12062
12063 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
12064
12065 * alloc.c (mark_kboards): Move to keyboard.c.
12066
12067 * keyboard.c (record_asynch_buffer_change, read_avail_input):
12068 * xterm.c (x_dispatch_event):
12069 * xmenu.c (find_and_call_menu_selection):
12070 * xdisp.c (handle_tool_bar_click):
12071 * w32menu.c (menubar_selection_callback):
12072 * sysdep.c (kbd_input_ast, read_input_waiting):
12073 * msdos.c (dos_rawgetc):
12074 * macterm.c (mac_check_for_quit_char):
12075 * macmenu.c (menubar_selection_callback):
12076 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
12077 data to kbd_buffer_store_event.
12078
12079 2003-06-15 Kim F. Storm <storm@cua.dk>
12080
12081 * xdisp.c (x_fix_overlapping_area): Always use area relative X
12082 to fix redisplay problem with tall characters (such as \e,AC\e(B).
12083
12084 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
12085
12086 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
12087
12088 2003-06-12 Kenichi Handa <handa@m17n.org>
12089
12090 * fileio.c (Fwrite_region): Save and restore restriction.
12091
12092 2003-06-12 Dave Love <fx@gnu.org>
12093
12094 * alloca.c (alloca): Declare arg as size_t.
12095
12096 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
12097 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
12098
12099 2003-06-11 Dave Love <fx@gnu.org>
12100
12101 * search.c (shrink_regexp_cache): Use xrealloc.
12102 (syms_of_search): Use xmalloc.
12103
12104 2003-06-10 Kim F. Storm <storm@cua.dk>
12105
12106 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
12107 Adjust phys_cursor.x to be relative to window box, rather than
12108 text area before checking -- to ensure cursor is redrawn when
12109 exposing window.
12110 Note: This also fixes a similar (older) bug if display margins
12111 are present.
12112
12113 2003-06-06 Kenichi Handa <handa@m17n.org>
12114
12115 * coding.c (encoding_buffer_size): If coding->type is
12116 coding_type_ccl, double magnification on CRLF encoding.
12117
12118 2003-06-06 Jason Rumney <jasonr@gnu.org>
12119
12120 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
12121 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
12122
12123 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
12124 Mac too.
12125
12126 2003-06-05 Dave Love <fx@gnu.org>
12127
12128 * strftime.c: Merge changes from gnulib.
12129
12130 * mktime.c (__mktime_internal): Merge changes from gnulib
12131 involving year 69 and dst2.
12132
12133 Changes to merge with gnulib version and be consistent with the
12134 autoconf test:
12135
12136 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
12137 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
12138 [HAVE_LOCALE_H]: Include locale.h.
12139 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
12140
12141 2003-06-05 Kim F. Storm <storm@cua.dk>
12142
12143 * window.c (coordinates_in_window): Convert X and Y to window
12144 relative coordinates inside mode-line and header-line parts.
12145 Convert X and Y to margin area relative coordinates inside left
12146 and right display margin parts.
12147
12148 2003-06-05 Jason Rumney <jasonr@gnu.org>
12149
12150 * w32fns.c (add_system_logical_colors_to_map): New function.
12151 (Fx_open_connection): Use it.
12152
12153 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
12154
12155 * process.c (allocate_pty): Revert part of the previous patch.
12156 (Faccept_process_output): Simplify.
12157
12158 2003-06-04 Jason Rumney <jasonr@gnu.org>
12159
12160 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
12161
12162 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
12163 (lispy_mouse_wheel_names): Remove.
12164 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
12165 Always define drag_and_drop_syms.
12166
12167 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
12168 WHEEL_EVENT events.
12169
12170 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
12171
12172 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
12173
12174 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
12175
12176 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12177
12178 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
12179 menu item label.
12180
12181 2003-06-03 Richard M. Stallman <rms@gnu.org>
12182
12183 * window.c (Fwindow_edges): Doc fix.
12184 (Fwindow_pixel_edges, Fwindow_inside_edges)
12185 (Fwindow_inside_pixel_edges): New functions.
12186 (syms_of_window): defsubr them.
12187
12188 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
12189 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
12190
12191 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
12192
12193 * dispnew.c (Fsit_for): Don't lie about the number of args.
12194
12195 2003-06-02 Dave Love <fx@gnu.org>
12196
12197 * callproc.c: Use HAVE_FCNTL_H, not USG5.
12198 (syms_of_callproc) <process-environment>: Doc fix.
12199
12200 * doc.c: Use HAVE_FCNTL_H, not USG5.
12201
12202 * xfaces.c (font_rescale_ratio): Fix for K&R.
12203
12204 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
12205
12206 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
12207
12208 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
12209
12210 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
12211 (xg_create_frame_widgets): Use ENCODE_UTF_8.
12212
12213 * xterm.c (Qutf_8): Move to coding.c
12214
12215 * xmenu.c (ENCODE_MENU_STRING): New.
12216 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
12217 Use it.
12218
12219 * coding.h (ENCODE_UTF_8): New.
12220 (Qutf_8): Declare.
12221
12222 * coding.c (Qutf_8): New.
12223 (syms_of_coding): Intern it.
12224
12225 * fns.c: Doc fixes.
12226
12227 2003-06-02 Kenichi Handa <handa@m17n.org>
12228
12229 * buffer.c (Fset_buffer_multibyte): Fix previous change.
12230
12231 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
12232
12233 * lread.c (openp): Make sure STR is a string.
12234
12235 2003-06-01 David Ponce <david@dponce.com>
12236
12237 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
12238 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
12239
12240 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
12241 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
12242 (discard_mouse_events): Discard WHEEL_EVENT events too.
12243 (lispy_wheel_names, wheel_syms): New.
12244 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
12245 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
12246 (make_lispy_event): Add WHEEL_EVENT handler.
12247
12248 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
12249 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12250 WHEEL_EVENT events.
12251
12252 2003-05-31 John Paul Wallington <jpw@gnu.org>
12253
12254 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
12255 timer are in lisp/emacs-lisp.
12256
12257 2003-05-31 Kenichi Handa <handa@m17n.org>
12258
12259 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
12260 region when a buffer is changed to unibyte.
12261
12262 * charset.h (VALID_LEADING_CODE_P): New macro.
12263 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
12264
12265 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
12266 is nonzero, accept multibyte form of eight-bit-control chars.
12267 (decode_composition_emacs_mule): Likewise.
12268 (decode_coding_emacs_mule): Likewise.
12269 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
12270 multibyte form of eight-bit-control chars.
12271
12272 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
12273 (Finsert_file_contents): If coding-system-for-read is bound to
12274 Qauto_save_coding, use the coding system emacs-mule with special
12275 setting for recovering a file.
12276 (choose_write_coding_system): On auto saving, use the coding
12277 system emacs-mule with special setting for auto saving.
12278 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
12279
12280 2003-05-30 Kenichi Handa <handa@m17n.org>
12281
12282 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
12283 properly before calling ccl_driver.
12284
12285 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
12286
12287 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
12288 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
12289 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
12290
12291 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
12292
12293 * xfaces.c (realize_default_face): Do not abort if lface is
12294 non-existent - reverts change from 2003-05-19.
12295
12296 2003-05-29 Kenichi Handa <handa@m17n.org>
12297
12298 * coding.c (decode_coding_iso2022): Pay attention to the byte
12299 sequence of CTEXT extended segment, and retain those bytes as is.
12300
12301 2003-05-28 Kenichi Handa <handa@m17n.org>
12302
12303 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
12304 of CODING_REPLACEMENT_CHARACTER.
12305 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
12306 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
12307 check this flag on encoding.
12308 (encode_coding_sjis_big5):
12309 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
12310 (Fset_terminal_coding_system_internal):
12311 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
12312 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
12313
12314 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
12315 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
12316 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
12317
12318 2003-05-28 Richard M. Stallman <rms@gnu.org>
12319
12320 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
12321
12322 * eval.c (unbind_to): Move init of this_binding to separate statement.
12323
12324 2003-05-28 Kim F. Storm <storm@cua.dk>
12325
12326 * xdisp.c (expose_window): Fix error in calculation of
12327 window relative coordinates of area to redisplay.
12328
12329 2003-05-27 Jason Rumney <jasonr@gnu.org>
12330
12331 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
12332
12333 2003-05-27 David Ponce <david@dponce.com>
12334
12335 Handle W32 mouse wheel events as mouse click events, like in X.
12336
12337 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
12338 MOUSE_WHEEL_EVENT anymore.
12339
12340 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
12341 Scrolling down/up the mouse wheel is respectively mapped to mouse
12342 button 4 and 5.
12343 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
12344 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
12345 WM_MOUSEWHEEL events.
12346
12347 2003-05-27 Andreas Schwab <schwab@suse.de>
12348
12349 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
12350
12351 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
12352 partially visible line.
12353
12354 * alloc.c (Fgarbage_collect): Fix last change.
12355
12356 2003-05-26 John Paul Wallington <jpw@gnu.org>
12357
12358 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
12359
12360 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
12361
12362 * window.c (Fset_window_buffer): Add type of `keep_margins'.
12363 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
12364
12365 * window.h (window_box_text_cols): Declare.
12366
12367 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
12368 (x_draw_vertical_border): Remove unused var `f'.
12369
12370 * xfaces.c (build_scalable_font_name): Remove `unused var
12371 pixel_size' warning.
12372
12373 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
12374
12375 * unexelf.c (unexec): Remove `unused var n' warning.
12376
12377 * strftime.c (my_strftime_localtime_r): Remove `defined but
12378 unused' warning.
12379
12380 * process.c (allocate_pty): Remove `unused var stb' and
12381 `cp might be used uninitialized' warnings.
12382
12383 * dispnew.c (mode_line_string): Remove unused var `f'.
12384
12385 * coding.c (find_safe_codings): Remove unused var `i'.
12386
12387 * bytecode.c (Fbyte_code): Remove `unused val' warning.
12388
12389 * buffer.c (Fkill_buffer): Remove unused var `list'.
12390
12391 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
12392
12393 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12394
12395 * frame.c (make_frame): Condition want_fullscreen with
12396 HAVE_WINDOW_SYSTEM.
12397
12398 2003-05-25 Juanma Barranquero <lektu@terra.es>
12399
12400 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
12401 (Fwindow_scroll_bars): Fix typo in docstring.
12402
12403 2003-05-24 Kim F. Storm <storm@cua.dk>
12404
12405 The following changes serve several purposes:
12406
12407 1) Swap the position of fringes and display margins in windows, i.e.
12408 the fringes are now displayed between the margins and the text area
12409 (by default).
12410
12411 2) Allow fringe and scroll bar parameters to be set per-buffer and
12412 per-window (like display margins). Such settings are now stored
12413 in window configurations, preserved when frames are resized, and
12414 copied when windows are split vertically or horizontally.
12415 Several bugs related to display margins have been fixed.
12416
12417 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
12418
12419 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
12420 rather than FRAME_WIDTH (FRAME_FONT (f)).
12421
12422 5) Introduce a consistent naming of variables, members and macros
12423 depending on whether their value is measured in pixels or in
12424 canonical columns/lines. Pixel dimensions are named *_width and
12425 *_height, while canonical columns/lines are named *_cols and
12426 *_lines. Pixel positions are named *_x and *_y, while column/line
12427 positions are named *_col and *_line.
12428
12429 6) Consolidate more of the X, W32, and MAC gui code by moving
12430 common data into struct frame, and generalize it for the non-gui
12431 case by using suitable defaults.
12432
12433 7) Cleanup and consolidate the macros controlling frame and window
12434 layout into frame.h and window.h, and generalize the use of the
12435 various window_box_* functions (enhanced to handle the new fringe
12436 position and the per-window fringe and scroll bar settings).
12437
12438 * frame.h (struct frame): Rename members height to text_lines,
12439 width to text_cols, window_height to total_lines, window_width to
12440 total_cols, new_height to new_text_lines, new_width to
12441 new_text_cols. All uses changed.
12442 (struct frame): New members which consolidate common members of
12443 x_output, w32_output, and mac_output structures: left_pos,
12444 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
12445 win_gravity, size_hint_flags, border_width, internal_border_width,
12446 line_height, fringe_cols, left_fringe_width, right_fringe_width,
12447 want_fullscreen. All uses changed.
12448 (struct frame): New member column_width contaning the canonical
12449 column width, analogue to line_height. All uses changed.
12450 (struct frame): Rename members scroll_bar_pixel_width to
12451 config_scroll_bar_width, and scroll_bar_cols to
12452 config_scroll_bar_cols. All uses changed.
12453 (struct frame): New member scroll_bar_actual_width which
12454 consolidates and renames the vertical_scroll_bar_extra member of
12455 x_output, w32_output, and mac_output structures. All uses changed.
12456 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
12457 from x/w32/macterm.h files. All uses changed. Also change code
12458 which referred to f->output_data...->pixel_height.
12459 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
12460 from x/w32/macterm.h files. All uses changed. Also change code
12461 which referred to f->output_data...->pixel_width.
12462 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
12463 Also change code which referred to f->height.
12464 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
12465 Also change code which referred to f->width.
12466 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
12467 to update new_text_lines and new_text_cols members directly.
12468 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
12469 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
12470 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
12471 FRAME_SCROLL_BAR_COLS. All uses changed.
12472 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
12473 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
12474 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
12475 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
12476 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
12477 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
12478 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
12479 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
12480 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
12481 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
12482 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
12483 Unconditionally return line_height member (it now has proper value
12484 also for non-window frames).
12485 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
12486 return new column_width member (rather than the default font width).
12487 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
12488 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
12489 from x/w32/macterm.h files. Unconditionally return corresponding
12490 member of frame structure (they now have proper values also for
12491 non-window frames).
12492 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
12493 Calculate return value from left and right widths.
12494 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
12495 internal_border_width member (has proper value for non-window frame).
12496 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
12497 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
12498 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
12499 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
12500 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
12501 consolidated from xterm.h, macterm.h, and w32term.h.
12502 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
12503 consolidated from xterm.h, macterm.h, and w32term.h.
12504 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
12505 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
12506 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
12507 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
12508 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
12509 consolidated from x/mac/w32term.h.
12510 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
12511 consolidated from x/mac/w32term.h.
12512 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
12513 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
12514 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
12515 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
12516
12517 * window.h (struct window): Rename members left to left_col,
12518 top to top_line, height to total_lines, width to total_cols,
12519 left_margin_width to left_margin_cols, right_margin_width to
12520 right_margin_cols, orig_height to orig_total_lines, orig_top to
12521 orig_top_line. All uses changed.
12522 (struct window): New members left_fringe_width, right_fringe_width,
12523 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
12524 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
12525 New macros primarily used to simplify other macros.
12526 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
12527 referred to XINT (w->width).
12528 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
12529 referred to XINT (w->height).
12530 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
12531 referred to XINT (w->width) * canon_x_unit.
12532 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
12533 referred to XINT (w->height) * canon_y_unit.
12534 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
12535 referred to XINT (w->left).
12536 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
12537 all uses and code that referred to XINT (w->left) + XINT (w->width).
12538 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
12539 referred to XINT (w->top).
12540 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
12541 referred to XINT (w->top) + XINT (w->height).
12542 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
12543 referred to XINT (w->left) * canon_x_unit.
12544 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
12545 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
12546 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
12547 referred to XINT (w->top) * canon_y_unit.
12548 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
12549 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
12550 (WINDOW_LEFTMOST_P): New macro.
12551 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
12552 All uses changed.
12553 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
12554 All uses changed.
12555 (WINDOW_BOX_LEFT_EDGE_X): Rename from
12556 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
12557 Do not exclude left fringe width.
12558 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
12559 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
12560 Do not exclude fringe widths.
12561 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
12562 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
12563 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
12564 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
12565 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
12566 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
12567 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
12568 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
12569 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
12570 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
12571 New macros. Change code which referenced corresponding
12572 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
12573 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
12574 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
12575 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
12576 allow per-window scroll-bar settings.
12577 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
12578 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
12579 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
12580 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
12581 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
12582 FRAME_SCROLL_BAR_WIDTH.
12583 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
12584 (WINDOW_SCROLL_BAR_AREA_X): New macros.
12585 (WINDOW_HEADER_LINE_HEIGHT): Rename from
12586 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
12587 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
12588 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
12589 (WINDOW_BOX_TEXT_HEIGHT): Rename from
12590 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
12591 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12592 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12593 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
12594 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
12595 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12596 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
12597 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
12598 (window_from_coordinates): Update prototype.
12599 (Fset_window_buffer): Update EXFUN.
12600 (set_window_buffer): Update prototype.
12601
12602 * dispextern.h (struct glyph_matrix): Rename members window_left_x
12603 to window_left_col, window_top_y to window_top_line. All uses
12604 changed.
12605 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
12606 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
12607 internal_border_width is now set to 0 for non-window frames.
12608 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
12609 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
12610 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
12611 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
12612 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
12613 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
12614 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
12615 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
12616 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
12617 Move to window.h and renamed [see window.h changes].
12618 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
12619 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
12620 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
12621 Use WINDOW_TOTAL_LINES.
12622 (frame_update_line_height): Remove prototype.
12623
12624 * buffer.h (struct buffer): Rename members measured in columns:
12625 left_margin_width to left_margin_cols, right_margin_width to
12626 right_margin_cols. All uses changed.
12627 New members left_fringe_width, right_fringe_width,
12628 fringes_outside_margins for per-buffer fringe settings.
12629 New members scroll_bar_width and vertical_scroll_bar_type for
12630 per-buffer scroll bar settings.
12631
12632 * buffer.c (init_buffer_once): Set buffer_defaults and
12633 buffer_local_flags for new buffer-local variables
12634 left_fringe_width, right_fringe_width, fringes_outside_margins,
12635 scroll_bar_width, and vertical_scroll_bar_type.
12636 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
12637 default-* variables for them.
12638
12639 * dispnew.c: Make (many) trivial substitutions for renamed and
12640 new macros in dispextern.h, frame.h and window.h.
12641 (mode_line_string): No need to adjust width for mode lines, as it
12642 is already adjusted by the caller.
12643 (marginal_area_string): Handle fringes inside/outside margins.
12644
12645 * frame.c: Make (many) trivial substitutions for renamed and
12646 new macros in dispextern.h, frame.h and window.h.
12647 (make_frame): Initialize left_fringe_width, right_fringe_width,
12648 fringe_cols, scroll_bar_actual_width, border_width,
12649 internal_border_width, column_width, line_height, x_pixels_diff,
12650 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
12651 members with values suitable for a non-window frames.
12652
12653 * gtkutil.c: Make (many) trivial substitutions for renamed and
12654 new macros in dispextern.h, frame.h and window.h.
12655
12656 * indent.c: Make (few) trivial substitutions for renamed and
12657 new macros in dispextern.h, frame.h and window.h.
12658
12659 * keyboard.c: Make (many) trivial substitutions for renamed and
12660 new macros in dispextern.h, frame.h and window.h.
12661 (make_lispy_event): Use window positions returned from
12662 window_from_coordinates when constructing the lisp event for
12663 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
12664 (incorrect) values locally.
12665 (make_lispy_movement): Use window positions returned from
12666 window_from_coordinates when constructing the lisp event, rather
12667 than calculating (incorrect) values locally.
12668
12669 * scroll.c: Make (some) trivial substitutions for renamed and
12670 new macros in dispextern.h, frame.h and window.h.
12671
12672 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
12673 scroll-bars.
12674
12675 * sysdep.c: Make (few) trivial substitutions for renamed and
12676 new macros in dispextern.h, frame.h and window.h.
12677
12678 * term.c: Make (some) trivial substitutions for renamed and
12679 new macros in dispextern.h, frame.h and window.h.
12680
12681 * widget.c: Make (few) trivial substitutions for renamed and
12682 new macros in dispextern.h, frame.h and window.h.
12683
12684 * window.c: Make (many) trivial substitutions for renamed and
12685 new macros in dispextern.h, frame.h and window.h.
12686 (make_window): Initialize new members
12687 left_margin_cols, right_margin_cols, left_fringe_width,
12688 right_fringe_width, fringes_outside_margins, scroll_bar_width,
12689 and vertical_scroll_bar_type.
12690 (coordinates_in_window): Adapt to new fringe/margin positions
12691 and per-window fringes and scroll-bars.
12692 Fix bug related to incorrectly adjusting coordinates by
12693 frame's internal_border_width (the effect normally negible since
12694 the internal_border_width is typically 0 or 1 pixel, but very
12695 noticeable for an internal_border_width of e.g. 25 pixels).
12696 Upon successful return (other than ON_NOTHING), the coordinates
12697 are now always properly converted to window relative for the
12698 given display element.
12699 (window_from_coordinates): Add new parameters wx and wy to
12700 return the window relative x and y position in the returned
12701 window and part. A null arg means, don't return the position.
12702 All callers changed.
12703 (adjust_window_margins): New function which may reduce the width
12704 of the display margins if a window's text area is too small after
12705 resizing or splitting windows.
12706 (size_window): Fix bug that did not account for display margin
12707 widths when checking the minimum width of a window; use
12708 adjust_window_margins.
12709 (set_window_buffer): Call Fset_window_fringes and
12710 Fset_window_scroll_bars to setup per-window elements.
12711 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
12712 existing display margin, fringe widths, and scroll bar settings
12713 (e.g. after splitting a window or resizing the frame).
12714 All callers changed.
12715 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
12716 (Fsplit_window): Duplicate original window's display margin,
12717 fringe, and scroll-bar settings; then call Fset_window_buffer with
12718 KEEP_MARGINS non-nil. This fixes a bug which caused a split
12719 window to only preserve the display margins in one of the windows.
12720 When splitting horizontally, call adjust_window_margins on both
12721 windows to ensure that the text area of the new windows is non too
12722 narrow. This fixes a bug which could cause Emacs to trap if the
12723 width of the split window was less than the width of the display
12724 margins.
12725 (window_box_text_cols): Rename from window_internal_width.
12726 All uses changed. Adapt to per-window fringes and scroll bars.
12727 Fix bug that caused vertical separator to be subtracted also on
12728 window frames. Fix another bug that did not reduce the returned
12729 value by the columns used for display margins.
12730 (window_scroll_line_based): Fix bug related to scrolling too much
12731 when display margins are present (implicitly fixed by the fix to
12732 window_box_text_cols).
12733 (scroll_left, scroll_right): Fix bug related to scrolling too far
12734 by default when display margins are present (implicitly fixed by
12735 the fix to window_box_text_cols).
12736 (struct saved_window): Rename members left to left_col, top to
12737 top_line, width to total_cols, height to total_lines, orig_top to
12738 orig_top_line, orig_height to orig_total_lines. All uses changed.
12739 New members left_margin_cols, right_margin_cols,
12740 left_fringe_width, right_fringe_width, fringes_outside_margins,
12741 scroll_bar_width, and vertical_scroll_bar_type for saving
12742 per-window display elements.
12743 (Fset_window_configuration): Restore display margins, fringes,
12744 and scroll bar settings. This fixes a bug which caused display
12745 margins to be discarded when saving and restoring a window
12746 configuration.
12747 (save_window_save): Save display margins, fringes, and scroll bar
12748 settings. This fixes a bug which caused display margins to be
12749 discarded when saving and restoring a window configuration.
12750 (Fset_window_margins): Do nothing if display margins are not
12751 really changed. Otherwise, call adjust_window_margins to ensure
12752 the text area doesn't get too narrow. This fixes a bug which
12753 could cause Emacs to trap if setting display margins wider than
12754 the width of the window.
12755 (Fset_window_fringes): New defun to allow user to specifically set
12756 this window's fringe widths and position vs. display margins.
12757 (Fwindow_fringes): New defun to return window's actual fringe settings.
12758 (Fset_window_scroll_bars): New defun to allow user to specifically
12759 set this window's scroll bar width and position.
12760 (Fwindow_scroll_bars): New defun to return window's actual scroll
12761 bar settings.
12762 (compare_window_configurations): Also compare display margins,
12763 fringes, and scroll bar settings.
12764 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
12765
12766 * xdisp.c: Make (many) trivial substitutions for renamed and
12767 new macros in dispextern.h, frame.h and window.h.
12768 (window_box_width): Adapt to per-window fringes and scroll bars,
12769 and new fringe vs. display margin position. Note that returned
12770 value is no longer guaranteed to be a whole multiple of the frame
12771 column width, since per-window fringes may now be any width.
12772 (window_box_left_offset): New function like window_box_left, but
12773 value is relative to left border of window (rather than frame).
12774 (window_box_right_offset): New function like window_box_right,
12775 but value is relative to left border of window.
12776 (window_box_left): Adapt to per-window fringes and scroll bars,
12777 and new fringe vs. display margin position. Simplify by using
12778 WINDOW_LEFT_EDGE_X and window_box_left_offset.
12779 (window_box): Allow null args for unnecessary return values;
12780 change/simplify relevant callers.
12781 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
12782 and new fringe vs. display margin position.
12783 Use window_box_left_offset and window_box_right_offset
12784 (get_glyph_string_clip_rect): Adapt to per-window fringes and
12785 scroll bars, and new fringe vs. display margin position.
12786 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
12787 (draw_fringe_bitmap): Rework to handle per-window fringes and new
12788 fringe vs. display margin position.
12789 (hscroll_window_tree): Use window_box_width instead of window_box.
12790 (redisplay_window): Adapt to per-window scroll bars.
12791 (draw_glyphs): Rework to handle per-window fringes and scroll
12792 bars, and new fringe vs. display margin position.
12793 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
12794 (x_clear_end_of_line): Adapt to per-window fringes and scroll
12795 bars, and new fringe vs. display margin position. Fix bug which
12796 increased total width of full_width rows by width of scroll bars
12797 although window's total width already includes that.
12798 (x_fix_overlapping_area): Simplify using window_box_left_offset.
12799 (expose_area): Simplify using window_box_left_offset.
12800 (x_draw_vertical_border): Handle per-window scroll bar settings,
12801 mixing windows with left, right and no scroll bars.
12802
12803 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
12804 where it's used in x_list_fonts (for clarity).
12805 (frame_update_line_height): Remove unused function; functionality
12806 is now done directly when setting the default font in x_set_font.
12807
12808 * xfns.c: Make (many) trivial substitutions for renamed and
12809 new macros in dispextern.h, frame.h and window.h.
12810
12811 * xmenu.c: Make (some) trivial substitutions for renamed and
12812 new macros in dispextern.h, frame.h and window.h.
12813
12814 * xterm.h (struct x_output): Move members left_pos, top_pos,
12815 border_width, pixel_height, pixel_width, line_height,
12816 internal_border_width, vertical_scroll_bar_extra,
12817 left_fringe_width, right_fringe_width, fringe_cols,
12818 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12819 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12820 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12821 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12822 (PIXEL_WIDTH, PIXEL_HEIGHT)
12823 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12824 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12825 frame.h and renamed [see frame.h changes].
12826 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12827 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12828 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12829 and renamed [see frame.h changes].
12830
12831 * xterm.c: Make (several) trivial substitutions for renamed and
12832 new macros in dispextern.h, frame.h and window.h.
12833 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12834 (scroll_run): Adapt to new fringe position.
12835 (glyph_rect): Use window coordinates returned from
12836 window_from_coordinates rather than frame_to_window_pixel_xy.
12837 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12838 scroll-bars.
12839 (handle_one_xevent): Simplify a USE_GTK conditional.
12840 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12841 (fringes are now inside margins, i.e. always in the clipping area).
12842 All callers changed.
12843 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12844 directly, then call compute_fringe_widths. Don't call
12845 frame_update_line_height.
12846
12847 * w32term.h (struct w32_output): Move members left_pos, top_pos,
12848 border_width, pixel_height, pixel_width, line_height,
12849 internal_border_width, vertical_scroll_bar_extra,
12850 left_fringe_width, right_fringe_width, fringe_cols,
12851 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12852 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
12853 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12854 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12855 (PIXEL_WIDTH, PIXEL_HEIGHT)
12856 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12857 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12858 frame.h and renamed [see frame.h changes].
12859 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12860 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12861 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12862 and renamed [see frame.h changes].
12863
12864 * w32term.c: Make (several) trivial substitutions for renamed and
12865 new macros in dispextern.h, frame.h and window.h.
12866 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12867 (glyph_rect): Use window coordinates returned from
12868 window_from_coordinates rather than frame_to_window_pixel_xy.
12869 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12870 scroll-bars.
12871 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
12872 (fringes are now inside margins, i.e. always in the clipping area).
12873 All callers changed.
12874 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12875 directly, then call compute_fringe_widths. Don't call
12876 frame_update_line_height.
12877
12878 * w32console.c: Make (few) trivial substitutions for renamed and
12879 new macros in dispextern.h, frame.h and window.h.
12880
12881 * w32fns.c: Make (many) trivial substitutions for renamed and
12882 new macros in dispextern.h, frame.h and window.h.
12883
12884 * w32menu.c: Make (few) trivial substitutions for renamed and
12885 new macros in dispextern.h, frame.h and window.h.
12886
12887 * macterm.h (struct mac_output): Move members left_pos, top_pos,
12888 border_width, pixel_height, pixel_width, line_height,
12889 internal_border_width, vertical_scroll_bar_extra,
12890 left_fringe_width, right_fringe_width, fringe_cols,
12891 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
12892 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
12893 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
12894 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
12895 (PIXEL_WIDTH, PIXEL_HEIGHT)
12896 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
12897 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
12898 frame.h and renamed [see frame.h changes].
12899 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
12900 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
12901 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
12902 and renamed [see frame.h changes].
12903
12904 * macterm.c: Make (several) trivial substitutions for renamed and
12905 new macros in dispextern.h, frame.h and window.h.
12906 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
12907 (glyph_rect): Use window coordinates returned from
12908 window_from_coordinates rather than frame_to_window_pixel_xy.
12909 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
12910 scroll-bars.
12911 (x_clip_to_row): Remove superfluous whole_line_p arg and code
12912 (fringes are now inside margins, i.e. always in the clipping area).
12913 All callers changed.
12914 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
12915 directly, then call compute_fringe_widths. Don't call
12916 frame_update_line_height.
12917
12918 * macfns.c: Make (several) trivial substitutions for renamed and
12919 new macros in dispextern.h, frame.h and window.h.
12920 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
12921
12922 * macmenu.c: Make (few) trivial substitutions for renamed and
12923 new macros in dispextern.h, frame.h and window.h.
12924
12925 * msdos.h (struct x_output): Remove members left_pos, top_pos,
12926 and line_height, and use corresponding new members in struct
12927 frame. All uses changed.
12928 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
12929 superseeded by corresponding macros in frame.h.
12930
12931 * msdos.c: Make (several) trivial substitutions for renamed and
12932 new macros in dispextern.h, frame.h and window.h.
12933 (IT_note_mouse_highlight): Use updated window coordinates returned
12934 by window_from_coordinates, rather than adjusting them locally.
12935 (internal_terminal_init): No need to initialize line_height here;
12936 it now defaults to 1.
12937
12938 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
12939
12940 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
12941 dropping `down' events.
12942
12943 2003-05-24 Andreas Schwab <schwab@suse.de>
12944
12945 * coding.c (find_safe_codings): Fix last change.
12946
12947 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
12948
12949 * xfns.c (x_window): Fix typo from 2003-05-21 change.
12950
12951 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
12952
12953 * xdisp.c (display_mode_element): Increase max depth.
12954 Simplify the error handling code. Use a different error string
12955 for the case where we hit the depth limit.
12956
12957 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
12958
12959 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
12960
12961 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
12962
12963 * intervals.c (get_local_map): Don't get char-property of previous
12964 point any more: get_pos_property already does it and better.
12965
12966 2003-05-21 Dave Love <fx@gnu.org>
12967
12968 [Merged from unicode branch.]
12969
12970 * xfns.c (x_window, x_window): Use use_xim.
12971
12972 * xterm.c (use_xim): Initialize.
12973 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
12974 (x_term_init): Maybe set use_xim.
12975
12976 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
12977
12978 2003-05-21 Jason Rumney <jasonr@gnu.org>
12979
12980 * unexw32.c (_start): Remove _fmode initialization.
12981
12982 * emacs.c (main) [WINDOWSNT]: Move it here.
12983
12984 2003-05-20 Dave Love <fx@gnu.org>
12985
12986 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
12987
12988 2003-05-19 Richard M. Stallman <rms@gnu.org>
12989
12990 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
12991 as value for QCfont attribute.
12992 (realize_default_face): lface should already exist; crash if not.
12993 Specify 0 for FORCE_P when calling set_lface_from_font_name.
12994
12995 * frame.c (Fignore_event): Doc fix.
12996
12997 2003-05-19 Kenichi Handa <handa@m17n.org>
12998
12999 * coding.c (decode_coding_string): Handle post-read-conversion
13000 even if the coding doesn't require decoding.
13001
13002 2003-05-18 Richard M. Stallman <rms@gnu.org>
13003
13004 * callproc.c (Fcall_process_region): Doc fix.
13005
13006 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
13007
13008 * lread.c (Fload): Print a message if package is obsolete.
13009
13010 * window.c (Fselect_window): Add optional `norecord' arg.
13011 (select_window_1): Fold into Fselect_window.
13012 (select_window_norecord): New function.
13013 (temp_output_buffer_show): Use it. Preserve current buffer.
13014
13015 * window.h (Fselect_window): Update declaration.
13016
13017 * window.c (delete_window, Fother_window, Fset_window_configuration):
13018 * minibuf.c (read_minibuf):
13019 * macterm.c (x_new_focus_frame):
13020 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
13021 * callint.c (Fcall_interactively):
13022 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
13023
13024 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
13025
13026 2003-05-17 David Kastrup <dak@gnu.org>
13027
13028 * process.c (read_process_output): Back out change from 2003-03-09.
13029
13030 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
13031
13032 * editfns.c (get_pos_property): Don't assume that `object' = nil.
13033
13034 * textprop.c (text_property_stickiness): New arg `buffer'.
13035
13036 * intervals.h (text_property_stickiness): New arg `buffer'.
13037 (get_pos_property): Declare.
13038
13039 * intervals.c (get_local_map): Use get_pos_property, to obey
13040 stickiness and empty overlays.
13041 (create_root_interval, graft_intervals_into_buffer): Use BEG.
13042 (merge_properties, intervals_equal, merge_properties_sticky):
13043 Use XCAR, XCDR.
13044 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
13045
13046 2003-05-17 Richard M. Stallman <rms@gnu.org>
13047
13048 * minibuf.c (read_minibuf): If buffer is empty, record the default
13049 in the history.
13050 (Fminibuffer_complete_word): When deleting the overlap, take account
13051 of its real position.
13052
13053 * fns.c (map_char_table): Fix previous change.
13054
13055 * syntax.c (find_defun_start):
13056 When open_paren_in_column_0_is_defun_start,
13057 return beginning of buffer.
13058
13059 * lisp.h (map_char_table): Declare added arg.
13060
13061 * fns.c (map_char_table): New arg TABLE gets the master table.
13062 All calls changed.
13063 Process default and inheritance, resorting to Faref if necessary.
13064
13065 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
13066 (Faccessible_keymaps): Pass new arg to map_char_table.
13067
13068 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
13069
13070 * casetab.c (set_case_table): Pass new arg to map_char_table.
13071
13072 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
13073
13074 * lisp.h (specbinding_func): New typedef.
13075 (struct specbinding): Use specbinding_func, to put the `volatile'
13076 in the right place.
13077
13078 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
13079 to avoid GCC warning.
13080
13081 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
13082
13083 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
13084
13085 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
13086
13087 * keyboard.c (apply_modifiers): Don't fill the other cache.
13088
13089 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
13090
13091 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
13092
13093 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
13094 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
13095 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
13096 (Fset_window_configuration, Fcurrent_window_configuration)
13097 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
13098 (Fpos_visible_in_window_p, mark_window_cursors_off)
13099 (window_internal_height, window_internal_width, Frecenter)
13100 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
13101 (replace_buffer_in_all_windows, init_window_once, init_window)
13102 (syms_of_window, keys_of_window): Move from lisp.h.
13103 * lisp.h: Move window.c declarations to window.h.
13104
13105 * bytecode.c: Include window.h.
13106 * emacs.c: Include window.h.
13107
13108 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
13109 (keyremap): Add `parent' field.
13110 (keyremap_step): Use it. Remove `parent' argument.
13111 (read_key_sequence): Setup and use the new `parent' field.
13112
13113 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
13114
13115 * keyboard.c (adjust_point_for_property): Ensure termination.
13116
13117 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
13118
13119 * keyboard.c (follow_key): Remove dead variable `did_meta'.
13120 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
13121 duplicated handling of function-key-map and key-translation-map
13122 in read_key_sequence.
13123 (read_key_sequence): Use them.
13124
13125 * keyboard.c (adjust_point_for_property): Try harder to move point
13126 to the non-sticky end of an invisible property.
13127
13128 * xdisp.c (single_display_prop_intangible_p): Make `space' display
13129 property intangible as well.
13130
13131 2003-05-10 Andreas Schwab <schwab@suse.de>
13132
13133 * xmenu.c (single_menu_item): Change last parameter to void* to
13134 avoid warning.
13135
13136 2003-05-09 Richard M. Stallman <rms@gnu.org>
13137
13138 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
13139 Bind Qinhibit_modification_hooks to t so there will be no GC.
13140 Rename local `tem' to `save_deactivate_mark'.
13141
13142 * eval.c (specpdl_ptr): Declare volatile.
13143 (unbind_to): Copy the whole binding and decrement specpdl_ptr
13144 before doing the work of unbinding it.
13145
13146 * lisp.h (struct specbinding): Declare elements volatile.
13147 (specpdl_ptr): Declare volatile.
13148
13149 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
13150
13151 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
13152 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
13153
13154 2003-05-08 Dave Love <fx@gnu.org>
13155
13156 * coding.c (Vlast_coding_system_used): Doc fix.
13157
13158 2003-05-07 Jason Rumney <jasonr@gnu.org>
13159
13160 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
13161 when system does not support them.
13162
13163 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
13164
13165 * fileio.c (Qwrite_region_annotate_functions): New var.
13166 (build_annotations): Use it to process the global part of the hook.
13167 (syms_of_fileio): Init and staticpro it.
13168
13169 * keyboard.c (safe_run_hooks_error): Display a message instead of
13170 silently ignoring the error.
13171
13172 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
13173
13174 * keyboard.c (input_available_signal): Mark static.
13175 (menu_bar_items): Use map_keymap.
13176 (menu_bar_one_keymap): Remove.
13177 (menu_bar_item): Adjust arglist (for use in map_keymap).
13178 Properly hide a second binding when not both are keymaps.
13179
13180 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
13181 (single_keymap_panes): Use it and map_keymap.
13182 (single_menu_item): Use skp as well.
13183
13184 * keymap.h (map_keymap_function_t): New type.
13185 (map_keymap): Declare.
13186
13187 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
13188 (map_keymap_call, Fmap_keymap): New functions.
13189 (syms_of_keymap): Defsubr map-keymap.
13190
13191 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13192
13193 * gtkutil.c (create_dialog, make_widget_for_menu_item)
13194 (make_menu_item, create_menus, xg_update_menu_item): Don't call
13195 ..._with_mnemonic functions for menu items.
13196
13197 2003-05-01 Kenichi Handa <handa@m17n.org>
13198
13199 * coding.c (coding_system_accept_latin_extra_p): Delete this
13200 function.
13201 (find_safe_codings): Pay attention to
13202 the property tranlsation-table-for-encode of each codings.
13203 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
13204
13205 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
13206
13207 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
13208
13209 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
13210
13211 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
13212
13213 * lisp.h (CHECK): Wrap args in parenthesis.
13214 (specbind): Fix doc: symbol = Qnil is not supported any more.
13215
13216 * bytecode.c (Fbyte_code) <unwind-protect>:
13217 Use Fprogn rather than 0 and Qnil.
13218
13219 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
13220 `double', and `triple' modifiers as well.
13221
13222 2003-04-30 Richard M. Stallman <rms@gnu.org>
13223
13224 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
13225
13226 * alloc.c (abort_on_gc): New variable.
13227 (Fgarbage_collect): Abort if abort_on_gc is set.
13228
13229 * lisp.h (abort_on_gc): Add decl.
13230
13231 * eval.c (Fsignal): Clear abort_on_gc.
13232
13233 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
13234 Reinit FORMAT_START and END before second scan.
13235
13236 * xdisp.c (move_it_vertically_backward): Do the final big else
13237 even if nlines is 0.
13238
13239 * xdisp.c (redisplay_internal): Finish the per-frame loop
13240 even if redisplay is suspended by input.
13241
13242 2003-04-24 Andrew Choi <akochoi@shaw.ca>
13243
13244 * macterm.c (x_list_fonts): Return all fonts that match if
13245 maxnames = -1.
13246
13247 2003-04-25 Kenichi Handa <handa@m17n.org>
13248
13249 * syntax.c (skip_chars): Fix previous change.
13250
13251 2003-04-24 Kenichi Handa <handa@m17n.org>
13252
13253 * syntax.c (skip_chars): Make the code faster by using the common
13254 technique of *p, *stop, and *endp.
13255
13256 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13257
13258 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
13259 tool_bar_items so GTK tool bar expose callback does not access items
13260 being updated.
13261
13262 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
13263
13264 * eval.c (Fapply): Undo last change and add a comment about why.
13265
13266 2003-04-18 Miles Bader <miles@gnu.org>
13267
13268 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
13269 pickier PARSE_MULTIBYTE_SEQ.
13270
13271 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
13272
13273 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
13274 Use XCDR, XCAR, CONSP.
13275 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
13276 (Fapply): Remove unnecessary GCPRO.
13277
13278 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
13279
13280 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
13281
13282 * buffer.h: Don't hardcode BEG==1.
13283
13284 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
13285
13286 2003-04-16 Richard M. Stallman <rms@gnu.org>
13287
13288 * xdisp.c (try_window, try_window_reusing_current_matrix):
13289 When at end of window, set window_end_pos to Z-ZV.
13290
13291 * buffer.c (Foverlay_recenter): Doc fix.
13292
13293 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
13294
13295 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
13296
13297 2003-04-14 Andrew Choi <akochoi@shaw.ca>
13298
13299 * macterm.c (mac_check_for_quit_char): Don't check more often than
13300 once a second.
13301
13302 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
13303
13304 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
13305 specially, so that they can't hide an implicit switch-frame event.
13306 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
13307 (head_table): Use switch-frame as event_kind for select-window.
13308 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
13309
13310 * editfns.c (Fformat): Lisp_Object/int mixup.
13311 (format2): Remove unused var numargs.
13312
13313 2003-04-11 Kenichi Handa <handa@m17n.org>
13314
13315 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
13316 (Qafter_insert_file_set_coding): New variable.
13317 (syms_of_fileio): Initialize and staticpro it. Delete declaration
13318 for after-insert-file-adjust-coding-function.
13319 (Finsert_file_contents): Call Qafter_insert_file_set_coding
13320 instead of Vafter_insert_file_adjust_coding_function.
13321
13322 2003-04-11 Kenichi Handa <handa@m17n.org>
13323
13324 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
13325
13326 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
13327 string. Callers changed.
13328
13329 2003-04-10 Kenichi Handa <handa@m17n.org>
13330
13331 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
13332 (syms_of_fileio): Declare it as a lisp variable.
13333 (Finsert_file_contents):
13334 Call Vafter_insert_file_adjust_coding_function before calling
13335 decode-format.
13336
13337 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13338
13339 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
13340 get GtkAdjustment as widget now is a GtkRange.
13341
13342 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
13343 GtkRange to avoid memory leak.
13344
13345 2003-04-09 Kenichi Handa <handa@m17n.org>
13346
13347 * xfaces.c (Vface_font_rescale_alist): New variable.
13348 (struct font_name): New member rescale_ratio.
13349 (font_rescale_ratio): New function.
13350 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
13351 (better_font_p): On comparing point sized, pay attention to
13352 recale_ratio member of fonts.
13353 (build_scalable_font_name): Reflect font->rescale_ratio in the
13354 font name.
13355 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
13356
13357 * lread.c (read1): Before calling index, check if the 2nd
13358 arguemnt is in ASCII range.
13359
13360 2003-04-08 Richard M. Stallman <rms@gnu.org>
13361
13362 * fileio.c (Ffile_symlink_p): Doc fix.
13363
13364 * editfns.c (Fformat): Translate positions of text properties
13365 in the format string to apply them to the result.
13366
13367 * fileio.c (Finsert_file_contents): Doc fix.
13368 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
13369
13370 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
13371
13372 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
13373
13374 2003-04-08 Steven Tamm <steventamm@mac.com>
13375
13376 * mac.c (init_mac_osx_environment): Switch libexec and bin so
13377 that self-contained application finds libexec files.
13378
13379 2003-04-08 Kenichi Handa <handa@m17n.org>
13380
13381 * coding.c (code_convert_region_unwind):
13382 Set Vlast_coding_system_used to the argument.
13383 (code_convert_region): If post-read-conversion function changed
13384 the value of last-coding-sytem, keep the new value in
13385 coding->symbol so that it won't be overridden.
13386 (run_pre_post_conversion_on_str): Likewise.
13387 (coding_system_accept_latin_extra_p): New function.
13388 (find_safe_codings): Pay attention to characters registered in
13389 latin-extra-code-table.
13390
13391 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
13392
13393 * Makefile.in (md5.o): Add missing dependency info.
13394
13395 2003-04-06 Richard M. Stallman <rms@gnu.org>
13396
13397 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
13398
13399 * marker.c (verify_bytepos): New function.
13400
13401 * intervals.c (set_intervals_multibyte_1): When becoming
13402 multibyte, adjust right and left child sizes to a whole set of
13403 characters. If an interval gets zero total-length, delete it.
13404 If an interval consists of just its children, delete one of them.
13405
13406 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
13407 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
13408
13409 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
13410 All calls deleted.
13411 (lisp_malloc): Do the work here directly.
13412
13413 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
13414
13415 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
13416 char tables.
13417
13418 2003-04-04 Kenichi Handa <handa@m17n.org>
13419
13420 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
13421 destructively change "%S" to "%s".
13422
13423 2003-04-03 Miles Bader <miles@gnu.org>
13424
13425 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
13426 always set.
13427
13428 2003-04-01 Dave Love <fx@gnu.org>
13429
13430 * xfns.c (xpm_lookup_color): Grok "opaque".
13431
13432 2003-03-31 Andrew Choi <akochoi@shaw.ca>
13433
13434 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
13435 parent window ID.
13436
13437 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
13438
13439 * macterm.h (struct mac_output): Define x_pixels_diff and
13440 y_pixels_diff.
13441
13442 2003-03-31 Juanma Barranquero <lektu@terra.es>
13443
13444 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
13445 blockinput.h and files included from it.
13446
13447 2003-03-31 Kim F. Storm <storm@cua.dk>
13448
13449 The following changes consolidates the common code related to
13450 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
13451 files into frame.c.
13452
13453 * frame.c: Include blockinput.h.
13454 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
13455 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
13456 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
13457 related vars here.
13458 (struct frame_parm_table, frame_parms): New table for describing
13459 frame parameters and their associated Q-variable.
13460 The order of the parameters corresponds to the sequence of the
13461 frame_parm_handlers table in redisplay_interface.
13462 (x_fullscreen_move, x_set_frame_parameters)
13463 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
13464 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
13465 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13466 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
13467 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
13468 Generic functions for processing of frame parameters.
13469 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
13470 (display_x_get_resource, x_get_resource_string): Functions for
13471 generic access to X resources.
13472 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13473 (x_default_parameter, Fx_parse_geometry): Functions for generic
13474 access to frame parameters.
13475 (x_figure_window_size): Generic calculation of frame size.
13476 Fixed to add space needed for tool bar. Also setup size_hint_flags.
13477 (syms_of_frame): Intern and staticpro frame parameter variables.
13478 Defvar_lisp Vx_resource_class and Vx_resource_name here.
13479 Defsubr Sx_get_resource and Sx_parse_geometry.
13480
13481 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
13482 parameter related vars defined in frame.c.
13483 (EMACS_CLASS): Define here.
13484 (enum FULLSCREEN_*): Define here.
13485 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
13486 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
13487 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
13488 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
13489 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
13490 (x_set_visibility, x_set_autoraise, x_set_autolower)
13491 (x_set_unsplittable, x_set_vertical_scroll_bars)
13492 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
13493 (x_figure_window_size): Add prototypes.
13494
13495 * dispextern.h (frame_parm_handler): New typedef.
13496 (struct redisplay_interface): New member frame_parm_handlers.
13497 (enum resource_types): Move declaration here.
13498 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
13499 (x_default_parameter): Add prototypes.
13500
13501 * window.c: Remove extern decl for frame parameter vars.
13502 (change_window_heights): New generic function;
13503 replaces x_change_window_heights. All users changed.
13504
13505 * window.h (change_window_heights): Add prototype.
13506
13507 * xfaces.c: Remove extern decl for frame parameter vars.
13508
13509 * xterm.h (EMACS_CLASS): Remove. Use generic define.
13510 (struct w32_display_info): Fix type of xrdb member.
13511 (enum FULLSCREEN_*): Remove.
13512 Remove prototypes for generic functions (in frame.h).
13513
13514 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13515 parameters now defined in frame.h and frame.c.
13516 (Vx_resource_name): Remove. Use generic var.
13517 (enum x_frame_parms): Remove (bogus, unused enum).
13518 (check_x_display_info): Make non-static (for frame.c).
13519 (struct x_frame_parm_table, x_frame_parms): Remove.
13520 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13521 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13522 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13523 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13524 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13525 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13526 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13527 Remove. Use generic functions instead.
13528 (enum resource_types): Remove.
13529 (x_set_scroll_bar_default_width): New global function (for frame.c).
13530 (Fx_create_frame): Depend on x_figure_window_size to add space for
13531 toolbar and setup size_hint_flags.
13532 (x_frame_parm_handlers): New table for redisplay_interface.
13533 (syms_of_xfns): Don't intern/staticpro removed vars.
13534
13535 * xterm.c: Remove unnecessary extern declarations.
13536 (x_fullscreen_adjust): Remove. Use generic instead.
13537 (x_redisplay_interface): Add x_frame_parm_handlers member.
13538
13539 * w32gui.h (XrmDatabase): New (dummy) typedef.
13540
13541 * w32term.h (EMACS_CLASS): Remove. Use generic define.
13542 (struct w32_display_info): Fix type of xrdb member.
13543 (enum FULLSCREEN_*): Remove.
13544 (x_fullscreen_adjust): Remove prototype.
13545
13546 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13547 parameters now defined in frame.h and frame.c.
13548 (Vx_resource_name): Remove. Use generic var.
13549 (enum x_frame_parms): Remove (bogus, unused enum).
13550 (check_x_display_info): Make non-static (for frame.c).
13551 (struct x_frame_parm_table, x_frame_parms): Remove.
13552 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13553 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13554 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13555 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13556 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13557 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13558 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13559 Remove. Use generic functions instead.
13560 (enum resource_types): Remove.
13561 (x_set_scroll_bar_default_width): New global function (for frame.c).
13562 (Fx_create_frame): Depend on x_figure_window_size to add space for
13563 toolbar and setup size_hint_flags.
13564 (w32_frame_parm_handlers): New table for redisplay_interface.
13565 (syms_of_w32fns): Don't intern/staticpro removed vars.
13566
13567 * w32term.c: Remove unnecessary extern declarations.
13568 (x_fullscreen_adjust): Remove. Use generic instead.
13569 (x_redisplay_interface): Add w32_frame_parm_handlers member.
13570
13571 * w32reg.c (x_get_string_resource): Use XrmDatabase.
13572
13573 * macgui.h (XrmDatabase): New (dummy) typedef.
13574
13575 * macterm.h (EMACS_CLASS): Remove.
13576 (struct mac_display_info): Add xrdb member.
13577 (struct mac_output): Add want_fullscreen member.
13578
13579 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
13580 parameters now defined in frame.h and frame.c.
13581 (Vx_resource_name): Remove. Use generic var.
13582 (check_x_display_info): Make non-static (for frame.c).
13583 (struct x_frame_parm_table, x_frame_parms): Remove.
13584 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
13585 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
13586 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
13587 (x_change_window_heights, x_set_autoraise, x_set_autolower)
13588 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
13589 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
13590 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
13591 Remove. Use generic functions instead.
13592 (enum resource_types): Remove.
13593 (x_set_scroll_bar_default_width): New global function (for frame.c).
13594 (mac_frame_parm_handlers): New table for redisplay_interface.
13595 (syms_of_macfns): Don't intern/staticpro removed vars.
13596
13597 * macterm.c: Remove unnecessary extern declarations.
13598 (x_redisplay_interface): Add mac_frame_parm_handlers member.
13599
13600 * Makefile.in (frame.o): Add dependency on blockinput.h and files
13601 included from it (atimer.h and systime.h).
13602
13603 2003-03-30 Andreas Schwab <schwab@suse.de>
13604
13605 * xdisp.c (x_insert_glyphs): Fix swapped width and height
13606 parameters for shift_glyphs_for_insert.
13607
13608 * macterm.c (x_redisplay_interface): Add missing entry for
13609 draw_vertical_window_border.
13610
13611 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13612
13613 * fileio.c (Fexpand_file_name): In the no-handler case, after
13614 expanding, look again for a handler and invoke it. This is needed
13615 for filenames like "/foo/../user@host:/bar/../baz" -- the first
13616 expansion produces "/user@host:/bar/../baz" which needs to be
13617 expanded again for the finame result "/user@host:/baz".
13618
13619 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13620
13621 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
13622 of area to be redrawn for better performance.
13623
13624 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
13625
13626 * xterm.c (take_vertical_position_into_account): Remove.
13627 (xt_action_hook): Call set_vertical_scroll_bar if needed.
13628 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
13629 (xm_scroll_callback, x_create_toolkit_scroll_bar)
13630 (x_set_toolkit_scroll_bar_thumb): Simplify.
13631 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
13632 (XTread_socket): Remove unused var.
13633 (x_make_frame_invisible): Replace goto with else.
13634
13635 * xdisp.c (set_vertical_scroll_bar): New fun.
13636 (redisplay_window): Use it.
13637
13638 2003-03-26 Richard M. Stallman <rms@gnu.org>
13639
13640 * xdisp.c (update_tool_bar): Recompute tool bar if
13641 update_mode_lines is set. Set w->update_mode_line
13642 only if the tool bar contents actually change.
13643 (update_menu_bar): Undo previous change.
13644
13645 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13646
13647 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
13648 (xg_frame_set_char_size): Calculate scroll bar width before frame
13649 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
13650 (xg_separator_p): Check for all documented separator types.
13651 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
13652 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
13653
13654 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
13655 so tool bar gets updated.
13656
13657 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
13658
13659 * data.c (store_symval_forwarding): Re-instate part of the code
13660 that was deleted with too much enthusiasm.
13661
13662 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
13663
13664 * data.c (store_symval_forwarding): Delete special read-only
13665 hack for type == -1, since we now use ->constant instead.
13666 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
13667
13668 * buffer.c (overlays_in): Declare static.
13669 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
13670 `constant' field rather than the variable's `type' field.
13671
13672 2003-03-24 Andrew Choi <akochoi@shaw.ca>
13673
13674 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
13675
13676 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
13677
13678 * fns.c [MAC_OSX]: Do not redefine vector.
13679
13680 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
13681
13682 * macgui.h: Remove definition of No_Cursor.
13683
13684 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
13685
13686 * xdisp.c: Define No_Cursor.
13687 (x_write_glyphs, notice_overwritten_cursor)
13688 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
13689 (note_mouse_highlight): Remove Mac-specific code.
13690 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
13691
13692 2003-03-24 John Paul Wallington <jpw@gnu.org>
13693
13694 * xdisp.c (redisplay_window): If mini window's buffer is not
13695 empty, then redisplay it like other windows.
13696
13697 2003-03-23 Kim F. Storm <storm@cua.dk>
13698
13699 * w32term.c (w32_draw_window_cursor): Fix last change.
13700
13701 2003-03-23 Kenichi Handa <handa@m17n.org>
13702
13703 * alloc.c (make_string_from_bytes, make_specified_string):
13704 Add `const' for the arg CONTENTS.
13705
13706 * lisp.h (make_string_from_bytes, make_specified_string):
13707 Prototypes adjusted.
13708
13709 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13710
13711 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
13712
13713 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
13714 (XG_SB_RANGE): New define.
13715
13716 * gtkutil.c (xg_fixed_handle_expose): New function.
13717 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
13718 expose events.
13719 (xg_update_scrollbar_pos): Take two more arguments, left and width
13720 of scroll bar including borders.
13721 Clear left and right part outside scroll bar separately as some
13722 themes have bars that are not an even number of pixels.
13723 Don't set reallocate_redraws, don't call
13724 gdk_window_process_all_updates.
13725 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
13726 so no need to change it. Calculate size and value with XG_SB_RANGE.
13727
13728 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
13729 Pass left and width of scroll bar including borders to
13730 xg_update_scrollbar_pos.
13731
13732 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
13733
13734 * Makefile.in: Make sure space precedes end-of-line backslashes.
13735
13736 2003-03-22 Kim F. Storm <storm@cua.dk>
13737
13738 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
13739 Add generic versions here. Remove system specific versions
13740 defined elsewhere.
13741
13742 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
13743 Add prototypes.
13744
13745 * xterm.h (STORE_NATIVE_RECT): New macro.
13746
13747 2003-03-21 Kim F. Storm <storm@cua.dk>
13748
13749 * xdisp.c (get_glyph_string_clip_rect):
13750 Use FRAME_INTERNAL_BORDER_WIDTH.
13751
13752 * dispextern.h (struct redisplay_interface): Add active_p
13753 argument to draw_window_cursor member. All uses changed.
13754
13755 2003-03-21 Kim F. Storm <storm@cua.dk>
13756
13757 The following changes consolidate code related to writing and
13758 inserting glyphs, exposing frame, the tool bar, the mouse face,
13759 the output cursor, and help echo from xterm.c, w32term.c and
13760 macterm.c into xdisp.c. It also generalizes the use of the
13761 window_part enum instead of using numeric values throughout.
13762
13763 * xdisp.c: Consolidate gui-independent code here.
13764 Include keymap.h.
13765 (Qhelp_echo): Import.
13766 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
13767 (help_echo_string, help_echo_window, help_echo_object)
13768 (previous_help_echo_string, help_echo_pos): Declare here.
13769 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
13770 (estimate_mode_line_height): Define here. Handle windowing
13771 systems directly (without using estimate_mode_line_height_hook).
13772 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
13773 (update_window_cursor, update_cursor_in_window_tree)
13774 (fast_find_position, fast_find_string_pos)
13775 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
13776 (expose_area, expose_line, expose_overlaps, expose_window)
13777 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
13778 declared static as they are only used locally in xdisp.c.
13779 (draw_glyphs): Rename from x_draw_glyphs and make static.
13780 (tool_bar_item_info, notice_overwritten_cursor): Make static.
13781 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13782 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
13783 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
13784 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13785 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
13786 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
13787 (note_mouse_highlight, x_clear_window_mouse_face)
13788 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
13789 (x_intersect_rectangles): New generic functions for use by xdisp.c
13790 and GUI front-ends.
13791 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
13792 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
13793
13794 * dispextern.h (Display_Info): Generic typedef for *_display_info.
13795 (NativeRectangle): Generic typedef for rectangle type.
13796 (enum window_part): Move here from window.c.
13797 (struct redisplay_interface): New members flush_display_optional,
13798 define_frame_cursor, clear_frame_area, draw_window_cursor,
13799 draw_vertical_window_border, shift_glyphs_for_insert.
13800 Rename member clear_mouse_face to clear_window_mouse_face.
13801 (estimate_mode_line_height_hook): Remove hook.
13802 (auto_raise_tool_bar_buttons_p): Don't declare extern.
13803 (tool_bar_item_info): Remove prototype.
13804 (help_echo_string, help_echo_window, help_echo_object)
13805 (previous_help_echo_string, help_echo_pos)
13806 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
13807 (x_stretch_cursor_p, output_cursor): Declare extern.
13808 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
13809 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
13810 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
13811 (display_and_set_cursor, set_output_cursor, x_cursor_to)
13812 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
13813 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
13814 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
13815 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
13816 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
13817 Add prototypes.
13818 (mode_line_string, marginal_area_string): Fix prototypes.
13819
13820 * window.c (enum window_part): Move to dispextern.h.
13821 (coordinates_in_window): Use enum window_part member names
13822 instead of numbers to describe return value.
13823 (struct check_window_data): Change part member to window_part.
13824 (check_window_containing): Return window_part unaltered.
13825 (window_from_coordinates): Change part arg from int to enum
13826 window_part. Allow part arg to be null. All users changed.
13827
13828 * window.h (window_from_coordinates): Fix prototype.
13829
13830 * term.c (estimate_mode_line_height): Move to xdisp.c.
13831
13832 * keyboard.c (make_lispy_event): Use enum window_part.
13833
13834 * dispnew.c (mode_line_string, marginal_area_string): Use enum
13835 window_part instead of int in arg list. Users changed.
13836
13837 * xterm.h (No_Cursor): Declare as None for X.
13838 (struct mac_output): Replace member cross_cursor by hand_cursor.
13839
13840 * xterm.c: Remove consolidated defines and code.
13841 (BETWEEN): Remove unused macro.
13842 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
13843 (x_define_frame_cursor, x_clear_frame_area)
13844 (x_draw_window_cursor): New X-specific functions for RIF.
13845 (x_redisplay_interface): Add new members.
13846
13847 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
13848
13849 * w32term.h (struct w32_output): Remove cross_cursor member.
13850
13851 * w32term.c: Remove consolidated defines and code.
13852 (BETWEEN): Remove unused macro.
13853 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
13854 (w32_define_frame_cursor, w32_clear_frame_area)
13855 (w32_draw_window_cursor): New W32-specific functions for RIF.
13856 (w32_redisplay_interface): Add new members.
13857
13858 * w32gui.h (No_Cursor): Define as 0 for W32.
13859 (XRectangle): Add X compatible rectangle type.
13860 (NativeRectangle): Declare as RECT for W32.
13861 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13862
13863 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
13864
13865 * w32console.c: Remove consolidated defines and code.
13866
13867 * msdos.h (Display_Info): Add generic typedef.
13868
13869 * msdos.c: Remove consolidated defines and code.
13870 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
13871
13872 * macterm.h (struct mac_output): Replace member cross_cursor by
13873 hand_cursor.
13874 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
13875
13876 * macterm.c: Remove consolidated defines and code.
13877 (BETWEEN): Remove unused macro.
13878 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
13879 (mac_define_frame_cursor, mac_clear_frame_area)
13880 (mac_draw_window_cursor): New Mac-specific functions for RIF.
13881 (x_redisplay_interface): Add new members.
13882
13883 * macgui.h (No_Cursor): Define as 0 for Mac.
13884 (XRectangle): Add X compatible rectangle type.
13885 (NativeRectangle): Declare as Rect for Mac.
13886 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
13887
13888 * macfns.c (x_set_mouse_color): Setup hand_cursor.
13889 (x_set_cursor_color): Use x_display_and_set_cursor.
13890
13891 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
13892 included from it. Add dependency on keymap.h.
13893
13894 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
13895
13896 2003-03-21 Kenichi Handa <handa@m17n.org>
13897
13898 * fileio.c (Fexpand_file_name): Fix previous change.
13899
13900 2003-03-19 Kenichi Handa <handa@m17n.org>
13901
13902 * fileio.c (Ffile_name_directory): Reconstruct file name by
13903 make_specified_string.
13904 (Ffile_name_nondirectory, Ffile_name_as_directory)
13905 (Fdirectory_file_name, Fexpand_file_name)
13906 (Fsubstitute_in_file_name): Likewise.
13907 (Fread_file_name): Compare decoded homedir with DIR and
13908 DEFAULT_FILENAME.
13909
13910 * alloc.c (make_specified_string): If NCHARS is negative, count
13911 the number of characters.
13912
13913 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13914
13915 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
13916 all widgets.
13917
13918 * gtkutil.h: Removed xg_ignore_next_thumb.
13919
13920 2003-03-18 Kenichi Handa <handa@m17n.org>
13921
13922 * coding.c (Vchar_coding_system_table): Remove this variable.
13923 (Vcoding_system_safe_chars): New variable.
13924 (intersection): Remove this function.
13925 (find_safe_codings): Don't use Vchar_coding_system_table, but try
13926 all codings in SAFE_CODINGS.
13927 (Ffind_coding_systems_region_internal): Adjust for the change of
13928 find_safe_codings. Get generic coding systems from
13929 Vcoding_system_safe_chars.
13930 (Fdefine_coding_system_internal): New function.
13931 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
13932 Initialize and staticpro Vcoding_system_safe_chars.
13933
13934 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13935
13936 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
13937 equal old values before updating.
13938
13939 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
13940
13941 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
13942
13943 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13944
13945 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
13946 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
13947 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
13948 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
13949 (xg_create_scroll_bar): Pass bar to button event callback.
13950 (xg_find_top_left_in_fixed): New function.
13951 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
13952 whole scroll bar area. Get old position with
13953 xg_find_top_left_in_fixed, calculate and only clear needed areas.
13954 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
13955 dragging is in progress. Calculate whole as for Motif.
13956 Remove code that saved last values. Call gtk_range functions to
13957 set scroll bar sizes.
13958
13959 * gtkutil.h: Removed xg_ignore_next_thumb.
13960
13961 2003-03-17 Juanma Barranquero <lektu@terra.es>
13962
13963 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
13964 and files included from it.
13965
13966 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
13967
13968 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
13969 multiple occurrences of the same keymap under different prefixes.
13970 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
13971
13972 2003-03-16 Jason Rumney <jasonr@gnu.org>
13973
13974 * w32gui.h: Use HDC for Display.
13975
13976 * w32term.c (w32_encode_char): Prevent double-byte chars from
13977 crashing Emacs.
13978
13979 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
13980 as binary.
13981
13982 2003-03-16 Juanma Barranquero <lektu@terra.es>
13983
13984 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
13985
13986 2003-03-16 Kim F. Storm <storm@cua.dk>
13987
13988 The following changes consolidate some of the gui-independent
13989 parts of the processing and drawing of "glyph strings" from
13990 xterm.c, w32term.c, and macterm.c into xdisp.c.
13991
13992 * dispextern.h (struct glyph): Reduce face_id member from 22 to
13993 21 bits (this reduces number of faces from 4M to 2M).
13994 Replace W32 specific w32_font_type member (2 bits) by generic
13995 font_type member (3 bits) for portability.
13996 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
13997 (enum draw_glyphs_face): Define here.
13998 (struct glyph_string): Define here. Merge W32 and X versions.
13999 (struct redisplay_interface): New members per_char_metric,
14000 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
14001 (VCENTER_BASELINE_OFFSET): Define here.
14002 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
14003 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
14004
14005 * xdisp.c: Consolidate gui-independent "glyph string" code here.
14006 (dump_glyph_string): Moved here.
14007 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
14008 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
14009 (fill_composite_glyph_string, fill_glyph_string)
14010 (fill_image_glyph_string, fill_stretch_glyph_string)
14011 (left_overwritten, left_overwriting, right_overwritten)
14012 (right_overwriting, get_char_face_and_encoding)
14013 (set_glyph_string_background_width, compute_overhangs_and_x)
14014 (append_glyph, append_composite_glyph, produce_image_glyph)
14015 (take_vertical_position_into_account, append_stretch_glyph)
14016 (produce_stretch_glyph): New generic functions (based on X version).
14017 Call platform specific functions through rif.
14018 (INIT_GLYPH_STRING): New macro, hides W32 details.
14019 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
14020 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
14021 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
14022 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
14023 (notice_overwritten_cursor):
14024 Generic functions exported to platform modules. Users changed.
14025
14026 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
14027 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
14028 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
14029 New macros for consolidated code.
14030
14031 * xterm.c: Remove consolidated defines and code.
14032 (x_per_char_metric, x_encode_char)
14033 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
14034 (x_redisplay_interface): Add new members.
14035
14036 * w32gui.h (Display): Add dummy typedef for consolidation.
14037 (XChar2b): Define alias for wchar_t for consolidation.
14038 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
14039
14040 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
14041 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
14042 New macros for consolidation.
14043
14044 * w32term.c: Remove consolidated defines and code.
14045 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
14046 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
14047 (w32_per_char_metric): Change font_type arg to int for RIF.
14048 (w32_encode_char): Return int according to RIF requirements.
14049 (w32_compute_glyph_string_overhangs): Adapt to RIF.
14050 (w32_get_glyph_overhangs): New function for RIF. Uses generic
14051 x_get_glyph_overhangs.
14052 (w32_redisplay_interface): Add new members.
14053
14054 * macgui.h (XChar2b): Move typedef here for consolidation.
14055 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
14056
14057 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
14058 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
14059 consolidation.
14060
14061 * macterm.c: Remove consolidated defines and code.
14062 (mac_per_char_metric): New function for RIF.
14063 (mac_encode_char): Adapt to new RIF requirements.
14064 (mac_compute_glyph_string_overhangs): Adapt for RIF.
14065 (x_redisplay_interface): Add new members.
14066
14067 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
14068
14069 * keymap.c (Vmenu_events): New var.
14070 (syms_of_keymap): Initialize it.
14071 (where_is_internal): Check more carefully what is a menu event.
14072
14073 2003-03-14 Richard M. Stallman <rms@gnu.org>
14074
14075 * lread.c (read1): After #!, exit loop on eof.
14076
14077 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14078
14079 * gtkutil.h: Add declaration for xg_frame_cleared.
14080
14081 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
14082
14083 * gtkutil.c (struct xg_last_sb_pos): New structure.
14084 (handle_fixed_child): New function.
14085 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
14086 and force a redraw on them.
14087 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
14088 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
14089 so we can avoid unneeded redraws.
14090 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
14091 and force a redraw on the scroll bar.
14092 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
14093 if xg_last_sb_pos shows the positions are up to date.
14094 (xg_frame_cleared): New function.
14095
14096 2003-03-13 Kenichi Handa <handa@m17n.org>
14097
14098 * coding.c (Fdetect_coding_region): Fix docstring.
14099 (Fdetect_coding_string): Fix docstring.
14100
14101 2003-03-13 Andreas Schwab <schwab@suse.de>
14102
14103 * gtkutil.c: Add prototype for create_menus.
14104
14105 * data.c (long_to_cons): Fix type of top.
14106
14107 * xselect.c (selection_data_to_lisp_data): Use int instead of
14108 long for an integer of size 4.
14109
14110 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
14111 (xg_tool_bar_help_callback): Likewise.
14112
14113 2003-03-12 Andreas Schwab <schwab@suse.de>
14114
14115 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
14116
14117 2003-03-12 Kim F. Storm <storm@cua.dk>
14118
14119 The following changes consolidate the fringe handling from
14120 xterm.c, w32term.c, and macterm.c into xdisp.c.
14121
14122 * xdisp.c: Consolidate fringe handling code here.
14123 (left_bits, right_bits, continued_bits, continuation_bits)
14124 (ov_bits, zv_bits): Define fringe bitmaps.
14125 (fringe_bitmaps): New array holding fringe bitmaps.
14126 (draw_fringe_bitmap): Draw a specific bitmap; call display
14127 specific drawing routine via rif->draw_fringe_bitmap.
14128 (draw_row_fringe_bitmaps): Generic replacement for
14129 x_draw_row_fringe_bitmaps; all callers changed.
14130 (compute_fringe_widths): Generic replacement for
14131 x_compute_fringe_widths; all callers changed.
14132
14133 * dispextern.h (enum fringe_bitmap_type): Define here.
14134 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
14135 (fringe_bitmaps): Declare extern.
14136 (struct redisplay_interface): New member draw_fringe_bitmap.
14137 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
14138
14139 * xterm.c: Remove generic fringe code.
14140 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14141 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14142
14143 * w32term.c: Remove generic fringe code.
14144 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
14145 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
14146
14147 * macterm.c: Remove generic fringe code.
14148 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
14149 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
14150
14151 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
14152
14153 * print.c (Fprin1_to_string): Return unibyte string if possible.
14154
14155 2003-03-09 David Kastrup <dak@gnu.org>
14156
14157 * process.c (read_process_output): We have allocated enough space
14158 for readmax and carryover, so actually use the alloted space.
14159
14160 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14161
14162 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
14163 toolkit scrollbar click.
14164
14165 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
14166 for USE_GTK.
14167 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
14168 also.
14169 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
14170 scrollbar and control is pressed, call x_scroll_bar_handle_click.
14171
14172 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
14173
14174 * gtkutil.c (xg_get_scroll_id_for_window): New function.
14175 (xg_tool_bar_item_expose_callback): New function.
14176 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
14177 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
14178 on the tool bar widget.
14179 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
14180 to expose on the tool bar item widgets.
14181
14182 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14183
14184 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
14185 struct image* when deciding to update (struct image* may have been
14186 deleted from the image cache).
14187
14188 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
14189 the event isn't for a frame (i.e. for dialogs).
14190
14191 2003-03-07 Kenichi Handa <handa@m17n.org>
14192
14193 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
14194 composition components reaches the limit, terminate composing.
14195 (COMPOSITION_OK): New macro.
14196 (detect_coding_iso2022): Use it if an escape sequence for
14197 composition is found.
14198 (coding_restore_composition): Adjust the number of composition
14199 components if it is not sane.
14200
14201 2003-03-06 Juanma Barranquero <lektu@terra.es>
14202
14203 * w32term.h (struct w32_display_info): Add xrdb member to support
14204 passing resources via -xrm on Windows.
14205
14206 * w32term.c (w32_make_rdb): New function.
14207 (w32_term_init): Use it to initialize xrdb member of w32_display_info
14208 struct. Delete leftover code.
14209
14210 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
14211 for resources passed on the command line.
14212
14213 * w32reg.c (w32_get_rdb_resource): New function.
14214 (x_get_string_resource): Use it, so resources passed with -xrm
14215 supercede the ones in the registry.
14216
14217 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14218
14219 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
14220 instead of x_top_window_to_frame.
14221
14222 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14223
14224 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
14225 when restarting Emacs.
14226
14227 2003-03-03 Richard M. Stallman <rms@gnu.org>
14228
14229 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
14230 to run kill-buffer-query-functions.
14231 (Qkill_buffer_query_functions): New var.
14232 (syms_of_buffer): Init and staticpro it.
14233
14234 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14235
14236 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
14237
14238 2003-02-25 Kim F. Storm <storm@cua.dk>
14239
14240 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
14241 If centering point failed to make whole line visible and vscroll
14242 is non-zero, disable vscroll and try centering point again.
14243
14244 * lread.c (read1): Accept `single space' syntax like (? x).
14245
14246 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14247
14248 * keyboard.c (cancel_hourglass_unwind): Surround with
14249 #ifdef HAVE_X_WINDOWS
14250
14251 2003-02-25 Kenichi Handa <handa@m17n.org>
14252
14253 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
14254 process only when "subprocesses" is defined.
14255
14256 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
14257
14258 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
14259
14260 2003-02-24 Juanma Barranquero <lektu@terra.es>
14261
14262 * callint.c (fix_command): Declare as static void and move before
14263 Fcall_interactively.
14264
14265 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
14266 (syms_of_xdisp): Don't initialize Qwhen.
14267
14268 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14269
14270 * keyboard.c (cancel_hourglass_unwind): New function.
14271 (command_loop_1): Cancel hourglass with unwind-protect.
14272
14273 2003-02-23 Richard M. Stallman <rms@gnu.org>
14274
14275 * callint.c (fix_command): New subroutine, from Fcall_interactively.
14276 Detect (when ... (region-beginning)) etc.
14277 (Fcall_interactively): Call fix_command.
14278 (Qif, Qwhen): New variables.
14279 (syms_of_callint): Init and staticpro them.
14280
14281 * regex.c (print_partial_compiled_pattern): Output to stderr.
14282
14283 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14284
14285 * dired.c (directory_files_internal): Don't expand directory.
14286 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
14287 instead. From Lars Hansen <larsh@math.ku.dk>.
14288
14289 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
14290
14291 * fns.c (string_to_multibyte): Remove unused var i.
14292 (Flanginfo): Fix int/Lisp_Object mixup.
14293 (void_call2): New fun.
14294 (Fmap_char_table): Use it in place of call2.
14295
14296 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
14297
14298 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
14299
14300 * keymap.c (copy_keymap_1): Make it static.
14301
14302 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
14303
14304 2003-02-22 David Ponce <david@dponce.com>
14305
14306 * lread.c (Fload): Don't check STRING_MULTIBYTE.
14307
14308 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14309
14310 * process.h: Removed subtty field from struct Lisp_Process.
14311
14312 * process.c (create_process): Remove setting of subtty.
14313 (emacs_get_tty_pgrp): New function.
14314 (Fprocess_running_child_p, process_send_signal):
14315 Call emacs_get_tty_pgrp instead of ioctl.
14316 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
14317
14318 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
14319
14320 * keymap.c (Fdefine_key): Doc fix.
14321
14322 2003-02-21 Juanma Barranquero <lektu@terra.es>
14323
14324 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
14325
14326 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
14327 POLLING_PROBLEM_IN_SELECT.
14328
14329 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
14330 Delete #undef of POLLING_PROBLEM_IN_SELECT.
14331
14332 * s/hpux10-20.h: New file.
14333
14334 * process.c (wait_reading_process_input):
14335 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
14336
14337 2003-02-20 Kenichi Handa <handa@m17n.org>
14338
14339 * fontset.c (check_fontset_name): If NAME is nil, return the
14340 default fontset.
14341 (override_font_info): New function.
14342 (Fset_fontset_font): Document that NAME nil means the default fontset.
14343 (Ffontset_info): If FONTSET is not the default fontset, merge
14344 FONTSET onto the copy of the default fontset, and work on that
14345 copy. Document that NAME nil means the default fontset.
14346 (Ffontset_font): Document that NAME nil means the default fontset.
14347
14348 * process.c (setup_process_coding_systems): If the process's
14349 in/out descriptor is -1, do nothing.
14350
14351 2003-02-19 Andreas Schwab <schwab@suse.de>
14352
14353 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
14354 Add prototypes.
14355
14356 2003-02-19 Kenichi Handa <handa@m17n.org>
14357
14358 * xfaces.c (try_alternative_families): Try all scalable fonts if
14359 Vscalable_fonts_allowed is not Qt.
14360
14361 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14362
14363 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
14364
14365 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14366
14367 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
14368 names.
14369
14370 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
14371 (sorted_font_list): Move allocation of struct font_name to
14372 x_face_list_fonts.
14373 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
14374 (Fx_list_fonts): Set maxnames to -1 to get all font names.
14375
14376 2003-02-18 Kim F. Storm <storm@cua.dk>
14377
14378 * lread.c (read1): Fix last change.
14379 "`" is not always special. Allow "?" after a character constant.
14380
14381 2003-02-18 Andrew Choi <akochoi@shaw.ca>
14382
14383 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
14384
14385 2003-02-18 Andreas Schwab <schwab@suse.de>
14386
14387 * window.c (window_scroll_pixel_based): Move outside a
14388 multi-glyph character before setting new window start.
14389
14390 * xdisp.c (in_display_vector_p): New function.
14391 * dispextern.h (in_display_vector_p): Declare.
14392
14393 2003-02-18 Kim F. Storm <storm@cua.dk>
14394
14395 * lread.c (read1): Fix and relax read syntax.
14396 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
14397 Only recognize "," after dotted-pair dot if inside backquote.
14398 Never include "`" or "," (inside backquote) in a symbol.
14399 Allow dotted-pair dot after a character constant.
14400 Allow "`" and "," (inside backquote) after a character constant.
14401
14402 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14403
14404 * gtkutil.c (xg_tool_bar_expose_callback): New function.
14405 (xg_create_tool_bar): Force style of tool bar to be horizontal with
14406 icons. Set name of tool bar to emacs-toolbar.
14407 (update_frame_tool_bar): Connect expose event to
14408 xg_tool_bar_expose_callback.
14409
14410 2003-02-17 Richard M. Stallman <rms@gnu.org>
14411
14412 * keyboard.c (this_command_key_count_reset): New variable.
14413 Initiatize to 0 where this_command_key_count is set.
14414 (read_char): Save and restore this_command_key_count_reset
14415 around input method code.
14416 (read_char): If this_command_key_count_reset, echo reread commands.
14417 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
14418
14419 2003-02-17 Kenichi Handa <handa@m17n.org>
14420
14421 * fns.c (string_to_multibyte): Always return a multibyte string.
14422
14423 2003-02-16 Jason Rumney <jasonr@gnu.org>
14424
14425 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
14426 Negative max_fonts parameter means list all.
14427
14428 2003-02-14 Dave Love <fx@gnu.org>
14429
14430 * fns.c (Flanginfo): Doc fix.
14431
14432 2003-02-13 Kim F. Storm <storm@cua.dk>
14433
14434 * lread.c (read_escape): Interpret \s as a SPACE character, except
14435 for \s-X in a character constant which still is the super modifier.
14436 (read1): Signal an `invalid read syntax' error if a character
14437 constant is immediately followed by a digit or symbol character.
14438
14439 * search.c (Fmatch_data): Doc fix. Explicitly state that
14440 match-data is undefined if last search failed.
14441
14442 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
14443 All uses changed.
14444
14445 2003-02-12 Juanma Barranquero <lektu@terra.es>
14446
14447 * eval.c (Fdefmacro): Fix typo.
14448
14449 2003-02-12 Kim F. Storm <storm@cua.dk>
14450
14451 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
14452 macro is a string, convert meta modifiers in string when copying
14453 the string into a vector.
14454
14455 2003-02-11 Kim F. Storm <storm@cua.dk>
14456
14457 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
14458
14459 2003-02-11 Kenichi Handa <handa@m17n.org>
14460
14461 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
14462
14463 2003-02-10 Kim F. Storm <storm@cua.dk>
14464
14465 * process.c: Doc fixes.
14466 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
14467
14468 2003-02-10 Kenichi Handa <handa@m17n.org>
14469
14470 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
14471
14472 * process.c (QCfilter_multibyte): New variable.
14473 (setup_process_coding_systems): New function.
14474 (Fset_process_buffer, Fset_process_filter):
14475 Call setup_process_coding_systems.
14476 (Fstart_process): Initialize the member `filter_multibyte' of
14477 struct Lisp_Process.
14478 (create_process): Call setup_process_coding_systems.
14479 (Fmake_network_process): New keyward `:filter-multibyte'.
14480 Initialize the member `filter_multibyte' of struct Lisp_Process.
14481 Call setup_process_coding_systems.
14482 (server_accept_connection): Call setup_process_coding_systems.
14483 (read_process_output): If the process has a filter, decide the
14484 multibyteness of a string to given to the filter by
14485 `filter_multibyte' member of the process. If the process doesn't
14486 have a filter and the result of conversion is unibyte, use
14487 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
14488 multibyte form.
14489 (Fset_process_coding_system): Call setup_process_coding_systems.
14490 (Fset_process_filter_multibyte): New function.
14491 (Fprocess_filter_multibyte_p): New function.
14492 (syms_of_process): Intern and staticpro QCfilter_multibyte.
14493 Defsubr Sset_process_filter_multibyte and
14494 Sprocess_filter_multibyte_p.
14495
14496 * process.h (struct Lisp_Process): New member filter_multibyte.
14497
14498 * lisp.h (setup_process_coding_systems): Add prototype.
14499
14500 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
14501 process, update coding systems for the process.
14502
14503 2003-02-09 Kenichi Handa <handa@m17n.org>
14504
14505 * fns.c (string_to_multibyte): New function.
14506 (Fstring_to_multibyte): New function.
14507 (syms_of_fns): Defsubr it.
14508
14509 2003-02-08 Andreas Schwab <schwab@suse.de>
14510
14511 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
14512 instead of the substitution.
14513
14514 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14515
14516 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
14517
14518 * xmenu.c (menu_position_func): Adjust menu popup position so that
14519 the menu is fully visible.
14520
14521 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14522
14523 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
14524 (x_make_frame_invisible, x_wm_set_icon_position):
14525 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
14526
14527 * xfns.c (x_set_name, x_set_title): Ditto.
14528
14529 2003-02-04 Richard M. Stallman <rms@gnu.org>
14530
14531 * keyboard.c (echo_now): Update before_command_echo_length.
14532 (Freset_this_command_lengths): Reset this_command_key_count etc.
14533 immediately rather than arranging to do it later.
14534 (before_command_key_count_1, before_command_echo_length_1)
14535 (before_command_restore_flag): Vars deleted.
14536 (add_command_key): Don't handle before_command_restore_flag.
14537 (read_char, record_menu_key): Don't update before_command_key_count or
14538 before_command_echo_length.
14539 (read_char): Don't handle before_command_restore_flag.
14540
14541 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
14542 in direct-output clauses if it wouldn't be called in the ordinary case.
14543
14544 2003-02-04 Kim F. Storm <storm@cua.dk>
14545
14546 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
14547
14548 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14549
14550 * gtkutil.c (remove_from_container): Copying list is not needed.
14551 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
14552 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
14553 on list returned from gtk_container_get_children to avoid memory leak.
14554
14555 2003-02-01 Jason Rumney <jasonr@gnu.org>
14556
14557 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
14558 local malloc.
14559 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
14560 definitions in xpm.h.
14561 (init_xpm_functions): New function.
14562 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
14563 (init_external_image_libraries): Try to load libXpm.dll.
14564
14565 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
14566 timestamp.
14567
14568 2003-01-31 Dave Love <fx@gnu.org>
14569
14570 * syntax.c (Fskip_chars_forward)
14571 (open-paren-in-column-0-is-defun-start): Doc fix.
14572
14573 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
14574
14575 * fileio.c: Support // at start of name for Cygwin (just added proper
14576 preprocessor tests).
14577
14578 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
14579
14580 * Makefile.in: Use @EXEEXT@ for Cygwin.
14581
14582 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
14583
14584 * s/cygwin.h: Added for Cygwin port.
14585
14586 2003-01-31 Juanma Barranquero <lektu@terra.es>
14587
14588 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
14589 when including gif_lib.h.
14590 (init_gif_functions, init_tiff_functions): New functions.
14591 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
14592 Windows. Disable color table lookups. Call library functions
14593 through pointers determined at runtime.
14594 (init_external_image_libraries): Try to load libungif.dll and
14595 libtiff.dll.
14596
14597 2003-01-31 Kenichi Handa <handa@m17n.org>
14598
14599 * xdisp.c (SKIP_GLYPHS): New macro.
14600 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
14601
14602 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14603
14604 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
14605
14606 2003-01-30 Dave Love <fx@gnu.org>
14607
14608 * alloc.c (Vgc_elapsed, gcs_done): New variables.
14609 (Fgarbage_collect): Use them.
14610 (init_alloc, syms_of_alloc): Set them up.
14611
14612 2003-01-30 Juanma Barranquero <lektu@terra.es>
14613
14614 * w32fns.c (init_external_image_libraries): Add missing operator.
14615
14616 2003-01-29 Jason Rumney <jasonr@gnu.org>
14617
14618 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
14619 an alternative name for jpeg.dll.
14620
14621 2003-01-29 Kenichi Handa <handa@m17n.org>
14622
14623 * xdisp.c (set_cursor_from_row): Pay attention to string display
14624 properties.
14625
14626 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
14627
14628 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
14629 <escape>.
14630 (keycode_to_xkeysym_table): Reformat and add more comments.
14631 (XTread_socket): Drop special case for backspace.
14632
14633 2003-01-28 Andrew Choi <akochoi@shaw.ca>
14634
14635 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
14636 values in old-style RGB specs.
14637
14638 2003-01-27 Juanma Barranquero <lektu@terra.es>
14639
14640 * w32fns.c (init_external_image_libraries): Try alternate names for the
14641 jpeg dll.
14642
14643 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14644
14645 * gtkutil.c (create_dialog, xg_separator_p)
14646 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
14647 before calling strcmp or strlen.
14648
14649 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14650
14651 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
14652 and handle image load failure.
14653
14654 2003-01-26 Jason Rumney <jasonr@gnu.org>
14655
14656 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
14657 New functions.
14658 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
14659 Disable color table lookups. Call jpeg library functions
14660 through pointers determined at runtime.
14661 (init_external_image_libraries): Try to load jpeg.dll.
14662
14663 2003-01-25 Richard M. Stallman <rms@gnu.org>
14664
14665 * lisp.h: Declare format2 instead of format1.
14666
14667 * fileio.c (barf_or_query_if_file_exists):
14668 Call format2 instead of format1.
14669
14670 * editfns.c (format2): New function, replaces format1
14671 but takes exactly two Lisp Objects as format args.
14672
14673 * buffer.c (Fkill_buffer): Call format2 instead of format1.
14674
14675 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14676
14677 * xterm.h: Change to return value of x_dispatch_event to int.
14678
14679 * xterm.c (x_filter_event): New function.
14680 (event_handler_gdk, XTread_socket): Call x_filter_event.
14681 (x_dispatch_event): Change to return value of finish.
14682 (event_handler_gdk): Use return value from x_dispatch_event.
14683
14684 * xfns.c (x_window): Call create_frame_xic for GTK version to
14685 initialize input methods.
14686
14687 * gtkutil.h: Add (void) prototypes.
14688
14689 * gtkutil.c (create_menus): Remove code that puts the help menu to
14690 the right.
14691
14692 2003-01-25 Jason Rumney <jasonr@gnu.org>
14693
14694 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
14695 [HAVE_PNG]: Sync with xfns.c version.
14696 (png_load): Adjust colors for Windows. Use Windows
14697 bitmaps. Disable color table lookups.
14698 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
14699 (init_png_functions): New function.
14700 (png_read_from_memory, png_load): Call png library functions
14701 through pointers determined at runtime.
14702 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
14703 (init_external_image_libraries): New function.
14704 (init_xfns): Call it.
14705
14706 2003-01-24 Andreas Schwab <schwab@suse.de>
14707
14708 * minibuf.c (Fminibuffer_message): Verify type of parameter.
14709
14710 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14711
14712 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
14713 of static initializer.
14714
14715 2003-01-24 Dave Love <fx@gnu.org>
14716
14717 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
14718 architectures.
14719
14720 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
14721 Use __alignof__.
14722
14723 2003-01-24 Kenichi Handa <handa@m17n.org>
14724
14725 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
14726 It it is nonzero, don't pretend that an invisible area doesn't exist.
14727 (command_loop_1): Call adjust_point_for_property with proper
14728 second arg.
14729
14730 2003-01-22 Jason Rumney <jasonr@gnu.org>
14731
14732 Sync changes with xterm.c and xfns.c.
14733
14734 * w32term.c (x_draw_glyph_string_foreground)
14735 (x_draw_composite_glyph_string_foreground): Implement overstriking.
14736
14737 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
14738 phys_cursor's hpos is overwritten. This is still not completely
14739 correct, as it doesn't really make sense to use hpos at all to
14740 get the cursor glyph (as that is relative to the width of the
14741 characters on the line, which may have changed during the update).
14742
14743 * w32term.c (notice_overwritten_cursor): Handle the special case
14744 of the cursor being in the first blank non-text line at the
14745 end of a window.
14746
14747 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
14748 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
14749 Compute from the x position returned by x_draw_glyphs.
14750
14751 (x_display_and_set_cursor): Don't set phys_cursor_width here,
14752 except for NO_CURSOR and system caret, to make phys_cursor_width
14753 contain what its name suggests.
14754 (notice_overwritten_cursor): Consider the cursor image erased if
14755 the output area intersects the cursor image in y-direction.
14756
14757 * w32term.c (note_mode_line_or_margin_highlight): Rename from
14758 note_mode_line_highlight and extend.
14759
14760 * w32term.c (last_window): New variable.
14761 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
14762 (note_mouse_movement): Remove reimplemented code in #if 0.
14763
14764 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
14765 not update_mode_lines, and always set it to 1.
14766
14767 2003-01-21 Jason Rumney <jasonr@gnu.org>
14768
14769 * w32fns.c (IDC_HAND): Define it if system headers don't.
14770
14771 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
14772
14773 * w32term.h (struct w32_output): New member hand_cursor.
14774 (WM_EMACS_SETCURSOR): New message definition.
14775
14776 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
14777 function w32_define_cursor.
14778 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
14779 position, change member name output_data.x to output_data.w32 and
14780 add function w32_define_cursor.
14781 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
14782 and change member name output_data.x to output_data.w32.
14783 (w32_initialize_display_info):
14784 Setup dpyinfo->vertical_scroll_bar_cursor.
14785
14786 * w32fns.c (Vx_hand_shape): New variable.
14787 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
14788 WM_EMACS_SETCURSOR.
14789 (x-create-frame): Setup Cursor types.
14790
14791 2003-01-21 David Ponce <david@dponce.com>
14792
14793 * w32term.c (w32_encode_char): For DIM=1 charset, set
14794 ccl->reg[2] to -1 before calling ccl_driver.
14795 (Sync. with xterm.c x_encode_char change by Kenichi Handa
14796 <handa@m17n.org> on 2002-09-30.)
14797 (w32_draw_relief_rect): Declare all args.
14798 (w32_define_cursor): New.
14799
14800 * w32fns.c (w32_load_cursor): New function.
14801 (w32_init_class): Use it.
14802 (x_put_x_image): Declare all args.
14803
14804 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
14805
14806 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
14807
14808 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14809
14810 * gtkutil.c: Must include stdio.h before termhooks.h
14811
14812 2003-01-21 Dave Love <fx@gnu.org>
14813
14814 * alloc.c (Fgc_status): Print zombie list.
14815 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14816 Fix assignment of zombies.
14817 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
14818 Don't take car of non-cons.
14819
14820 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14821
14822 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
14823
14824 2003-01-20 David Ponce <david@dponce.com>
14825
14826 * w32menu.c (digest_single_submenu): Declare all args.
14827
14828 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
14829 changes in xmenu.c:
14830
14831 (parse_single_submenu): Use individual keymap's prompt
14832 string as pane name, if there is one.
14833 (set_frame_menubar): Save menu_items_n_panes from each call to
14834 parse_single_submenu and use it when calling digest_single_submenu.
14835
14836 2003-01-20 Steven Tamm <steventamm@mac.com>
14837
14838 * macterm.c (XTread_socket): Check for valid, visible window
14839 before sending a scroll-wheel event.
14840
14841 2003-01-20 Richard M. Stallman <rms@gnu.org>
14842
14843 * xdisp.c (redisplay_window): If mini window's buffer is not
14844 a minibuffer, then redisplay it like other windows.
14845
14846 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14847
14848 * gtkutil.c (xg_create_frame_widgets): Check if there is an
14849 external tool bar before setting tool bar height.
14850
14851 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14852
14853 * xterm.c (handle_one_xevent): Surround popup_activated
14854 with #ifdef:s for non-toolkit version.
14855
14856 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
14857 (gtkutil.o): New file.
14858 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
14859 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
14860
14861 * gtkutil.c: New file for GTK version.
14862
14863 * gtkutil.h: New file for GTK version.
14864
14865 * xterm.h: Add xt_or_gtk_widget.
14866 Include gtk files for USE_GTK.
14867 (struct x_output): Add toolbar_height.
14868 (struct x_output): Add GTK widgets and Gdk size_hints.
14869 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
14870 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
14871 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
14872
14873 * xterm.c: Include gtkutil.h for USE_GTK.
14874 (free_frame_menubar): Declare extern void for USE_GTK.
14875 (note_mouse_highlight): Check popup_activated for USE_GTK.
14876 (xt_action_hook): Don't compile if USE_GTK.
14877 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
14878 (xg_scroll_callback): New function.
14879 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
14880 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
14881 for USE_GTK.
14882 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
14883 xg_show_scroll_bar for USE_GTK.
14884 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
14885 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
14886 (event_handler_gdk): New function for USE_GTK.
14887 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
14888 (handle_one_xevent): Make sure widget is mapped before
14889 calling x_real_positions for USE_GTK.
14890 (XTread_socket): Add GTK event loop for USE_GTK.
14891 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
14892 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
14893 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
14894 (x_iconify_frame): Add code for USE_GTK.
14895 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
14896 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
14897 is in gtkutil.c.
14898 (x_term_init): Add initialization for GTK.
14899 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
14900
14901 * xmenu.c: Include gtkutil.h for USE_GTK.
14902 (Fx_popup_menu): Use current position if x and y is NIL.
14903 (single_menu_item, single_menu_item, Fx_popup_dialog):
14904 Check for USE_GTK.
14905 (popup_widget_loop): New function for USE_GTK.
14906 (x_activate_menubar): Add code for USE_GTK.
14907 (popup_activate_callback, popup_deactivate_callback)
14908 (menu_highlight_callback, menubar_selection_callback):
14909 Add USE_GTK versions.
14910 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
14911 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
14912 (free_frame_menubar): Only compile if not USE_GTK. GTK version
14913 is in gtkutil.c.
14914 (popup_selection_callback): New version for USE_GTK.
14915 (create_and_show_popup_menu): New fuction, one USE_GTK version and
14916 one USE_X_TOOLKIT version.
14917 (xmenu_show): Call create_and_show_popup_menu.
14918 (dialog_selection_callback): New version for USE_GTK.
14919 (create_and_show_dialog): New fuction, one USE_GTK version and
14920 one USE_X_TOOLKIT version.
14921 (xdialog_show): Call create_and_show_dialog.
14922
14923 * xfns.c: Include gtkutil for USE_GTK.
14924 (x_window_to_frame, x_any_window_to_frame)
14925 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
14926 (x_top_window_to_frame): Add code for USE_GTK.
14927 (x_set_background_color): Call xg_set_background_color for GTK.
14928 (x_set_menu_bar_lines): Check for USE_GTK.
14929 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
14930 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
14931 (x_window): Call xg_create_frame_widgets for USE_GTK.
14932 (Fx_create_frame): Check for USE_GTK
14933 (Fx_file_dialog): New implementation for USE_GTK.
14934
14935 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
14936 (update_menu_bar): Add check for USE_GTK.
14937 (update_tool_bar): Add check for USE_GTK and external tool bar.
14938 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
14939 (redisplay_internal): Add check for USE_GTK and popup_activated.
14940 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
14941 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
14942 (display_menu_bar): Add check for USE_GTK
14943
14944 * lisp.h (Vx_resource_name): Declare extern.
14945
14946 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
14947 for USE_GTK.
14948 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
14949
14950 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
14951 (FRAME_EXTERNAL_TOOL_BAR): New macro.
14952 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
14953
14954 * fileio.c (Fread_file_name): Add check for USE_GTK.
14955
14956 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
14957 Add check for USE_GTK.
14958
14959 * config.in: Added HAVE_GTK
14960
14961 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
14962
14963 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
14964
14965 * charset.h (Funibyte_char_to_multibyte): Export.
14966
14967 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14968
14969 * xmenu.c (mouse_position_for_popup): New function.
14970 (Fx_popup_menu): Call mouse_position_for_popup for X and
14971 mouse_position_hook for others.
14972
14973 2003-01-17 Kim F. Storm <storm@cua.dk>
14974
14975 * editfns.c (Finsert): Mention `string-make-multibyte' and
14976 `string-as-multibyte' in doc string.
14977
14978 2003-01-17 Kenichi Handa <handa@m17n.org>
14979
14980 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
14981
14982 * editfns.c (Fformat): Convert an unibyte char argument that is
14983 formatted by "%c" to multibyte if the total result must be a
14984 multibyte string.
14985
14986 2003-01-16 Kim F. Storm <storm@cua.dk>
14987
14988 * process.c (set-process-filter): Document unibyte/multibyte-ness
14989 of string argument.
14990
14991 2003-01-16 Kenichi Handa <handa@m17n.org>
14992
14993 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
14994
14995 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
14996 (re_search_2): Likewise.
14997
14998 2003-01-15 Kenichi Handa <handa@m17n.org>
14999
15000 * xdisp.c (message_dolog): Fix bug of the case that *Message*
15001 buffer is unibyte.
15002
15003 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
15004
15005 * fns.c (Fsubstring): Clarify doc string.
15006
15007 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
15008 (Fprevious_char_property_change)
15009 (Fnext_single_char_property_change)
15010 (Fprevious_single_char_property_change, Fnext_property_change)
15011 (Fnext_single_property_change, Fprevious_property_change)
15012 (Fprevious_single_property_change, Fadd_text_properties)
15013 (Fput_text_property, Fset_text_properties)
15014 (Fremove_text_properties, Fremove_list_of_text_properties)
15015 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
15016
15017 2003-01-14 Kim F. Storm <storm@cua.dk>
15018
15019 * process.h (struct Lisp_Process): New member plist replaces old
15020 member private_vars. All uses changed.
15021
15022 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
15023 (QCplist): Rename from QCvars. Change all uses.
15024 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
15025 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
15026 (syms_of_process): Intern, staticpro, defsubr these.
15027 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
15028
15029 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
15030
15031 * m/delta.h: Remove (obsolete).
15032
15033 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
15034
15035 * fileio.c (Fdelete_directory, Fdelete_file): Document the
15036 behaviour in front of symlinks.
15037 (Fdelete_file): Raise an error on directories.
15038
15039 2003-01-13 Dave Love <fx@gnu.org>
15040
15041 * fns.c (Freverse): Use QUIT.
15042
15043 2003-01-13 Richard M. Stallman <rms@gnu.org>
15044
15045 * minibuf.c (minibuffer_completion_contents):
15046 Error if point is inside prompt.
15047
15048 * keyboard.c (command_loop_1): Don't redisplay directly
15049 if there's a post-command-hook.
15050
15051 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
15052 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
15053
15054 2003-01-12 Kim F. Storm <storm@cua.dk>
15055
15056 * process.h (struct Lisp_Process): New member private_vars.
15057
15058 * process.c (QCvars): New variable.
15059 (syms_of_process): Intern and staticpro it.
15060 (Fset_process_contact): Removed function.
15061 (Fprocess_variable, Fset_process_variable): New functions.
15062 (syms_of_process): Defsubr them.
15063 (Fstart_process): Initialize private_vars plist to nil.
15064 (Fmake_network_process): New arg :vars to setup the private
15065 variables for new network process.
15066 (server_accept_connection): Copy server's private variables to
15067 client process.
15068
15069 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
15070 crashes). Code rewritten and simplified. Now directly aligns the
15071 pointer and recalculates pure_bytes_used, rather than aligning the
15072 size and adjusting the pointer.
15073
15074 2003-01-11 Kim F. Storm <storm@cua.dk>
15075
15076 * process.c (Fset_process_contact): New function.
15077 (syms_of_process): defsubr it.
15078 (make-network-process): Update doc.
15079
15080 2003-01-10 Andreas Schwab <schwab@suse.de>
15081
15082 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
15083 Reported by Berthold Gunreben <b.gunreben@web.de>.
15084
15085 2003-01-10 Dave Love <fx@gnu.org>
15086
15087 * composite.c (syms_of_composite): Make composition_hash_table weak.
15088
15089 2003-01-09 Kim F. Storm <storm@cua.dk>
15090
15091 * process.c (Fmake_network_process): Convert new port number
15092 to host byte order for `:service t' case. From Mario Lang.
15093
15094 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15095
15096 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
15097 instead of XtAppProcessEvent.
15098
15099 * xterm.c (handle_one_xevent): New function.
15100 (x_dispatch_event): New function.
15101 (XTread_socket): Call handle_one_xevent.
15102
15103 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
15104
15105 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
15106 call XQueryPointer to get coordinates.
15107 (popup_get_selection): Do not set popup_activated_flag to zero,
15108 let popup_deactivate_callback do that. Needed for Motif.
15109 Call x_dispatch_event instead of XtDispatchEvent.
15110 (xmenu_show): Calculate root coordinate from frame top/left position.
15111
15112 2003-01-08 Kim F. Storm <storm@cua.dk>
15113
15114 * process.c (server_accept_connection): Fix recording of new
15115 connection's local address in :local property of contact info.
15116 (Fmake_network_process): Record local network address for new
15117 client processes in :local property of contact info.
15118 (format-network-address): Add arg OMIT-PORT. Change callers.
15119
15120 2003-01-07 Dave Love <fx@gnu.org>
15121
15122 * Makefile.in (fns.o): Depend on coding.h.
15123
15124 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
15125
15126 * minibuf.c (Fread_variable): Doc fix.
15127
15128 * eval.c (Fuser_variable_p): Doc change. For custom variables,
15129 use the same test as for custom-variable-p.
15130
15131 2003-01-05 Richard M. Stallman <rms@gnu.org>
15132
15133 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
15134 Count LAST_LINE_MISFIT in scroll margin for end of window.
15135 Move label too_near_end before setting SCROLL_MARGIN_POS.
15136 Set LAST_LINE_MISFIT before jumping there.
15137
15138 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
15139 scroll_conservatively case. If scrolling that much doesn't change
15140 STARTP, move it down one line.
15141
15142 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
15143 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
15144
15145 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
15146 selected frame.
15147
15148 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
15149 (syms_of_keymap): Staticpro them.
15150 (Fapropos_internal): Initialize them and clear them out.
15151 Don't GCPRO them.
15152
15153 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
15154 Doc fixes.
15155
15156 * lisp.h: New misc type Lisp_Save_Value.
15157 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
15158 (XSAVE_VALUE): New macro.
15159 (struct Lisp_Save_Value): New data type.
15160 (union Lisp_Misc): Add u_save_value alternative.
15161 (make_save_value): Declare.
15162
15163 * alloc.c (make_save_value): New function.
15164
15165 * xterm.c (x_catch_errors): Save dpy using make_save_value.
15166 (x_catch_errors_unwind): Call XSync.
15167
15168 2003-01-01 Richard M. Stallman <rms@gnu.org>
15169
15170 * window.c (window_scroll_pixel_based): Partially undo last change.
15171
15172 * keyboard.c (command_loop_1): Call adjust_point_for_property
15173 in direct action cases for Qforward_char and Qbackward_char.
15174 Set already_adjusted so it won't be done twice.
15175
15176 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
15177
15178 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
15179 type definition of size_t.
15180
15181 2003-01-02 Steven Tamm <steventamm@mac.com>
15182
15183 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
15184 distinguish Carbon GUI builds from X11 builds on darwin.
15185
15186 2002-12-30 Steven Tamm <steventamm@mac.com>
15187
15188 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
15189 to default to t.
15190
15191 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
15192
15193 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
15194
15195 2002-12-28 Steven Tamm <steventamm@mac.com>
15196
15197 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
15198 allow building in a different directory than source. Uses some
15199 GNU Make extensions, but there is no other make on Mac OS X.
15200
15201 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
15202
15203 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
15204 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
15205 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
15206 (Fstring_to_number): Mention the returned value in the doc strings.
15207
15208 2002-12-23 Richard M. Stallman <rms@gnu.org>
15209
15210 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
15211 <scroll-down-aggressively>: Doc fix.
15212
15213 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
15214 string as pane name, if there is one.
15215 (set_frame_menubar): Save menu_items_n_panes from each call to
15216 parse_single_submenu and use it when calling digest_single_submenu.
15217
15218 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
15219 Don't try to make last line fully visible if it is past end of window.
15220
15221 2002-12-22 Steven Tamm <steventamm@mac.com>
15222
15223 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
15224 (mac_menu_show): Add support for hierarchical popup menus.
15225 (add_menu_item): Remove indentation support.
15226 (fill_submenu, fill_menu): Create hierarchical menus
15227 instead of using indentation.
15228
15229 2002-12-22 Richard M. Stallman <rms@gnu.org>
15230
15231 * xdisp.c (try_cursor_movement): Don't call try_window here.
15232 (redisplay_window): Never redisplay minibuffer when inactive.
15233
15234 * window.c (select_window_1): Undo 9/21 change.
15235
15236 2002-12-22 Steven Tamm <steventamm@mac.com>
15237
15238 * macterm.c (XTread_socket): Call KeyTranslate for control and
15239 meta to deal correctly shifted non-alpha characters, like C-S-5
15240 being treated like C-%. Do not look for shift key to deal
15241 with masking off control-key with mac-reverse-ctrl-meta.
15242
15243 2002-12-21 Richard M. Stallman <rms@gnu.org>
15244
15245 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
15246 If it is non-nil, run timers. Use an unwind-protect to requeue
15247 the events that were read ahead.
15248 (popup_get_selection_unwind): New subroutine.
15249 (popup_get_selection_queue): File-scope variable now holds that queue.
15250 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
15251 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
15252 Use an unwind-protect to pop down the dialog box.
15253 (xdialog_show_unwind): New subroutine implements that.
15254
15255 * xdisp.c (row_containing_pos): Change exit test using last_y.
15256 (try_window_id): Abort if row_containing_pos returns null.
15257
15258 * lread.c (load_error_handler): New function.
15259 (Fload): Handle errors in Fsubstitute_in_file_name.
15260 Don't expect Fsignal to return.
15261
15262 * eval.c: Errors and throws work right with interrupt blocking.
15263 (struct catchtag): New elt interrupt_input_blocked.
15264 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
15265 (internal_catch, Fcondition_case, internal_condition_case)
15266 (internal_condition_case_1, internal_condition_case_2): Save it.
15267 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
15268
15269 * editfns.c (Fformat): Add parens.
15270
15271 * dired.c (file_name_completion): Fix that change.
15272 Delete special quit-handling code; just use QUIT.
15273
15274 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
15275
15276 * dired.c (file_name_completion): Close directory on error
15277 just as in directory_files_internal.
15278
15279 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
15280
15281 * window.c (Fset_window_configuration): Set old_point to correct
15282 value when new_current_buffer == current_buffer.
15283
15284 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
15285
15286 Revisited my earlier fix for the following entry in etc/PROBLEMS:
15287 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15288 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15289
15290 These changes were in part based upon suggestions made by Peter
15291 'Luna' Runestig [peter@runestig.com].
15292
15293 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
15294 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
15295 (g_b_init_get_sid_identifier_authority ): Add several static
15296 global variables.
15297
15298 * w32.c (globals_of_w32): New function. Used to initialize those
15299 global variables that must always be initialized on startup even
15300 when the global variable initialized is non zero. Its primary
15301 purpose at this time is to set the global variables
15302 g_b_init_is_windows_9x, g_b_init_open_process_token,
15303 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
15304 g_b_init_get_sid_identifier_authority to 0 on startup.
15305 Called from main.
15306
15307 * w32.c (is_windows_9x): Perform initialization only if
15308 g_b_init_is_windows_9x is equal to 0. On initialization set
15309 g_b_init_is_windows_9x equal to 1.
15310
15311 * w32.c (open_process_token): Perform initialization only if
15312 g_b_init_open_process_token is equal to 0. On initialization set
15313 g_b_init_open_process_token equal to 1.
15314
15315 * w32.c (get_token_information): Perform initialization only if
15316 g_b_init_get_token_information is equal to 0. On initialization
15317 set g_b_init_get_token_information equal to 1.
15318
15319 * w32.c (lookup_account_sid): Perform initialization only if
15320 g_b_init_lookup_account_sid is equal to 0. On initialization
15321 set g_b_init_lookup_account_sid equal to 1.
15322
15323 * w32.c (get_sid_identifier_authority): Perform initialization
15324 only if g_b_init_get_sid_identifier_authority is equal to 0.
15325 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
15326
15327 * w32fns.c (globals_of_w32fns): New function. Used to initialize
15328 those global variables that must always be initialized on startup
15329 even when the global variable initialized is non zero.
15330 Its primary purpose at this time is to initialize the global variable
15331 track_mouse_event_fn.
15332
15333 * w32fns.c (w32_wnd_proc): Remove initialization of
15334 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
15335
15336 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
15337
15338 * w32menu.c (globals_of_w32menu): New function. Used to
15339 initialize those global variables that must always be initialized
15340 on startup even when the global variable initialized is non zero.
15341 Its primary purpose at this time is to initialize the global
15342 variables get_menu_item_info and set_menu_item_info.
15343
15344 * w32menu.c (initialize_frame_menubar): Remove initialization of
15345 get_menu_item_info and set_menu_item_info.
15346
15347 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
15348
15349 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
15350 Declare them.
15351
15352 * emacs.c (main): Call globals_of_w32 prior to calling
15353 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
15354 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
15355 is defined.
15356
15357 * w32term.c (x_update_window_begin): Fix Windows API error
15358 detected by BoundsChecker. Test to determine if
15359 w32_system_caret_hwnd is NULL prior to attempting to use
15360 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
15361
15362 * w32term.c (x_update_window_end): Fix Windows API error
15363 detected by BoundsChecker. Test to determine if
15364 w32_system_caret_hwnd is NULL prior to attempting to use
15365 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
15366
15367 2002-12-17 Kenichi Handa <handa@m17n.org>
15368
15369 * coding.c (coding_system_require_warning): New variable.
15370 (syms_of_coding): DEFVAR it.
15371
15372 * coding.h (coding_system_require_warning): Extern it.
15373
15374 * fileio.c (choose_write_coding_system): Even if
15375 Vcoding_system_for_write is non-nil, if
15376 coding_system_require_warning is nonzero, call
15377 Vselect_safe_coding_system_function.
15378
15379 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
15380
15381 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
15382 (lisp): Add font-core.
15383
15384 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
15385
15386 * textprop.c (text_read_only): New arg `propval'.
15387 (get_char_property_and_overlay): Remove unused var `next_overlay'.
15388 (verify_interval_modification): Use text_read_only's new arg.
15389
15390 2002-12-13 Kenichi Handa <handa@m17n.org>
15391
15392 * coding.c (Funencodable_char_position): Set pend correctly.
15393
15394 2002-12-12 Jason Rumney <jasonr@gnu.org>
15395
15396 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
15397 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
15398 Be more careful about when help_events are generated.
15399
15400 2002-12-12 Steven Tamm <steventamm@mac.com>
15401
15402 * macterm.c (mac_check_for_quit_char): Correctly set the
15403 modifiers of the event to 0.
15404 * mac.c (sys_select): Duplicate rfds before calling select to
15405 ensure that rfds survive the while loop.
15406
15407 2002-12-11 Kim F. Storm <storm@cua.dk>
15408
15409 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
15410 row_containing_pos returned NULL.
15411
15412 2002-12-10 Steven Tamm <steventamm@mac.com>
15413
15414 * mac.c (sys_read): Fix sys_read to not call select if IO is
15415 non-blocking.
15416 (sys_select): Fix sys_select to not use a timeout larger than
15417 the one given.
15418
15419 2002-12-10 Juanma Barranquero <lektu@terra.es>
15420
15421 * editfns.c (Fformat): Use alloca, not _alloca.
15422
15423 2002-12-09 Richard M. Stallman <rms@gnu.org>
15424
15425 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
15426 as the last thing.
15427
15428 2002-12-09 Dave Love <fx@gnu.org>
15429
15430 * s/sol2-8.h: Removed. (Not necessary.)
15431
15432 2002-12-09 Matthew Swift <swift@alum.mit.edu>
15433
15434 * editfns.c (Fformat): Handle precision in string conversion
15435 specifiers like libc functions do (ie, print at most that many
15436 characters).
15437
15438 2002-12-08 Richard M. Stallman <rms@gnu.org>
15439
15440 * xdisp.c (row_containing_pos): Check more carefully
15441 whether charpos is really in the row before returning it.
15442
15443 2002-12-07 Steven Tamm <steventamm@mac.com>
15444
15445 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
15446
15447 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
15448 each stack frame. This may change as it could be time consuming.
15449
15450 * macterm.c (mac_check_for_quit_char, quit_char_comp)
15451 (init_quit_char_handler, mac_determine_quit_char_modifiers)
15452 (mac_initialize): Add code to check for pressing of quit_char
15453 in the OS event queue.
15454
15455 * mac.c (sys_select): Call mac_check_for_quit_char every second
15456 while blocking on select.
15457
15458 * mac.c (sys_read): Use sys_select to test for input first
15459 before calling read, to allow C-g to break.
15460
15461 2002-12-07 Richard M. Stallman <rms@gnu.org>
15462
15463 * minibuf.c (Fcompleting_read): Doc fix.
15464
15465 * lread.c (syms_of_lread) <load-history>: Doc fix.
15466
15467 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
15468
15469 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
15470 autoload.
15471
15472 * data.c (Fdefalias): Record in load-history redefining an autoload.
15473
15474 * alloca.c: Undo ifdef change accidentally made on 12-04.
15475
15476 2002-12-06 Francesco Potorti` <pot@gnu.org>
15477
15478 * xfns.c (png_load): Avoid double gamma correction for PNG images.
15479
15480 2002-12-04 Richard M. Stallman <rms@gnu.org>
15481
15482 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
15483
15484 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
15485
15486 * alloca.c: Don't use #error.
15487
15488 2002-12-03 Dave Love <fx@gnu.org>
15489
15490 * buffer.c (Qucs_set_table_for_input): New.
15491 (Fget_buffer_create): Use it.
15492 (Qset_buffer_major_mode_hook): Deleted.
15493 (Fset_buffer_major_mode): Revert previous change.
15494 (init_buffer_once): Intern ucs-set-table-for-input.
15495 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
15496 Add &Qucs_set_table_for_input.
15497
15498 2002-12-03 Andreas Schwab <schwab@suse.de>
15499
15500 * callint.c (Fcall_interactively): Use next_event only if less
15501 than key_count.
15502
15503 2002-12-02 Andrew Choi <akochoi@shaw.ca>
15504
15505 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
15506 names to 255 characters.
15507
15508 * macterm.c (XTread_socket): If all frames have been collapsed,
15509 expand the first one before handling drag-and-drop events.
15510
15511 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
15512 which is detected by autoconf.
15513
15514 2002-12-01 Steven Tamm <steventamm@mac.com>
15515
15516 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
15517 offset in two hints table to allow prebinding to be redone and
15518 allow the executable to be stripped.
15519
15520 2002-11-29 Dave Love <fx@gnu.org>
15521
15522 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
15523 already provided.
15524
15525 2002-11-29 Richard M. Stallman <rms@gnu.org>
15526
15527 * xdisp.c (start_display): Check more intelligently for
15528 whether the line is continued.
15529 (move_it_vertically_backward): Clear it->continuation_lines_width.
15530
15531 2002-11-28 Dave Love <fx@gnu.org>
15532
15533 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
15534 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
15535
15536 2002-11-27 Steven Tamm <steventamm@mac.com>
15537
15538 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
15539 more descriptive error output from lread.c:Fload upon most require
15540 cycles during boostrapping.
15541
15542 2002-11-27 Jason Rumney <jasonr@gnu.org>
15543
15544 * fileio.c (Finsert_file_contents): Give a more appropriate error
15545 for files bigger than 2Gb when off_t is 32 bit.
15546
15547 * dired.c (Ffile_attributes): Don't return negative file sizes for
15548 files bigger than 2Gb when off_t is 32 bit.
15549
15550 2002-11-27 Dave Love <fx@gnu.org>
15551
15552 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15553
15554 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
15555 Test GETPGRP_VOID instead.
15556 [BSD_TERMIOS]: Remove definitions (never used).
15557
15558 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
15559 Don't define.
15560 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
15561
15562 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
15563
15564 2002-11-25 Jason Rumney <jasonr@gnu.org>
15565
15566 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
15567 supported.
15568
15569 2002-11-25 Dave Love <fx@gnu.org>
15570
15571 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
15572
15573 * Makefile.in (TEMACS_LDFLAGS): Update last change.
15574
15575 2002-11-25 Andreas Schwab <schwab@suse.de>
15576
15577 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
15578
15579 2002-11-24 Steven Tamm <steventamm@mac.com>
15580
15581 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
15582 determine the size of pointers alloced in unexed space instead
15583 of using possibly invalid emacs_zone pointers. This fixes the
15584 binary incompatibility problems caused by updates to libSystem.B.
15585
15586 2002-11-24 Richard M. Stallman <rms@gnu.org>
15587
15588 * search.c (Fstring_match): Doc fix.
15589
15590 * callint.c (Fcall_interactively): If a command fails because
15591 `*' detects a read-only buffer, but RECORD_FLAG is set,
15592 record it anyway if the args don't actually do tty input.
15593
15594 2002-11-22 Dave Love <fx@gnu.org>
15595
15596 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
15597
15598 * keyboard.c (interrupt_signal): Provide forward declaration.
15599 (kbd_buffer_store_event): Don't declare interrupt_signal.
15600
15601 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
15602
15603 2002-11-21 Richard M. Stallman <rms@gnu.org>
15604
15605 * eval.c (interactive_p): Skip any number of bytecode
15606 and special form frames, in any order.
15607
15608 2002-11-20 Jason Rumney <jasonr@gnu.org>
15609
15610 * w32fns.c (convert_mono_to_color_image): New function.
15611 (xbm_load, xbm_load_image): Use it when foreground or background
15612 is explicitly set.
15613
15614 2002-11-19 Dave Love <fx@gnu.org>
15615
15616 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
15617
15618 2002-11-18 Jason Rumney <jasonr@gnu.org>
15619
15620 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
15621 (XPutPixel): Swap blue and red.
15622 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
15623 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
15624 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
15625 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
15626
15627 2002-11-18 Dave Love <fx@gnu.org>
15628
15629 * m/orion105.h (HAVE_ALLOCA): Don't define.
15630
15631 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
15632
15633 * m/intel386.h: Don't include alloca.h or define alloca.
15634
15635 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
15636 malloc, realloc, calloc.
15637
15638 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
15639 (bcmp): Don't define.
15640
15641 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
15642
15643 * m/amdahl.h: Don't define LIB_STANDARD.
15644
15645 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
15646
15647 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
15648
15649 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
15650 Don't include alloca.h.
15651
15652 * s/aix3-2.h (HAVE_FSYNC): Don't define.
15653
15654 * regex.c (_GNU_SOURCE): Don't define.
15655
15656 * process.c (_GNU_SOURCE): Don't define.
15657
15658 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
15659
15660 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
15661
15662 * s/sol2-8.h: Include sol2-6.h.
15663
15664 2002-11-18 Miles Bader <miles@gnu.org>
15665
15666 * dispextern.h (struct face): Add `overstrike' field.
15667 * xterm.c (x_draw_glyph_string_foreground)
15668 (x_draw_composite_glyph_string_foreground): Implement overstriking.
15669 * xfaces.c (load_face_font): Set `face->overstrike' based on
15670 result from choose_face_font.
15671 (best_matching_font, choose_face_font): Add `needs_overstrike'
15672 argument, and use it to return whether overstriking is desirable
15673 for this face/font combo.
15674 (set_font_frame_param: Pass new argument to choose_face_font.
15675
15676 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15677
15678 This change is my fix for the following entry in etc/PROBLEMS:
15679 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
15680 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
15681
15682 * w32.c: Added wrapper functions around the win32 API functions
15683 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
15684 GetSidIdentifierAuthority. These wrapper functions serve two
15685 purposes:
15686 1. They ensure that the wrapped function can never be called
15687 when Emacs is running on an operating system on which they are
15688 not supported (Microsoft Windows 95 / 98 / ME).
15689 2. They call the wrapped functions via function pointers rather
15690 than calling them directly. This avoids taking advantage of the
15691 undocumented fact that although these functions are not supported
15692 in the 9x branch of Microsoft Windows, the functions do exist in
15693 the version of advapi32.dll that is found in the 9x branch of
15694 Microsoft Windows.
15695
15696 * w32.c (init_user_info): Replace the calls to the win32 API
15697 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
15698 and GetSidIdentifierAuthority with calls to the newly added
15699 wrapper functions.
15700
15701 * w32.h: Added extern declarations for the following functions:
15702 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
15703 syms_of_w32menu, and void syms_of_fontset.
15704
15705 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
15706 function pointer track_mouse_event_fn in the handler for the
15707 WM_SETFOCUS message.
15708
15709 * w32menu.c (initialize_frame_menubar): Add code to
15710 reinitialize the function pointers set_menu_item_info and
15711 get_menu_item_info.
15712
15713 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
15714
15715 * sound.c: Added a partial implementation of play-sound-internal
15716 for Microsoft Windows. Added various #ifdef / #else / #endif
15717 code blocks to separate the code that will compile under
15718 Microsoft Windows from the code that is specific to GNU/Linux.
15719 Moved several blocks of code around to make this separation of code
15720 into Windows compatible and GNU/Linux compatible code blocks easier.
15721
15722 * makefile.w32-in: Include sound.c and link with WinMM.lib.
15723
15724 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
15725 added support for play-sound-internal under Windows would be
15726 included in the build of Emacs.
15727
15728 2002-11-16 Jason Rumney <jasonr@gnu.org>
15729
15730 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
15731
15732 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
15733
15734 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
15735
15736 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
15737 (adjust_point_for_property): Move out of display and invisible even if
15738 we were already inside before (in case a property was added while
15739 we weren't looking). Be more careful when handling invisible props.
15740 Skip invisible text as if it really wasn't there at all.
15741
15742 2002-11-15 Jason Rumney <jasonr@gnu.org>
15743
15744 * w32term.c (x_draw_image_foreground)
15745 (w32_draw_image_foreground_1): Use standard copy and invert
15746 operations to draw images.
15747
15748 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
15749 depth of 1.
15750 (xbm_read_bitmap_data): Invert bits as xbm is read in.
15751 (XPutPixel): Don't invert bits here.
15752
15753 2002-11-15 Jason Rumney <jasonr@gnu.org>
15754
15755 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
15756 (w32_draw_image_foreground_1): Handle image masks.
15757 (x_draw_image_glyph_string): Don't BitBlt transparently.
15758
15759 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
15760 (x_from_xcolors): Adjust RGB values for W32.
15761 (image_background, image_background_transparent)
15762 (postprocess_image, x_to_xcolors, x_disable_image)
15763 (x_build_heuristic_mask): Adapt for W32 and enable.
15764 (x_create_x_image_and_pixmap): Mark images with palettes as such.
15765 (xbm_load): Remove unused variable.
15766
15767 2002-11-14 Richard M. Stallman <rms@gnu.org>
15768
15769 * buffer.c (syms_of_buffer): Doc fix.
15770
15771 2002-11-14 Dave Love <fx@gnu.org>
15772
15773 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
15774
15775 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
15776 * xmenu.c (unuse_menu_items, digest_single_submenu):
15777 * xfns.c (x_put_x_image):
15778 * xdisp.c (message2_nolog, set_message):
15779 * undo.c (record_point):
15780 * terminfo.c (tparam):
15781 * syntax.c (scan_sexps_forward):
15782 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
15783 * composite.c (update_compositions):
15784 * cm.c (calccost, cmgoto):
15785 * charset.c (c_string_width): Declare all args (per C99).
15786
15787 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
15788
15789 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
15790 Don't declare.
15791
15792 * emacs.c (main) [!VMS]: Avoid third arg.
15793
15794 * fns.c (Fcopy_sequence): Doc fix.
15795 (Fmap_char_table): Cast `call2'.
15796
15797 2002-11-14 Francesco Potorti` <pot@gnu.org>
15798
15799 * s/sol2-8.h: New file.
15800
15801 2002-11-14 Kim F. Storm <storm@cua.dk>
15802
15803 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
15804 dependency on `risky-local-variable' and the :propertize form.
15805
15806 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
15807
15808 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
15809
15810 * syntax.c (scan_sexps_forward): Undo last patch.
15811 Use a more obvious fix: check eob before updating the syntax table.
15812
15813 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
15814
15815 * syntax.c (scan_sexps_forward): Update syntax table before reading
15816 a char rather than after so we don't update the table past eob.
15817
15818 2002-11-09 Dave Love <fx@gnu.org>
15819
15820 * buffer.c (Fset_buffer_major_mode): Fix last change.
15821
15822 * regex.c (regexec): Fix pmatch declaration.
15823
15824 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
15825
15826 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
15827 to self-inserting characters.
15828 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
15829
15830 * coding.c (Vtranslation_table_for_input): New.
15831 (syms_of_coding): DEFVAR it.
15832
15833 2002-11-08 Juanma Barranquero <lektu@terra.es>
15834
15835 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
15836 window.
15837
15838 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15839
15840 * process.c (Fformat_network_address): Remove unused locals p,
15841 cp, and i.
15842
15843 2002-11-06 Dave Love <fx@gnu.org>
15844
15845 * buffer.c (Qset_buffer_major_mode_hook): New.
15846 (Fset_buffer_major_mode): Use it.
15847
15848 2002-11-06 Richard M. Stallman <rms@gnu.org>
15849
15850 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
15851 and stop_polling.
15852
15853 * process.c (wait_reading_process_input):
15854 Test POLLING_PROBLEM_IN_SELECT, not hpux.
15855 Avoid initialization for auto Lisp_Object var.
15856
15857 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
15858
15859 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
15860
15861 2002-11-05 Richard M. Stallman <rms@gnu.org>
15862
15863 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
15864
15865 * callint.c (Fcall_interactively): New local filter_specs.
15866 (Fcall_interactively): Check for progn as well as let.
15867 Add a gcpro.
15868 (Qprogn): New variable.
15869 (syms_of_callint): Staticpro and init Qprogn.
15870
15871 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
15872
15873 * lread.c (Feval_buffer): Doc fix.
15874
15875 2002-11-04 Dave Love <fx@gnu.org>
15876
15877 * keyboard.c (read_char): Always translate iff
15878 Vkeyboard_translate_table is a char table and c is valid.
15879
15880 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
15881 and fix C types.
15882
15883 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
15884
15885 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
15886
15887 * editfns.c (get_pos_property): Don't hardcode Qfield.
15888
15889 * keyboard.c (adjust_point_for_property): Handle `display' prop on
15890 overlays. Also handle `invisible' prop.
15891
15892 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
15893
15894 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
15895 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
15896
15897 2002-11-01 Andreas Schwab <schwab@suse.de>
15898
15899 * editfns.c (Fmessage): Revert last change to properly handle %%.
15900
15901 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
15902
15903 * xmenu.c (unuse_menu_items): New fun.
15904 (menu_items_inuse): New var.
15905 (syms_of_xmenu): Initialize it.
15906 (init_menu_items): Use it to detect re-entrance.
15907 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
15908 (Fx_popup_menu): Remove spurious XSETFRAME.
15909
15910 * editfns.c (find_field): Make an exception for nil fields.
15911
15912 2002-11-01 Dave Love <fx@gnu.org>
15913
15914 * m/gec63.h: Deleted.
15915
15916 2002-10-31 Dave Love <fx@gnu.org>
15917
15918 * xterm.c (XTread_socket): Fix last change.
15919 (xaw_scroll_callback): Cast call_data to long to avoid warning.
15920
15921 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
15922
15923 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
15924
15925 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
15926
15927 * editfns.c (overlays_around, get_pos_property): New funs.
15928 (find_field): Use them.
15929 Also be careful not to modify POS before its last use.
15930 (Fmessage): Don't Fformat if there's nothing to format.
15931
15932 2002-10-30 Dave Love <fx@gnu.org>
15933
15934 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
15935 [HAVE_PTY_H]; Include pty.h.
15936
15937 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
15938
15939 * xterm.c (Qeql): Declare.
15940 (Vx_keysym_table): New.
15941 (syms_of_xterm): Initialize it.
15942 (XTread_socket): Use it. Deal with ASCII keysyms.
15943 (XSetIMValues) [HAVE_X11R6]: Prototype.
15944
15945 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
15946 (lispy_kana_keys): Comment out.
15947 (make_lispy_event) [XK_kana_A]: Comment out.
15948 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
15949 Fix sprintf call.
15950
15951 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
15952 regexp.h change).
15953 (TERMINFO, LIBS_TERMCAP): Define.
15954
15955 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
15956 (bcmp): Define conditional on HAVE_BCMP.
15957 (NO_SIOCTL_H): Don't define.
15958 (TIOCSIGSEND): Don't make conditional on IRIX6.
15959
15960 * s/sol2-5.h: Don't include strings.h.
15961 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
15962
15963 * s/irix6-0.h (IRIX6): Don't define.
15964 (bcopy, bcmp, bzero): Don't undef.
15965
15966 * s/irix6-5.h: Don't include strings.h.
15967 (IRIX6): Don't define.
15968 (bcopy, bcmp, bzero): Don't undef.
15969
15970 * syntax.c (Fforward_comment): Doc fix.
15971
15972 2002-10-29 Kim F. Storm <storm@cua.dk>
15973
15974 * process.c (Fsignal_process): Allow PROCESS to be specified by
15975 name in addition to pid (as integer or string).
15976
15977 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
15978
15979 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
15980 environments.
15981
15982 2002-10-27 Kim F. Storm <storm@cua.dk>
15983
15984 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15985
15986 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
15987
15988 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
15989
15990 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
15991
15992 2002-10-26 Richard M. Stallman <rms@gnu.org>
15993
15994 * editfns.c (Fformat): Detect invalid format letters for floats.
15995
15996 2002-10-25 Kenichi Handa <handa@m17n.org>
15997
15998 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
15999 (x_set_title): Likewise.
16000
16001 2002-10-25 Juanma Barranquero <lektu@terra.es>
16002
16003 * macgui.h:
16004 * w32gui.h: Remove definition of XColor.
16005
16006 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
16007
16008 2002-10-24 Kim F. Storm <storm@cua.dk>
16009
16010 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
16011 Callers changed (supply dummy arg).
16012
16013 * lisp.h (get_window_cursor_type): Update prototype.
16014
16015 * w32term.c (x_display_and_set_cursor): Get active_cursor from
16016 get_window_cursor_type to track system caret.
16017
16018 2002-10-24 Kim F. Storm <storm@cua.dk>
16019
16020 * process.c (Fformat_network_address): New function.
16021 (syms_of_process): Defsubr it.
16022 (list_processes_1): Use it to format :local/:remote address if
16023 service/host is not set; before Emacs would crash in that case.
16024 (Fmake_network_process): Don't use Ffind_operation_coding_system
16025 to setup coding system if host or service is not set.
16026
16027 2002-10-23 Juanma Barranquero <lektu@terra.es>
16028
16029 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
16030
16031 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
16032 COLORREF.
16033
16034 * macgui.h:
16035 * w32gui.h: Add definition of XColor.
16036
16037 * macfns.c:
16038 * w32fns.c:
16039 * xfaces.c: Remove definition of XColor.
16040
16041 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
16042
16043 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
16044
16045 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
16046 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
16047 window if it is dedicated.
16048 (Fshrink_window): Add preserve_before as was done for enlarge_window.
16049 (Vspecial_display_function): Update docstring.
16050
16051 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
16052 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
16053 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
16054
16055 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
16056
16057 * casefiddle.c (casify_region): Don't treat a prefix char as part
16058 of a word when at the beginning.
16059
16060 2002-10-17 Juanma Barranquero <lektu@terra.es>
16061
16062 * lread.c (syms_of_lread): Fix typos.
16063
16064 2002-10-17 Dave Love <fx@gnu.org>
16065
16066 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
16067
16068 2002-10-16 Richard M. Stallman <rms@gnu.org>
16069
16070 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
16071
16072 2002-10-14 Juanma Barranquero <lektu@terra.es>
16073
16074 * w16select.c (syms_of_win16select): Fix docstring for
16075 `selection-coding-system'.
16076
16077 * w32select.c (syms_of_w32select): Likewise.
16078
16079 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
16080
16081 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
16082 a backslash-quoted char.
16083 (scan_lists, scan_sexps_forward): Pacify the compiler.
16084
16085 2002-10-13 Richard M. Stallman <rms@gnu.org>
16086
16087 * window.c (window_scroll): Set immediate_quit.
16088
16089 * print.c (print): When backquote form is the car of a list,
16090 output in old style. Use old_backquote_output to output all
16091 comma forms inside it in old style too.
16092
16093 * buffer.h (struct buffer): Move `undo_list' down below `name'.
16094
16095 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
16096
16097 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
16098 batch mode).
16099
16100 * lread.c (Fload): Doc fix (load-suffixes).
16101
16102 2002-10-10 Steven Tamm <steventamm@mac.com>
16103
16104 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
16105 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
16106 Also switch the default to Qnil from Qt.
16107
16108 2002-10-08 Kenichi Handa <handa@m17n.org>
16109
16110 * coding.c (code_convert_region): When we need more GAP for
16111 conversion, pay attention to the case that coding->produced is not
16112 greater than coding->consumed.
16113
16114 2002-10-07 Richard M. Stallman <rms@gnu.org>
16115
16116 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
16117
16118 2002-10-06 Andrew Choi <akochoi@shaw.ca>
16119
16120 * macmenu.c (mac_menu_show): Add j to count menu items; match
16121 menu_item_selection to it to find selected item.
16122
16123 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16124
16125 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
16126 cases. The correct fix is to pass ReparentNotify to Xt.
16127 The shell widget interprets ConfigureNotify differently depending
16128 on if it has been reparented or not.
16129
16130 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
16131
16132 * editfns.c (Fformat_time_string): Doc fix.
16133
16134 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
16135
16136 * fns.c (Flength): Doc fix.
16137
16138 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
16139
16140 * keyboard.c (keyremap): New struct.
16141 (read_key_sequence): Use it: globally replace keytran_foo with
16142 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
16143 keytran_next and fkey_next to just `next'.
16144
16145 2002-10-04 Steven Tamm <steventamm@mac.com>
16146
16147 * macterm.c (keycode_to_xkeysym_table): Change return to be
16148 treated like an X keysym.
16149
16150 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16151
16152 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
16153 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
16154 This is to also handle x/y changes that occur because of a resize.
16155
16156 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
16157
16158 * frame.c (Vdelete_frame_functions): New variable.
16159 (syms_of_frame): Initialize and defvar it.
16160 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
16161 it when frame's `tooltip' parameter is non-nil.
16162
16163 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
16164
16165 * w32fns.c (x_create_tip_frame): Likewise.
16166
16167 * macfns.c (x_create_tip_frame): Likewise.
16168
16169 2002-09-30 Kenichi Handa <handa@m17n.org>
16170
16171 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
16172 -1 before calling ccl_driver.
16173
16174 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
16175 Only when it is non-nil, handle composition sequence.
16176 (setup_coding_system) <0>: Don't force composition handling.
16177
16178 * Makefile.in (lisp, shortlisp): Add utf-16.elc
16179
16180 2002-09-29 Richard M. Stallman <rms@gnu.org>
16181
16182 * search.c (Freplace_match): Adjust match data for the substitution
16183 just made in the buffer.
16184
16185 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
16186 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
16187
16188 2002-09-27 Richard M. Stallman <rms@gnu.org>
16189
16190 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
16191 (read_char): Use them. Do all exits thru the end of the function.
16192
16193 2002-09-27 Kenichi Handa <handa@etl.go.jp>
16194
16195 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
16196 is nil.
16197
16198 2002-09-26 Richard M. Stallman <rms@gnu.org>
16199
16200 * regex.h (__restrict_arr): Don't define if already defined.
16201
16202 * coding.c (run_pre_post_conversion_on_str):
16203 Save and restore Vdeactivate_mark.
16204
16205 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
16206
16207 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
16208
16209 2002-09-26 Kenichi Handa <handa@etl.go.jp>
16210
16211 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
16212 nonzero, try face's family at first. Otherwise try FAMILY at first.
16213 (choose_face_font): If C is a single byte char or latin-1, call
16214 try_font_list with PREFER_FACE_FAMILY 1.
16215
16216 2002-09-21 Richard M. Stallman <rms@gnu.org>
16217
16218 * window.c (select_window_1): Don't select frame.
16219 Set frame's selected window only when frame itself is selected.
16220 (Fselect_window): Doc fix.
16221
16222 2002-09-18 Kim F. Storm <storm@cua.dk>
16223
16224 * process.c (make-network-process): Doc fix (there is no
16225 network-server-log-function hook).
16226
16227 2002-09-18 Richard M. Stallman <rms@gnu.org>
16228
16229 * print.c (print): Clear out the unused parts of Vprint_number_table.
16230 (syms_of_print): Doc fix for `print-number-table'.
16231
16232 * unexelf.c (unexec): Undo previous change.
16233
16234 2002-09-17 Andreas Schwab <schwab@suse.de>
16235
16236 * m/alpha.h [LINUX]: Don't define DATA_START.
16237
16238 2002-09-16 Dave Love <fx@gnu.org>
16239
16240 * unexelf.c (unexec): Deal with .got, reinstating change from
16241 25-08-1999.
16242
16243 2002-09-13 Richard M. Stallman <rms@gnu.org>
16244
16245 * s/sol2-6.h (UNEXEC): Comment out definition.
16246
16247 * unexsol.c (unexec): Don't downcase first letter of error msg.
16248
16249 * xfaces.c (Fcolor_supported_p): Just one arg is required.
16250
16251 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
16252
16253 * unexsol.c: Include buffer.h, charset.h, coding.h.
16254
16255 2002-09-11 Richard M. Stallman <rms@gnu.org>
16256
16257 * unexsol.c: Don't use report_file_error; do it by hand
16258 using dlerror.
16259
16260 * process.c (wait_reading_process_input, both versions):
16261 Before calling turn_on_atimers, call stop_polling.
16262
16263 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
16264
16265 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
16266 we go to too_near_end, call clear_glyph_matrix.
16267 (redisplay_window): After make_cursor_line_fully_visible,
16268 call clear_glyph_matrix and bypass `goto done'.
16269
16270 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
16271 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
16272
16273 2002-09-10 Richard M. Stallman <rms@gnu.org>
16274
16275 * fileio.c (Fdo_auto_save): Catch error making directory.
16276 Only call push_message if we need to.
16277 At the same time, make an unwind-protect to pop it.
16278 Rename local message_p to old_message_p.
16279 (do_auto_save_make_dir, do_auto_save_eh): New functions.
16280 (do_auto_save_unwind): Don't call pop_message.
16281
16282 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
16283
16284 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
16285
16286 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
16287
16288 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
16289
16290 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
16291
16292 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
16293 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
16294 (re_match_2_internal): Be more careful with infinite loops.
16295
16296 2002-09-10 Kim F. Storm <storm@cua.dk>
16297
16298 * macros.c (end_kbd_macro): New function.
16299 (Fend_kbd_macro): Use it.
16300
16301 * macros.h (end_kbd_macro): Declare extern.
16302
16303 * keyboard.c (Fdiscard_input): If defining keyboard macro,
16304 end and save it instead of discarding it.
16305
16306 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
16307
16308 * s/sol2-6.h: Fix typo. Add comment.
16309
16310 2002-09-09 Richard M. Stallman <rms@gnu.org>
16311
16312 * regex.c (regnum_t): Use signed int, not unsigned int.
16313
16314 * s/sol2-6.h: New file.
16315
16316 * s/sol2-5.h (UNEXEC): Definition deleted.
16317
16318 2002-09-08 Kim F. Storm <storm@cua.dk>
16319
16320 * macros.c (executing_macro_index): Change type to EMACS_INT.
16321 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
16322
16323 * macros.h (executing_macro_index): Change type to EMACS_INT.
16324
16325 2002-09-06 Richard M. Stallman <rms@gnu.org>
16326
16327 * casetab.c (set_case_table): Make canon table point to eqv table.
16328
16329 2002-09-06 Juanma Barranquero <lektu@terra.es>
16330
16331 * coding.c (syms_of_coding): Fix spacing.
16332
16333 * composite.c (Fcompose_region_internal)
16334 (Fcompose_string_internal): Likewise.
16335
16336 * data.c (Flsh): Likewise.
16337
16338 * fontset.c (Fset_fontset_font): Likewise.
16339
16340 * macfns.c (Fx_server_max_request_size): Likewise.
16341
16342 * w16select.c (syms_of_win16select): Likewise.
16343
16344 * w32select.c (syms_of_w32select): Likewise.
16345
16346 * xselect.c (syms_of_xselect): Likewise.
16347
16348 2002-09-05 Richard M. Stallman <rms@gnu.org>
16349
16350 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
16351 call EXTEND_RANGE_TABLE and return a proper value.
16352 (set_image_of_range): Don't call set_image_of_range_1
16353 if no TRANSLATE or if range includes all of Latin-1.
16354 Only call it for the Latin-1 part of the range.
16355 For other cases, make two separate ranges,
16356 one for the original specified characters and one for
16357 their case-conversions.
16358
16359 2002-09-04 Richard M. Stallman <rms@gnu.org>
16360
16361 * s/sol2-5.h (UNEXEC): Use unexsol.o.
16362
16363 * window.c (displayed_window_lines): Correct for one-off bug
16364 in HEIGHT on non-window displays.
16365
16366 * regex.c (set_image_of_range_1): New function.
16367 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
16368 Return a value to indicate running out of memory.
16369 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
16370 (extend_range_table_work_area): New subroutine.
16371 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
16372 Different calling conventions, and used from set_image_of_range{,_1}.
16373 (IMMEDIATE_QUIT_CHECK): Definitions moved.
16374
16375 2002-09-04 Juanma Barranquero <lektu@terra.es>
16376
16377 * makefile.w32-in: All dependencies updated.
16378
16379 2002-09-01 Richard M. Stallman <rms@gnu.org>
16380
16381 * unexsol.c: New file.
16382
16383 * xfns.c (Qbox): Declare external, don't define.
16384
16385 * xdisp.c (redisplay_window) <force-start case>:
16386 If point is on semi-visible last line, reposition
16387 it at previous line.
16388
16389 * alloc.c (display_malloc_warning): Use display-warning.
16390 (malloc_warning_1): Function deleted.
16391
16392 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
16393
16394 * lread.c (read1): Handle #! by skipping the line.
16395
16396 2002-08-31 Richard M. Stallman <rms@gnu.org>
16397
16398 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
16399 Don't include LDFLAGS.
16400 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
16401
16402 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
16403
16404 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
16405 member of x_display_info unless we compile for some window system.
16406
16407 2002-08-31 Kim F. Storm <storm@cua.dk>
16408
16409 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
16410 (get_window_cursor_type): Don't use them.
16411 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
16412
16413 2002-08-30 Kenichi Handa <handa@etl.go.jp>
16414
16415 * xdisp.c (get_next_display_element): Fix previous change.
16416
16417 2002-08-30 Andrew Choi <akochoi@shaw.ca>
16418
16419 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
16420 (expose_window): Use it to fix the display of overlapping
16421 rows (merge code from xterm.c).
16422
16423 * macfns.c (Qbox): Add extern declaration.
16424
16425 2002-08-30 Juanma Barranquero <lektu@terra.es>
16426
16427 * w32fns.c (Qbox): Make extern.
16428 (syms_of_w32fns): Remove initialization of Qbox.
16429
16430 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
16431
16432 * xfns.c (Fx_open_connection): Fix error message.
16433
16434 2002-08-30 Kim F. Storm <storm@cua.dk>
16435
16436 The following changes consolidates the handling of the cursor
16437 type in xdisp.c, moving duplicate code and functionality from
16438 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
16439
16440 * frame.h (enum text_cursor_kinds): Consolidated here.
16441 Added DEFAULT_CURSOR value.
16442 (struct frame) <desired_cursor, cursor_width>
16443 <blink_off_cursor, blink_off_cursor_width>: New fields.
16444 Consolidated from output_x, output_w32 and output_mac structs.
16445 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16446 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
16447
16448 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
16449 Variables consolidated here.
16450 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
16451 (Vcursor_in_non_selected_windows): Renamed from
16452 cursor_in_non_selected_windows and changed to Lisp_Object.
16453 (syms_of_xdisp): Define and staticpro new and moved variables.
16454 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
16455 consolidated here. Recognize Qhollow setting.
16456 (set_frame_cursor_types): New function to set frame cursor types
16457 based on the frame parameters.
16458 (get_window_cursor_type): New function to calculate new cursor
16459 type and width for the specified window. Based on duplicated
16460 code consolidated here.
16461 Enhancements: cursor-in-non-selected-windows may be a cursor type,
16462 check buffer-local alternate-cursor-type and blink-cursor-alist
16463 before using built-in blink off methods.
16464
16465 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
16466
16467 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
16468 (get_specified_cursor_type, get_window_cursor_type)
16469 (set_frame_cursor_types): Added prototypes.
16470
16471 * macfns.c (x_specified_cursor_type): Removed.
16472 (x_set_cursor_type): Use set_frame_cursor_types.
16473 (Qbar, Qbox): Removed.
16474 (syms_of_macfns): Don't intern or staticpro them.
16475
16476 * macterm.c (x_specified_cursor_type): Remove prototype.
16477 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16478 (x_display_and_set_cursor): Use get_window_cursor_type.
16479 Remove unused local variables cursor_non_selected, active_cursor.
16480 Redraw cursor if hbar cursor width changes.
16481 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
16482
16483 * macterm.h (enum text_cursor_kinds): Removed.
16484 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
16485 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16486 (FRAME_DESIRED_CURSOR): Macro removed.
16487
16488 * w32fns.c (Vblink_cursor_alist): Removed.
16489 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16490 (syms_of_w32fns): Don't intern, staticpro, or define them.
16491 (x_specified_cursor_type): Removed.
16492 (x_set_cursor_type): Use set_frame_cursor_types.
16493
16494 * w32term.c (x_specified_cursor_type): Remove prototype.
16495 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16496 (x_display_and_set_cursor): Use get_window_cursor_type.
16497 Remove unused local variables cursor_off_state.
16498 Redraw cursor if hbar cursor width changes.
16499 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
16500
16501 * w32term.h (enum text_cursor_kinds): Removed.
16502 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
16503 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16504 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16505 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16506 (struct w32_display_info) <x_highlight_frame>: Renamed member from
16507 w32_highlight_frame.
16508
16509 * xfns.c (Vblink_cursor_alist): Removed.
16510 (Qbar, Qhbar, Qbox, Qhollow): Removed.
16511 (syms_of_xfns): Don't intern, staticpro, or define them.
16512 (x_specified_cursor_type): Removed.
16513 (x_set_cursor_type): Use set_frame_cursor_types.
16514
16515 * xterm.c (x_specified_cursor_type): Remove prototype.
16516 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
16517 (x_display_and_set_cursor): Use get_window_cursor_type.
16518 Remove unused local variables cursor_off_state.
16519 Redraw cursor if hbar cursor width changes.
16520
16521 * xterm.h (enum text_cursor_kinds): Removed.
16522 (struct output_x) <current_cursor, desired_cursor, cursor_width>
16523 <blink_off_cursor, blink_off_cursor_width>: Members removed.
16524 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
16525 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
16526 (x_specified_cursor_type): Remove prototype.
16527
16528 2002-08-28 Richard M. Stallman <rms@gnu.org>
16529
16530 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16531 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16532 (Vblink_cursor_alist): New variable.
16533 (syms_of_w32fns): Initialize and defvar it.
16534 (x_specified_cursor_type): Recognize Qbox for filled box.
16535 Exceptions are hollow boxes.
16536 (Qbox, Qhollow): New variables.
16537 (syms_of_w32fns): Initialize and staticpro them.
16538
16539 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16540 New macros.
16541 (struct w32_output): New fields blink_off_cursor,
16542 blink_off_cursor_width.
16543 (FRAME_CURSOR_WIDTH): New macro.
16544
16545 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16546 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16547
16548 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16549 for bar cursor.
16550
16551 * w32term.c (expose_overlaps): New function.
16552 (expose_window): Use it to fix the display of overlapping rows.
16553
16554 2002-08-28 Simon Josefsson <jas@extundo.com>
16555
16556 * xfns.c (Fx_open_connection): Improve help when X connection
16557 fails, xhost is insecure and xauth is better.
16558
16559 2002-08-28 Juanma Barranquero <lektu@terra.es>
16560
16561 * makefile.w32-in: Add missing dependencies on w32term.h and
16562 composite.h.
16563
16564 * emacs.c (USAGE1): Add missing newline.
16565
16566 2002-08-27 Andrew Choi <akochoi@shaw.ca>
16567
16568 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
16569
16570 2002-08-27 Richard M. Stallman <rms@gnu.org>
16571
16572 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
16573 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
16574 (Vblink_cursor_alist): New variable.
16575 (syms_of_xfns): Initialize and defvar it.
16576 (x_specified_cursor_type): Recognize Qbox for filled box.
16577 Exceptions are hollow boxes.
16578 (Qbox, Qhollow): New variables.
16579 (syms_of_xfns): Initialize and staticpro them.
16580
16581 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
16582 New macros.
16583 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
16584
16585 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
16586 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
16587
16588 * emacs.c (main): Handle --script.
16589 (USAGE1): Mention --script.
16590 (standard_args): Define sort order for --script.
16591
16592 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
16593
16594 * xdisp.c (redisplay_updating_p): Variable removed.
16595 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
16596 New variables.
16597 (init_iterator): Don't free realized faces if
16598 inhibit_free_realized_faces is set.
16599 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
16600 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
16601 initialize Qinhibit_free_realized_faces.
16602
16603 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
16604 when iterator is adding glyphs to a glyph matrix.
16605
16606 2002-08-27 Kenichi Handa <handa@etl.go.jp>
16607
16608 * xdisp.c (get_next_display_element): In unibyte case, don't use
16609 octal form for such eight-bit characters that can be converted to
16610 multibyte char.
16611
16612 2002-08-26 Kim F. Storm <storm@cua.dk>
16613
16614 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
16615 foreground and background colors. From Joe Buehler.
16616
16617 2002-08-26 Miles Bader <miles@gnu.org>
16618
16619 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
16620
16621 2002-08-25 Andrew Choi <akochoi@shaw.ca>
16622
16623 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
16624 defined instead of MAC_OSX.
16625
16626 * s/darwin.h (select): Define select to sys_select only if
16627 HAVE_CARBON is defined.
16628 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
16629 (DONT_REOPEN_PTY): #def it.
16630
16631 * macterm.c (XTread_socket): Remove code to call
16632 SendEventToEventTarget for keys with command modifiers when
16633 mac_command_key_is_meta is nil.
16634
16635 2002-08-24 Andreas Schwab <schwab@suse.de>
16636
16637 * eval.c (Fdefvar): Fix last change.
16638
16639 2002-08-23 Richard M. Stallman <rms@gnu.org>
16640
16641 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
16642 Record variables in load history as (defvar . VAR).
16643 (Fdefvar): Don't record in load history if no initial value.
16644 (Qdefvar): New variable.
16645 (syms_of_eval): Init and staticpro it.
16646
16647 * lread.c (syms_of_lread): Doc fix.
16648 (build_load_history): Use Fmember to see if a definition
16649 is already in the Vload_history element.
16650
16651 * process.c (Fstart_process): Remove /: from program name.
16652
16653 * emacs.c (decode_env_path): Don't add /: if file name handler
16654 has a `safe-magic' property.
16655
16656 * callproc.c (Fcall_process): Remove /: from program name.
16657
16658 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
16659
16660 * regex.c (PATFETCH): Remove the translating fetch.
16661 (PATFETCH_RAW): Rename to PATFETCH.
16662 (set_image_of_range): New fun.
16663 (SET_RANGE_TABLE_WORK_AREA): Use it.
16664 (regex_compile): Don't translate the pattern chars so eagerly.
16665 Only do it when inserting an `exactn' bytecode or when handling
16666 a char-range.
16667 (mutually_exclusive_p): Avoid empty statement.
16668
16669 2002-08-22 Kim F. Storm <storm@cua.dk>
16670
16671 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
16672 end up on a partially visible line; this reverts a specific part
16673 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
16674 display error which has been reported several times now.
16675 However it introduces the problem that changes was supposed to fix.
16676 See my comments in the source if you want to debug this further.
16677
16678 2002-08-20 Kenichi Handa <handa@etl.go.jp>
16679
16680 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
16681
16682 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
16683
16684 * msdos.c (croak): Add `void' to definition.
16685
16686 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
16687 Don't define them, they are defined in msdos.c.
16688
16689 * mem-limits.h [MSDOS]: Declare etext.
16690
16691 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
16692 `const' since CORRECT_DIR_SEPS modifies its target.
16693
16694 2002-08-19 Kim F. Storm <storm@cua.dk>
16695
16696 * keyboard.c (Fclear_this_command_keys): Add optional arg
16697 KEEP-RECORD to avoid clearing lossage when we just want to clear
16698 the current key sequence (kmacro needs this).
16699
16700 2002-08-19 Kenichi Handa <handa@localhost>
16701
16702 * composite.c (run_composition_function): Call FUNC if it is fboundp.
16703
16704 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
16705 cons, return Qnil.
16706
16707 2002-08-17 Richard M. Stallman <rms@gnu.org>
16708
16709 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
16710
16711 * sysdep.c [!VMS]: Include sys/files.h.
16712
16713 * editfns.c (save_restriction_restore): Defend from unchained marker.
16714
16715 * buffer.c (overlays_at): Handle extending vec uniformly.
16716 (overlays_in): Handle extending vec from length 0 as in overlays_at.
16717
16718 2002-08-15 Andrew Choi <akochoi@shaw.ca>
16719
16720 * mac.c (init_mac_osx_environment): New function.
16721
16722 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
16723
16724 2002-08-14 Kim F. Storm <storm@cua.dk>
16725
16726 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
16727 executing macro before appending to it (when used from Lisp).
16728 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
16729 which is called prior to each iteration of macro (for kmacro.el).
16730 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
16731
16732 * lisp.h (Fexecute_kbd_macro): Update prototype.
16733
16734 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
16735
16736 2002-08-14 Kenichi Handa <handa@etl.go.jp>
16737
16738 * xselect.c (QUTF8_STRING): New variable.
16739 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
16740 (x_atom_to_symbol): Likewise.
16741 (x_get_local_selection): New argument local_request. If it is
16742 nonzero, call handler_fn with the second arg nil.
16743 (x_handle_selection_request): Call x_get_local_selection with
16744 local_request 0.
16745 (lisp_data_to_selection_data): Don't encode the string here.
16746 (Fx_get_selection_internal): Call x_get_local_selection with
16747 local_request 1.
16748 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
16749
16750 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
16751
16752 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
16753
16754 2002-08-13 Richard M. Stallman <rms@gnu.org>
16755
16756 * minibuf.c (Fminibufferp): New function.
16757 (syms_of_minibuf): Defsubr it.
16758 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
16759
16760 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
16761
16762 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
16763
16764 2002-08-12 Richard M. Stallman <rms@gnu.org>
16765
16766 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
16767 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
16768 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
16769 already.
16770
16771 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
16772
16773 2002-08-11 Andrew Choi <akochoi@shaw.ca>
16774
16775 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
16776 (Vmac_pass_command_to_system): New variable.
16777 (Vmac_pass_control_to_system): New variable.
16778 (do_mouse_moved): Check wp with is_emacs_window.
16779 (XTread_socket): Check window_ptr with is_emacs_window.
16780 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
16781 events back to Mac Toolbox for processing, depending on values of
16782 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
16783 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
16784 Vmac_pass_control_to_system.
16785
16786 2002-08-10 Kenichi Handa <handa@etl.go.jp>
16787
16788 * coding.c (unencodable_char_position): New function.
16789 (Funencodable_char_position): New function.
16790 (syms_of_coding): Defsubr Funencodable_char_position.
16791
16792 2002-08-10 Andrew Choi <akochoi@shaw.ca>
16793
16794 * mac.c (sys_select) [MAC_OSX]: New function.
16795
16796 * macterm.c (MakeMeTheFrontProcess): New function.
16797 (mac_initialize): Call MakeMeTheFrontProcess.
16798
16799 * s/darwin.h: Define select to sys_select.
16800
16801 2002-08-09 Richard M. Stallman <rms@gnu.org>
16802
16803 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
16804
16805 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
16806
16807 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
16808 end of the buffer.
16809
16810 2002-08-08 Ken Raeburn <raeburn@gnu.org>
16811
16812 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
16813
16814 * puresize.h (BASE_PURESIZE): Increase to 910000.
16815
16816 2002-08-08 Kenichi Handa <handa@etl.go.jp>
16817
16818 * coding.c (Ffind_operation_coding_system): For write-region, if
16819 VISIT is a filename, make it the target.
16820
16821 2002-08-07 Richard M. Stallman <rms@gnu.org>
16822
16823 * alloc.c (mark_object): Detect long lists for debugging.
16824 (mark_object_loop_halt): New variable.
16825
16826 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
16827
16828 * data.c (Fmake_variable_frame_local): Doc fix.
16829
16830 2002-08-01 David Ponce <david@dponce.com>
16831
16832 * w32menu.c (local_heap, local_alloc, local_free): New macros.
16833 (malloc_widget_value, free_widget_value)
16834 (w32_free_submenu_strings): Use them.
16835
16836 (push_submenu_start, push_submenu_end, push_left_right_boundary)
16837 (push_menu_pane, push_menu_item, single_keymap_panes)
16838 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
16839 (single_submenu, set_frame_menubar)
16840 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
16841
16842 (Fx_popup_menu): Don't show pop up menu until preceding one is
16843 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
16844
16845 * w32menu.c: Changes adapted from xmenu.c
16846 (set_frame_menubar): First parse all submenus,
16847 then make widget_value trees from them.
16848 Don't allocate any widget_value objects
16849 until we are done with the parsing.
16850 (parse_single_submenu): New function.
16851 (digest_single_submenu): New function.
16852 (single_submenu): Function deleted, replaced by those two.
16853
16854 2002-08-04 Andrew Choi <akochoi@shaw.ca>
16855
16856 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
16857 returns a valid window pointer before proceeding for keyDown and
16858 autoKey events.
16859
16860 2002-08-03 Andrew Choi <akochoi@shaw.ca>
16861
16862 * macterm.c (USE_CARBON_EVENTS): New macro.
16863 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
16864 (x_iconify_frame): Call CollapseWindow.
16865 (Vmac_reverse_ctrl_meta): New variable.
16866 (Vmac_wheel_button_is_mouse_2): New variable.
16867 (init_mac_drag_n_drop): New function.
16868 (mac_do_receive_drag): New function.
16869 (mac_handle_service_event): New function.
16870 (init_service_handler): New function.
16871 (mac_to_emacs_modifiers): New function.
16872 (mac_event_to_emacs_modifiers): New function.
16873 (mac_get_mouse_btn): New function.
16874 (mac_convert_event_ref): New function.
16875 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
16876 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
16877 mac_get_mouse_btn.
16878 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
16879
16880 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
16881 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
16882 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
16883 TOOL_BAR_EVENT for MAC_OS as well.
16884 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
16885 as for WINDOWS_NT.
16886 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
16887
16888 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
16889
16890 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
16891
16892 * xdisp.c (forward_to_next_line_start): Fix a condition that
16893 lead to a newline being skipped.
16894
16895 2002-08-02 Andrew Choi <akochoi@shaw.ca>
16896
16897 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
16898
16899 2002-08-01 Richard M. Stallman <rms@gnu.org>
16900
16901 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
16902
16903 2002-07-31 Andrew Choi <akochoi@shaw.ca>
16904
16905 * macfns.c: #undef init_process before #define-ing it.
16906
16907 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
16908 HAVE_CARBON is defined.
16909
16910 2002-07-31 Richard M. Stallman <rms@gnu.org>
16911
16912 * xmenu.c (set_frame_menubar): First parse all submenus,
16913 then make widget_value trees from them.
16914 Don't allocate any widget_value objects
16915 until we are done with the parsing.
16916 (parse_single_submenu): New function.
16917 (digest_single_submenu): New function.
16918 (single_submenu): Function deleted, replaced by those two.
16919
16920 2002-07-30 Juanma Barranquero <lektu@terra.es>
16921
16922 * w32proc.c (syms_of_ntproc): Fix docstring of
16923 `w32-get-true-file-attributes'.
16924
16925 2002-07-28 Richard M. Stallman <rms@gnu.org>
16926
16927 * s/hpux8.h (HPUX8): Define this before including hpux.h.
16928 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
16929
16930 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
16931
16932 * keyboard.c (make_lispy_event):
16933 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
16934 Explicitly clear up_modifier in event->modifiers.
16935
16936 2002-07-27 Richard M. Stallman <rms@gnu.org>
16937
16938 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
16939
16940 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
16941 for bar cursor.
16942
16943 2002-07-26 Kenichi Handa <handa@etl.go.jp>
16944
16945 * coding.c (detect_coding_iso2022): While checking a byte sequence
16946 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
16947 it in the normal loop.
16948
16949 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
16950
16951 * xterm.c (expose_overlaps): New function.
16952 (expose_window): Use it to fix the display of overlapping rows.
16953
16954 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
16955
16956 2002-07-23 Ken Raeburn <raeburn@gnu.org>
16957
16958 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
16959 since it only depends on XUINT.
16960
16961 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
16962 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
16963 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
16964 Macros deleted.
16965
16966 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
16967 its value over other approaches.
16968 * sysdep.c (start_of_data): Don't define the function if a macro
16969 form has been defined.
16970
16971 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
16972
16973 * xdisp.c (redisplay_updating_p): New variable.
16974 (init_iterator): Don't free realized faces when
16975 redisplay_updating_p is set.
16976 (redisplay_internal): Set redisplay_updating_p while updating
16977 the display.
16978
16979 2002-07-23 Richard M. Stallman <rms@gnu.org>
16980
16981 * editfns.c (Fmessage): Treat "" like nil.
16982
16983 2002-07-23 Kenichi Handa <handa@etl.go.jp>
16984
16985 * xdisp.c (face_before_or_after_it_pos):
16986 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
16987
16988 2002-07-22 Juanma Barranquero <lektu@terra.es>
16989
16990 * callproc.c (init_callproc) [DOS_NT]:
16991 Initialize Vshared_game_score_directory to nil.
16992 (syms_of_callproc) [DOS_NT]: Likewise.
16993
16994 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
16995
16996 * xdisp.c (display_line): Replace an abort with xassert.
16997
16998 2002-07-21 Richard M. Stallman <rms@gnu.org>
16999
17000 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
17001 and END_UNCHANGED when setting buffer_unchanged_p.
17002 Use current_matrix_up_to_date_p to decide whether to use
17003 try_cursor_movement.
17004
17005 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
17006
17007 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
17008
17009 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
17010 Set to nil if dir does not exist.
17011 (syms_of_callproc): Init unconditionally and simply.
17012
17013 * buffer.c (Fbuffer_list): Doc fix.
17014
17015 2002-07-21 Ken Raeburn <raeburn@gnu.org>
17016
17017 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
17018
17019 * buffer.c (mmap_realloc): When shrinking, make sure number of
17020 pages to unmap is rounded towards zero.
17021
17022 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
17023 (XSETINT): Deleted.
17024
17025 * m/att3b.h (XINT): Don't define.
17026 (VALBITS, VALMASK, XTYPE): Deleted.
17027 (DATA_SEG_BITS): Define.
17028 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
17029 ARRAY_MARK_FLAG): Deleted.
17030 (DATA_SEG_BITS): Define.
17031 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
17032 (DATA_SEG_BITS): Define.
17033
17034 2002-07-20 Richard M. Stallman <rms@gnu.org>
17035
17036 * print.c (print_error_message): New args CONTEXT and CALLER.
17037 Calls changed.
17038
17039 * lisp.h (print_error_message): Declare new args.
17040
17041 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
17042 and CONTEXT to print_error_message, don't print them here.
17043 For a Quit, don't use Vsignaling_function.
17044 Call message_log_maybe_newline.
17045
17046 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
17047
17048 2002-07-20 Kim F. Storm <storm@cua.dk>
17049
17050 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
17051
17052 2002-07-19 Ken Raeburn <raeburn@gnu.org>
17053
17054 * bytecode.c (struct byte_stack): Pointers into byte string now
17055 point to const.
17056 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
17057 const.
17058 * charset.h (BCOPY_SHORT): Source pointer now points to const.
17059 * coding.c (encode_eol, detect_coding, detect_eol):
17060 (decode_coding, encode_coding, detect_coding_system):
17061 Source strings now treated as const.
17062 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
17063 modify Lisp string contents.
17064 * coding.h (decode_coding, encode_coding, detect_coding,
17065 detect_eol): Declarations updated.
17066 * composite.c (compose_chars_in_text): Treat Lisp string contents
17067 as const.
17068 * dispnew.c (safe_bcopy): Source pointer now points to const.
17069 * lisp.h (STRING_COPYIN): New macro.
17070 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
17071 (internal_with_output_to_temp_buffer): Declarations updated.
17072 * print.c (temp_output_buffer_setup):
17073 (internal_with_output_to_temp_buffer): Buffer name argument is now
17074 pointer to const.
17075 * sound.c (struct sound_device): Function pointer field "write"
17076 buffer argument now points to const.
17077 (vox_write): Buffer argument points to const.
17078 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
17079 contents as const.
17080 * sysdep.c (emacs_write): Buffer pointer now const.
17081 * term.c (encode_terminal_code): Buffer pointer now const.
17082 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
17083 (x_face_list_fonts, x_update_menu_appearance):
17084 (hash_string_case_insensitive): Treat Lisp string contents as const.
17085
17086 2002-07-19 Juanma Barranquero <lektu@terra.es>
17087
17088 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
17089
17090 * fileio.c (syms_of_fileio): Likewise.
17091 (Ffile_name_as_directory): Fix argument name in docstring.
17092 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
17093
17094 2002-07-18 Richard M. Stallman <rms@gnu.org>
17095
17096 * data.c (Fdefalias): Doc fix.
17097
17098 2002-07-17 Dave Love <fx@gnu.org>
17099
17100 * intervals.h (text_property_stickiness): Use P_.
17101
17102 * ccl.c: Remove `emacs' conditionals.
17103 (ccl_backtrace_table): Fix size spec.
17104 (ccl_driver): Fix type errors.
17105
17106 2002-07-16 Ken Raeburn <raeburn@gnu.org>
17107
17108 * alloc.c (xstrdup, make_string, make_unibyte_string)
17109 (make_multibyte_string, build_string): String pointer args now
17110 point to const.
17111 * charset.c (find_charset_in_text, c_string_width):
17112 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
17113 * fileio.c (report_file_error):
17114 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
17115 (count_combining_before, count_combining_after, insert_1_both):
17116 (insert, insert_and_inherit, insert_string):
17117 (insert_before_markers, insert_before_markers_and_inherit):
17118 * lread.c (intern, oblookup, hash_string):
17119 * minibuf.c (temp_echo_area_glyphs):
17120 * search.c (fast_c_string_match_ignore_case):
17121 * sysdep.c (emacs_open, set_file_times):
17122 * xfaces.c (xstricmp):
17123 * xdisp.c (store_frame_title, string_char_and_length):
17124 (message_dolog, message2, message2_nolog, set_message): Likewise.
17125 (set_message_1): Cast message string argument to const pointer.
17126 * editfns.c (general_insert_function): Insertion function now
17127 takes pointer to const for input data.
17128 * charset.h (find_charset_in_text, c_string_width):
17129 (parse_str_as_multibyte): Declarations updated.
17130 * dispextern.h (xstricmp): Declaration updated.
17131 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
17132 (count_size_as_multibyte, count_combining_before):
17133 (count_combining_after, insert_1, insert_1_both, message_dolog):
17134 (insert, insert_and_inherit, insert_before_markers)
17135 (insert_before_markers_and_inherit, set_message, message2):
17136 (message2_dolog, build_string, make_string, make_unibyte_string):
17137 (make_multibyte_string, intern, oblookup, report_file_error):
17138 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
17139 (emacs_open, xstrdup): Declarations updated.
17140 * systime.h (set_file_times): Declaration updated.
17141
17142 * charset.c (find_charset_in_text, lisp_string_width): Use const
17143 for pointer to lisp string data.
17144 * charset.h (FETCH_STRING_CHAR_ADVANCE):
17145 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
17146 * coding.c (Ffind_coding_systems_region_interval):
17147 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
17148 (Fmake_directory_internal, Fdelete_directory):
17149 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
17150 * fontset.c (font_family_registry, fs_query_fontset):
17151 (list_fontsets):
17152 * frame.c (Fframe_parameter):
17153 * keyboard.c (cmd_error_internal):
17154 * keymap.c (Fdescribe_buffer_bindings):
17155 * lread.c (complete_filename_p, openp):
17156 * minibuf.c (Fminibuffer_complete_word):
17157 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
17158 (face_before_or_after_it_pos, next_element_from_string):
17159 (get_overlay_arrow_glyph_row, display_mode_element):
17160 (decode_mode_spec_coding):
17161 * xterm.c (same_x_server): Likewise.
17162
17163 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
17164 settings of non-existent fields.
17165
17166 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
17167 copy a lisp value.
17168
17169 * lread.c (Fintern_soft): Use string macros instead of
17170 Lisp_String fields.
17171 * keyboard.c (echo_char, parse_modifiers_uncached):
17172 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
17173 * textprop.c (validate_interval_range, interval_of): Likewise.
17174
17175 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
17176
17177 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17178 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
17179 XSTRING()->size_byte.
17180
17181 * lisp.h (SDATA, SREF): Produce rvalue.
17182 (SSET): New macro.
17183 * alloc.c (make_event_array): Use SSET for storing into a string.
17184 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
17185 a string.
17186 * casefiddle.c (casify_object): Use SSET.
17187 * charset.h (FETCH_STRING_CHAR_ADVANCE)
17188 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
17189 address of string contents.
17190 * data.c (Faref): Use SDATA.
17191 (Faset): Use SDATA, SSET.
17192 * dired.c (directory_files_internal): Use SSET.
17193 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
17194 (Fread_file_name): Use SREF, SSET.
17195 * fns.c (concat): Use SSET.
17196 (concat, Fdelete): Use SDATA.
17197 * insdel.c (insert_from_string_1): Use SDATA.
17198 * keyboard.c (Fevent_convert_list): Use SREF.
17199 * lread.c (Fload): Use SDATA, SSET.
17200 * macfns.c (validate_x_resource_name): Use SSET.
17201 * process.c (status_message): Use SSET.
17202 * search.c (wordify): Use SDATA.
17203 (Freplace_match): Use SREF.
17204 * w32fns.c (validate_x_resource_name): Use SSET.
17205 * xfns.c (validate_x_resource_name): Use SSET.
17206 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
17207
17208 2002-07-16 Richard M. Stallman <rms@gnu.org>
17209
17210 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
17211
17212 * xdisp.c (reconsider_clip_changes):
17213 Don't test prevent_redisplay_optimizations_p.
17214 (redisplay_internal): Test prevent_redisplay_optimizations_p
17215 along with clip_changed in some cases.
17216 (try_window_id): Likewise.
17217 (redisplay_window): New local var buffer_unchanged_p.
17218
17219 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
17220
17221 * process.c (create_process): Test USG_SUBTTY_WORKS.
17222 (process_send_signal): Clean up handling of GID.
17223 Detect errors in ioctls meant to set GID.
17224
17225 * window.c (temp_output_buffer_show):
17226 Don't set prevent_redisplay_optimizations_p.
17227
17228 2002-07-15 Juanma Barranquero <lektu@terra.es>
17229
17230 * eval.c (Fdefvaralias): Add docstring argument.
17231
17232 2002-07-15 Ken Raeburn <raeburn@gnu.org>
17233
17234 * lisp.h (STRING_INTERVALS): Produce rvalue.
17235 (STRING_SET_INTERVALS): New macro.
17236 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
17237 * fns.c (Fstring_as_multibyte): Likewise.
17238 * intervals.c (balance_possible_root_interval, delete_interval)
17239 (create_root_interval, copy_intervals_to_string): Likewise.
17240 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
17241 instead of 0.
17242
17243 2002-07-14 Ken Raeburn <raeburn@gnu.org>
17244
17245 * lisp.h (STRING_SET_CHARS): New macro.
17246 (SCHARS, SBYTES): Produce rvalues.
17247 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
17248 * fns.c (concat): Likewise.
17249 * lread.c (read_vector): Likewise.
17250
17251 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
17252 (STRING_SET_UNIBYTE): New macro.
17253 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
17254 length of -1) changed to use STRING_SET_UNIBYTE.
17255 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
17256 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
17257 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
17258 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
17259 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
17260 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
17261 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
17262 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
17263 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
17264 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
17265 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
17266 STRING_BYTES or indirection changed to SCHARS, SBYTES,
17267 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
17268 unchanged for now.
17269
17270 2002-07-13 Kim F. Storm <storm@cua.dk>
17271
17272 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
17273
17274 2002-07-12 Richard M. Stallman <rms@gnu.org>
17275
17276 * fileio.c (Fwrite_region): Doc fix.
17277
17278 * print.c (print_error_message): Don't handle Vsignaling_function here.
17279
17280 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
17281 (command_loop_1): Avoid certain actions after memory-full error.
17282
17283 * eval.c (Fsignal): Don't call cancel_hourglass.
17284 For a memory-full error, don't call Vsignal_hook_function
17285 and don't set Vsignaling_function.
17286
17287 * process.c (process_send_signal): Add abort call.
17288
17289 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
17290
17291 * keymap.c (Fkey_binding): Fix typo.
17292
17293 2002-07-11 Richard M. Stallman <rms@gnu.org>
17294
17295 * alloc.c (Vmemory_full): New variable.
17296 (Vmemory_signal_data): Rename from memory_signal_data.
17297 Uses changed.
17298 (syms_of_alloc): Defvar them.
17299 (memory_full, buffer_memory_full): Set Vmemory_full.
17300
17301 * lisp.h (Vmemory_full): Add declaration.
17302 (current_column, indented_beyond_p): Change declaration.
17303
17304 * indent.c (last_known_column): Declare as double, not float.
17305 (current_column, current_column_1, string_display_width)
17306 (position_indentation): Return `double'.
17307 (indented_beyond_p): Arg `column' is `double'. Callers changed.
17308
17309 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
17310 (back_to_previous_visible_line_start)
17311 (reseat_at_next_visible_line_start, next_element_from_buffer):
17312 Use `double', not `float', when calling indented_beyond_p.
17313
17314 * s/hpux11.h (BROKEN_SA_RESTART): Define.
17315
17316 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
17317
17318 2002-07-11 Juanma Barranquero <lektu@terra.es>
17319
17320 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
17321 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
17322 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
17323 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
17324 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
17325 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
17326
17327 2002-07-10 Juanma Barranquero <lektu@terra.es>
17328
17329 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
17330 All callers changed.
17331
17332 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
17333
17334 * data.c (Fdefalias): Add an optional `docstring' argument.
17335 (set_internal, Fsetq_default): Use XCAR/XCDR.
17336
17337 * composite.c (HASH_VALUE, HASH_KEY):
17338 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
17339
17340 2002-07-09 Kenichi Handa <handa@etl.go.jp>
17341
17342 * callproc.c (Fcall_process): Fix previous change.
17343
17344 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
17345
17346 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
17347 Add support for hash-tables.
17348 (Ftry_completion): Return t even if the string appears multiple times.
17349
17350 * fns.c (Fnconc): Use XCDR.
17351 (Fprovide): Use CONSP and XCDR.
17352 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17353 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
17354 (Fmake_hash_table): Accept `:size nil'.
17355 (Fmakehash): Delete: moved to subr.el.
17356 (syms_of_fns): Don't defsubr makehash.
17357
17358 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
17359 (HASH_TABLE_SIZE): Move from fns.c.
17360
17361 2002-07-07 Richard M. Stallman <rms@gnu.org>
17362
17363 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
17364 Instead just return 0 when there is something to be done.
17365 (try_scrolling): If make_cursor_line_fully_visible returns 0,
17366 retry scrolling as if cursor were off the bottom.
17367 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
17368 return CURSOR_MOVEMENT_MUST_SCROLL.
17369 (redisplay_window): If make_cursor_line_fully_visible returns 0,
17370 go to try_to_scroll.
17371
17372 * buffer.c (Fbuffer_local_value): Store current value into its binding
17373 so we get the up-to-date value for the binding that is loaded.
17374
17375 * eval.c (Fdefmacro): Doc fix.
17376
17377 2002-07-05 Dave Love <fx@gnu.org>
17378
17379 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
17380 correctly.
17381
17382 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
17383 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
17384 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
17385 CCL_LookupCharConstTbl.
17386 (syms_of_ccl): Defvar translation-hash-table-vector.
17387
17388 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17389
17390 * xdisp.c: Remove unused variable `face'.
17391
17392 2002-07-04 Juanma Barranquero <lektu@terra.es>
17393
17394 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
17395 obsolescence information.
17396
17397 2002-07-03 Andrew Choi <akochoi@shaw.ca>
17398
17399 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
17400 pattern. Search cache first.
17401 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
17402 for Japanese font.
17403 (XLoadQueryFont): Use it.
17404
17405 2002-07-02 Richard M. Stallman <rms@gnu.org>
17406
17407 * keymap.c (Fdefine_key): Doc fix.
17408
17409 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
17410
17411 2002-07-02 Juanma Barranquero <lektu@terra.es>
17412
17413 * keymap.c (syms_of_keymap): Fix typo.
17414
17415 2002-07-01 Andrew Choi <akochoi@shaw.ca>
17416
17417 * s/darwin.h: Define POSIX_SIGNALS.
17418
17419 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
17420 and FSRefMakePath to convert FSSpec returned with Apple Event to
17421 Posix pathname.
17422 (mac_initialize) [TARGET_API_MAC_CARBON]:
17423 Call init_required_apple_events and disable the `Quit' menu item
17424 provided automatically by the Carbon Toolbox.
17425
17426 2002-07-01 Dave Love <fx@gnu.org>
17427
17428 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
17429 for K&R.
17430
17431 * xterm.c: Fix prototype for K&R.
17432
17433 * term.c (costs_set): Declare static, non-initialized for pcc.
17434
17435 2002-07-01 Richard M. Stallman <rms@gnu.org>
17436
17437 * keyboard.c (timer_last_idleness_start_time): New variable.
17438 (timer_start_idle): Set that.
17439 (read_key_sequence): Use that to reset timer_idleness_start_time
17440 to previous value.
17441
17442 * window.c (Frecenter): With arg, set optional_new_start.
17443
17444 * xdisp.c (redisplay_internal): Make optional_new_start really work.
17445
17446 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
17447 buffer for completion.
17448
17449 2002-06-29 Ken Raeburn <raeburn@gnu.org>
17450
17451 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
17452
17453 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17454
17455 * keyboard.c (readable_filtered_events): New function that filters
17456 FOCUS_IN_EVENT depending on parameter.
17457 (readable_events): Calls readable_filtered_events, not filtering
17458 FOCUS_IN_EVENT.
17459 (get_filtered_input_pending): New function, filtering parameter passed
17460 to readable_filtered_events.
17461 (get_input_pending): Calls get_filtered_input_pending, not filtering
17462 FOCUS_IN_EVENT.
17463 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
17464 FOCUS_IN_EVENT.
17465
17466 * xterm.h (struct x_output): Add focus_state.
17467
17468 * xterm.c (x_focus_changed): New function.
17469 (x_detect_focus_change): New function.
17470 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
17471 EnterNotify and LeaveNotify to track X focus changes.
17472
17473 2002-06-28 Andreas Schwab <schwab@suse.de>
17474
17475 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
17476
17477 2002-06-27 Kim F. Storm <storm@cua.dk>
17478
17479 * xdisp.c (mode_line_string_list, mode_line_string_face)
17480 (mode_line_string_face_prop): New variables.
17481 (store_mode_line_string): New function.
17482 (display_mode_element): Use store_mode_line_string to
17483 add mode-line string elements to mode_line_string_list
17484 when mode_line_string_list is non-nil.
17485 (Fformat_mode_line): Now returns propertized string by
17486 default. New arg NO-PROPS to ignore properties.
17487 (decode_mode_spec): Only add two dashes for %- in propertized
17488 mode-line string.
17489 (syms_of_xdisp): Init and staticpro mode_line_string_list.
17490
17491 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
17492
17493 * minibuf.c (minibuffer_completion_contents): Add return type.
17494
17495 2002-06-27 Juanma Barranquero <lektu@terra.es>
17496
17497 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
17498
17499 2002-06-26 Juanma Barranquero <lektu@terra.es>
17500
17501 * fileio.c (read_file_name_cleanup): Add missing return.
17502
17503 2002-06-26 Richard M. Stallman <rms@gnu.org>
17504
17505 * window.c (Frecenter): Don't set force_start flag.
17506
17507 * minibuf.c (do_completion, Fminibuffer_complete_word)
17508 (Fminibuffer_completion_help): Complete just the text before point.
17509 (minibuffer_completion_contents): New function.
17510
17511 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
17512
17513 * frame.c (frames_bury_buffer): Function deleted.
17514
17515 2002-06-25 Miles Bader <miles@gnu.org>
17516
17517 * callint.c (Fcall_interactively): When checking to see if doprnt hit
17518 the end of callint_message, allow for a terminating '\0'.
17519
17520 2002-06-24 Juanma Barranquero <lektu@terra.es>
17521
17522 * w32select.c: Include composite.h.
17523
17524 * w16select.c: Likewise.
17525
17526 2002-06-24 Kenichi Handa <handa@etl.go.jp>
17527
17528 * callproc.c (Fcall_process): If code detection is necessary,
17529 call detect_coding directly here.
17530
17531 * coding.c (detect_eol): Preserve coding->cmp_data.
17532
17533 * w16select.c (Fw16_get_clipboard_data):
17534 * w32fns.c (w32_to_x_font):
17535 * w32select.c (Fw32_get_clipboard_data):
17536 * xselect.c (selection_data_to_lisp_data):
17537 * xterm.c (XTread_socket): Disable composition handling.
17538
17539 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
17540
17541 * print.c (temp_output_buffer_setup): Kill all local variables.
17542
17543 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
17544
17545 * lread.c (Fread): Remove redundant and imprecise declaration.
17546
17547 * xfns.c (check_x_display_info): Use check_x_frame.
17548
17549 * .gdbinit (xprintsym): Use the new `xname' field.
17550 (xsymbol): Use it.
17551
17552 2002-06-22 Jason Rumney <jasonr@gnu.org>
17553
17554 * w32fns.c (file_dialog_callback): New function.
17555 (Fx_file_dialog): Allow selecting directories as well as files.
17556
17557 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17558
17559 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
17560 OpenBSD. Add support for mipseb-*-netbsd* machines.
17561
17562 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17563
17564 * macterm.c (mac_scroll_area): Set foreground and backcolor to
17565 black and white before scrolling. Restore frame background and
17566 foreground color after scrolling.
17567 (do_window_update): Call XClearWindow before calling expose_frame.
17568 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
17569 FRAME_FOREGROUND_PIXEL of frame.
17570
17571 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17572 test Mac command key as <ALT> key.
17573
17574 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
17575
17576 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
17577
17578 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
17579 Lookup keys in function-key-map immediately so that key-translation-map
17580 can be applied earlier.
17581 Remove function_key_possible and key_translation_possible, replaced
17582 by checking `keytran_start < t'.
17583
17584 * .gdbinit (xsymbol): Use the new `xname' field.
17585
17586 2002-06-17 Andrew Choi <akochoi@shaw.ca>
17587
17588 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
17589 test Mac command key as <ALT> key.
17590
17591 * mac.c (do_applescript): Call initialize_applescript if necessary
17592 when first called. Dispose of result_desc only when there is no error.
17593 (Fdo_applescript): Use %d format specifier instead of %ld.
17594
17595 2002-06-16 Andrew Choi <akochoi@shaw.ca>
17596
17597 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
17598 of FrontWindow for cases keyDown and autoKey.
17599
17600 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
17601 Vdefault_fontset to Monaco with mac-roman coding.
17602
17603 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
17604 init_process before and after inclusion of Carbon/Carbon.h, resp.
17605
17606 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
17607 cursor_gc.
17608 (add_font_name_table_entry): New function.
17609 (init_font_name_table): Use add_font_name_table_entry; add italic,
17610 bold, and bold-italic entries for truetype fonts.
17611
17612 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
17613 for Mac too.
17614 (try_font_list) [MAC_OS]: If no font matches given registry, try
17615 fonts with any registry matching face_family.
17616 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
17617
17618 * s/darwin.h: If autoconf detects the Ncurses library, define
17619 LIBS_TERMCAP to -lncurses to use it.
17620
17621 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
17622
17623 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
17624
17625 2002-06-15 Richard M. Stallman <rms@gnu.org>
17626
17627 * window.c (Fset_window_configuration): Explicitly preserve
17628 the point value that new_current_buffer had at the start.
17629
17630 2002-06-14 Juanma Barranquero <lektu@terra.es>
17631
17632 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
17633 Fix typos.
17634
17635 2002-06-14 Kim F. Storm <storm@cua.dk>
17636
17637 * insdel.c (insert_1_both, insert_from_string_1)
17638 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
17639 insert happened in the end_unchanged region. Otherwise, the
17640 redisplay may be confused and duplicate the last line in the
17641 buffer [seen after save-buffer when require-final-newline==t].
17642
17643 2002-06-13 Jason Rumney <jasonr@gnu.org>
17644
17645 * w32.c (init_environment): Remove EMACSLOCKDIR.
17646 (stat): Swap _S_IFDIR and _S_IFREG.
17647
17648 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17649
17650 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
17651 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
17652 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
17653 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
17654 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
17655 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
17656 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
17657 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
17658 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
17659 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
17660 SELECTION_REQUEST_EVENT, selection_clear_event to
17661 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
17662 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
17663 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
17664 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
17665 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
17666 no_event to NO_EVENT.
17667
17668 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17669
17670 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
17671
17672 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
17673
17674 * intervals.c (textget): Don't forget to `return'.
17675 (lookup_char_property): Use XCAR/XCDR.
17676
17677 2002-06-12 Juanma Barranquero <lektu@terra.es>
17678
17679 * xdisp.c (Fformat_mode_line): Fix typo.
17680
17681 2002-06-12 Kim F. Storm <storm@cua.dk>
17682
17683 * xdisp.c (Fformat_mode_line): New function.
17684 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
17685 (store_frame_title_char, store_frame_title): Use unconditionally.
17686 (init_xdisp): Defsubr Fformat_mode_line.
17687 Initialize frame_title_buf etc. unconditionally.
17688
17689 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
17690
17691 * keyboard.c (read_key_sequence):
17692 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
17693 things through those maps after downcasing events.
17694 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
17695 applies after function-key-map.
17696 Make sure that keytran can be done in the middle in the sequence.
17697 Be careful not to throw away events past the one we downcase.
17698
17699 * lread.c (read_integer): Remove unused var `tem'.
17700 (read1): Fix int/Lisp_Object mixup.
17701
17702 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
17703
17704 2002-06-11 Richard M. Stallman <rms@gnu.org>
17705
17706 * keyboard.c (readable_events): Ignore any number of
17707 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
17708
17709 2002-06-09 Miles Bader <miles@gnu.org>
17710
17711 * xfaces.c (Ftty_supports_face_attributes_p): New function.
17712 (parse_rgb_list, tty_lookup_color): New functions.
17713 (tty_defined_color): Use `tty_lookup_color' to do all the work.
17714 (color_distance, Fcolor_distance): New functions.
17715 (TTY_SAME_COLOR_THRESHOLD): New macro.
17716 (Qtty_color_standard_values): New variable.
17717 (syms_of_xfaces): Initialize new vars & functions.
17718
17719 2002-06-08 Colin Walters <walters@verbum.org>
17720
17721 * textprop.c (Vchar_property_alias_alist): New variable.
17722 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
17723
17724 * intervals.c (lookup_char_property): New function for looking up
17725 overlay and text properties, created from textget.
17726 (textget): Use it.
17727
17728 * intervals.h (lookup_char_property): Declare.
17729 (Vchar_property_alias_alist): Declare.
17730
17731 * buffer.c (Foverlay_get): Use lookup_char_property.
17732
17733 2002-06-07 Sam Steingold <sds@gnu.org>
17734
17735 * xselect.c (lisp_data_to_selection_data): Fix last change:
17736 *data_ret is not a Lisp string, while unibyte_string is.
17737
17738 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
17739
17740 * xselect.c (lisp_data_to_selection_data): Fix last change:
17741 set size_ret.
17742
17743 2002-06-07 Andreas Schwab <schwab@suse.de>
17744
17745 * m/amdx86-64.h: New file.
17746
17747 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
17748
17749 * fns.c (Fstring_make_unibyte): Doc fix.
17750
17751 * xselect.c (lisp_data_to_selection_data): If the requested type
17752 is STRING, call string_make_unibyte to encode the selected text
17753 as a string.
17754
17755 * window.c (Fset_window_hscroll): Doc fix.
17756
17757 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17758
17759 * fileio.c (choose_write_coding_system):
17760 Call select-safe-coding-system properly.
17761
17762 2002-06-03 Richard M. Stallman <rms@gnu.org>
17763
17764 * xdisp.c (message_with_string): Error if STRING is not a string.
17765
17766 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
17767
17768 * fileio.c (choose_write_coding_system): Pass FILE arg to
17769 Vselect_safe_coding_system_function.
17770
17771 2002-06-03 Ken Raeburn <raeburn@gnu.org>
17772
17773 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
17774
17775 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
17776
17777 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
17778 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
17779 * keymap.c (describe_command): Likewise.
17780 * minibuf.c (read_minibuf): Likewise.
17781
17782 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
17783 Cast `current_column' return value to int.
17784 (back_to_previous_visible_line_start)
17785 (reseat_at_next_visible_line_start, next_element_from_buffer):
17786 Cast `indented_beyond_p' 3rd arg to float.
17787
17788 * indent.c (last_known_column): Now a float.
17789 (current_column_1, position_indentation, current_column)
17790 (string_display_width): Return float.
17791 (Fcurrent_column): Cast `current_column' return value to int.
17792 (Fcurrent_indentation): Cast `position_indentation' retval to int.
17793 (indented_beyond_p): Third arg now a float.
17794 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
17795
17796 * lisp.h (current_column): Now returns float.
17797 (indented_beyond_p): 3rd arg now a float.
17798
17799 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
17800
17801 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
17802 is Qcompound_text_with_extensions.
17803
17804 * xselect.c (lisp_data_to_selection_data): Always set selection
17805 type as string if x_encode_text returns streingp non-NULL.
17806
17807 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
17808
17809 2002-05-30 Richard M. Stallman <rms@gnu.org>
17810
17811 * window.c (Fset_window_configuration): Correct the handling
17812 of point in current buffer, to work with multiple windows.
17813
17814 2002-05-29 Colin Walters <walters@verbum.org>
17815
17816 * lread.c (Fread_from_string): Don't depend on order of evaluation
17817 for C function parameters.
17818
17819 2002-05-28 Richard M. Stallman <rms@gnu.org>
17820
17821 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
17822 way for blinked-off state and for a nonselected window.
17823
17824 * window.c (window_scroll_pixel_based): Don't call Fbolp;
17825 instead, see if the new start pos is at beginning of line.
17826
17827 * fileio.c (Fwrite_region): If START is a string, don't
17828 make any annotations.
17829
17830 * eval.c (syms_of_eval): Doc fix.
17831
17832 2002-05-28 Colin Walters <walters@debian.org>
17833
17834 * emacs.c (USAGE1): Add --no-splash.
17835 (standard_args): Ditto.
17836
17837 2002-05-28 Colin Walters <walters@gnu.org>
17838
17839 * lread.c (readchar_count): New variable.
17840 (readchar): Increment it.
17841 (unreadchar): Decrement it.
17842 (read_multibyte): Decrement it.
17843 (Vread_with_symbol_positions): New variable.
17844 (Vread_symbol_positions_list): New variable.
17845 (read_internal_start): New function, created from Fread and
17846 Fread_from_string. Handle Vread_symbol_positions_list and
17847 Vread_with_symbol_positions.
17848 (readevalloop, Fread, Fread_from_string): Use it.
17849 (read1): Use readchar_count to add symbol positions to
17850 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
17851 (syms_of_lread): DEFVAR_LISP and initialize them.
17852
17853 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
17854 (substitute_object_recurse, substitute_object_in_subtree)
17855 (substitute_in_interval): Prototype.
17856 (read_multibyte): Return c if it's less than zero.
17857
17858 2002-05-28 Kim F. Storm <storm@cua.dk>
17859
17860 * fileio.c (Fread_file_name_internal): Added brute-force
17861 speed up for using predicate file-directory-p.
17862
17863 2002-05-28 Kim F. Storm <storm@cua.dk>
17864
17865 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
17866 New variables.
17867 (syms_of_fileio): DEFVAR_LISP them.
17868 (read_file_name_cleanup): New unwind function.
17869 (Fread_file_name_internal): Only return completions satifying
17870 Vread_file_name_predicate. Temporarily unwind protect and rebind
17871 default-directory while checking completions against the predicate.
17872 (Fread_file_name): Added PREDICATE argument. Specbind it to
17873 Vread_file_name_predicate during completion.
17874 Call Vread_file_name_function to read the file name if non-nil.
17875
17876 * lisp.h (Fread_file_name): Now has 6 args.
17877
17878 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
17879 predicate for Fread_file_name when reading directory name.
17880 Supply Qnil for predicate in other calls to Fread_file_name.
17881
17882 2002-05-26 Miles Bader <miles@gnu.org>
17883
17884 * term.c (tty_capable_p): New function.
17885 * dispextern.h (tty_capable_p): New function declaration.
17886 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
17887 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
17888
17889 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
17890
17891 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
17892 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
17893 (Vwrite_region_annotate_functions): Docstring fix.
17894
17895 2002-05-23 Kim F. Storm <storm@cua.dk>
17896
17897 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
17898 phys_cursor's hpos is overwritten. This is still not completely
17899 correct, as it doesn't really make sense to use hpos at all to
17900 get the cursor glyph (as that is relative to the width of the
17901 characters on the line, which may have changed during the update).
17902
17903 2002-05-22 Jason Rumney <jasonr@gnu.org>
17904
17905 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
17906 Lisp_Object.
17907 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
17908 Use modified enumfont_t struct.
17909
17910 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
17911
17912 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
17913 Handle the `hbar' cursor type.
17914 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
17915
17916 * w32fns.c (Qhbar): New variable.
17917 (x_specified_cursor_type): Use it.
17918
17919 2002-05-21 Ken Raeburn <raeburn@gnu.org>
17920
17921 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
17922 now, when the address is needed.
17923
17924 2002-05-21 Colin Walters <walters@gnu.org>
17925
17926 * Makefile.in (shortlisp): Add font-core.el.
17927
17928 2002-05-20 Richard M. Stallman <rms@gnu.org>
17929
17930 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
17931
17932 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
17933 equivalent key bindings here.
17934
17935 2002-05-20 Ken Raeburn <raeburn@gnu.org>
17936
17937 Change symbol structure to contain a lisp object for the symbol
17938 name:
17939 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
17940 object field named "xname".
17941 (SYMBOL_NAME): New macro.
17942 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
17943 name field.
17944 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
17945 (mark_object, gc_sweep): Use symbol xname field and XSTRING
17946 instead of name field.
17947 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
17948 SYMBOL_NAME instead of XSYMBOL and name field.
17949 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
17950 instead of XSYMBOL and name field.
17951 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
17952 and SYMBOL_NAME instead of XSYMBOL and name field.
17953 * coding.c (Fread_coding_system, code_convert_region1)
17954 (code_convert_string1, code_convert_string_norecord)
17955 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
17956 XSYMBOL and name field.
17957 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
17958 (Fmake_variable_buffer_local, Fmake_local_variable)
17959 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
17960 of XSYMBOL and name field.
17961 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
17962 XSYMBOL and name field.
17963 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
17964 instead of XSYMBOL and name field.
17965 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
17966 XSYMBOL and name field.
17967 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
17968 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17969 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
17970 instead of XSYMBOL and name field.
17971 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
17972 (parse_modifiers, apply_modifiers, Fevent_convert_list)
17973 (parse_solitary_modifier, Fexecute_extended_command):
17974 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
17975 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
17976 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
17977 of XSYMBOL and name field.
17978 (describe_command, describe_translation): Use SYMBOL_NAME and
17979 assignment instead of XSYMBOL and name field and XSETSTRING.
17980 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
17981 instead of XSYMBOL and name field.
17982 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
17983 name field and XSETSTRING.
17984 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17985 of XSYMBOL and name field.
17986 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
17987 assignment instead of XSYMBOL and name field and XSETSTRING.
17988 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
17989 XSTRING instead of XSYMBOL and name field.
17990 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
17991 and XSTRING instead of XSYMBOL and name field.
17992 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
17993 and XSTRING instead of XSYMBOL and name field.
17994 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
17995 XSTRING instead of XSYMBOL and name field.
17996 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
17997 of XSYMBOL and name field.
17998 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
17999 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
18000
18001 2002-05-19 Ken Raeburn <raeburn@gnu.org>
18002
18003 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
18004 and XCDR real rvalues in most configurations.
18005
18006 * buffer.c (fix_overlays_in_range, fix_overlays_before):
18007 Don't take the address of the cdr part of a cons cell; instead, track
18008 the parent cell and call XSETCDR, or set the variable for the head
18009 of the list if we haven't started down the list yet.
18010
18011 2002-05-19 Richard M. Stallman <rms@gnu.org>
18012
18013 * doc.c (reread_doc_file): Don't ask for confirmation.
18014
18015 2002-05-18 Jason Rumney <jasonr@gnu.org>
18016
18017 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
18018 (xbm_load_image): Use it.
18019 (xbm_load): Ditto.
18020 (xbm_read_bitmap_data): Reverted to xfns.c version.
18021 From David Ponce <david@dponce.com>.
18022
18023 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
18024
18025 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
18026 2.02 and later.
18027
18028 2002-05-16 Juanma Barranquero <lektu@terra.es>
18029
18030 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
18031
18032 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
18033
18034 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
18035 meaningful test.
18036 (read_char_minibuf_menu_prompt): Fix typo.
18037
18038 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
18039
18040 * eval.c (Fcommandp): Doc fix.
18041
18042 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
18043
18044 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
18045 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
18046 (Fset_keymap_parent): Gcpro a bit more.
18047 (access_keymap): Gcpro around meta_map call and around the main loop.
18048 (get_keyelt): Gcpro when following indirect references.
18049 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
18050 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
18051 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
18052 Remove useless ad-hoc remap code.
18053
18054 2002-05-13 Richard M. Stallman <rms@gnu.org>
18055
18056 * search.c (search_buffer): Give up boyer moore search if inverse
18057 translation change charset_base.
18058
18059 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
18060
18061 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
18062 characters is carried over from the previous block of text, adjust
18063 coding->produced to account for the extra character.
18064
18065 2002-05-11 Andreas Schwab <schwab@suse.de>
18066
18067 * coding.c (intersection): Keep the elements of the returned list
18068 in the same order as in the first list.
18069
18070 2002-05-11 Kim F. Storm <storm@cua.dk>
18071
18072 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
18073 only update cmm_size if realloc actually succeeds.
18074 Testing with initial size of 2 elements revealed that using
18075 realloc on GNU/Linux would cause a random trap in xmalloc
18076 later on, so I rewrote the code to use malloc/bcopy/free instead
18077 of realloc.
18078
18079 2002-05-10 Jason Rumney <jasonr@gnu.org>
18080
18081 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
18082
18083 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
18084
18085 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
18086 parens, to ensure correct evaluation order.
18087
18088 2002-05-10 Kim F. Storm <storm@cua.dk>
18089
18090 * keymap.c (Vemulation_mode_map_alists): New variable.
18091 (syms_of_keymap): DEFVAR_LISP it.
18092 (current_minor_maps): Process keymap alists in that list before
18093 minor-mode-overriding-map-alist and minor-mode-map-alist.
18094
18095 2002-05-09 Richard M. Stallman <rms@gnu.org>
18096
18097 * search.c (Freplace_match): Doc fix.
18098
18099 2002-05-09 Kim F. Storm <storm@cua.dk>
18100
18101 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
18102 Enlarge cursor rectangle drawn around image with non-zero relief.
18103
18104 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
18105 Enlarge cursor rectangle drawn around image with non-zero relief.
18106
18107 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
18108 Enlarge cursor rectangle drawn around image with non-zero relief.
18109
18110 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
18111
18112 * xselect.c (lisp_data_to_selection_data): Don't set selection
18113 type if comes from the Lisp object's car. If the selection
18114 contains a pure ASCII text, always return QSTRING as its type.
18115
18116 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18117
18118 * mac.c (mac-cut-function): Doc fix.
18119
18120 2002-05-05 Richard M. Stallman <rms@gnu.org>
18121
18122 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
18123
18124 2002-05-04 Jason Rumney <jasonr@gnu.org>
18125
18126 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
18127 for event-click-count.
18128
18129 * process.c (init_process): Only add server subfeature if we can
18130 use non-blocking I/O.
18131
18132 2002-05-04 Andrew Choi <akochoi@shaw.ca>
18133
18134 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
18135 repeatedly.
18136
18137 2002-05-03 Jason Rumney <jasonr@gnu.org>
18138
18139 * process.c (Fmake_network_process): Only support server sockets
18140 when we can make them non-blocking.
18141
18142 * s/ms-w32.h (HAVE_SELECT): Define.
18143
18144 * w32.h (FILE_NDELAY): New flag.
18145
18146 * w32.c (sys_getpeername, fcntl): New functions.
18147 (_sys_read_ahead): Temporarily block on non-blocking sockets.
18148
18149 * w32proc.c: Include sys/file.h.
18150
18151 2002-05-03 Colin Walters <walters@verbum.org>
18152
18153 * callproc.c (Vgame_score_directory): Renamed to
18154 Vshared_game_score_directory.
18155
18156 2002-04-30 Richard M. Stallman <rms@gnu.org>
18157
18158 * s/gnu.h [emacs]: Include stdio.h.
18159 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
18160
18161 * eval.c (do_autoload): Error if called while preparing to dump.
18162
18163 * fns.c (Frequire): Error if need to load while preparing to dump.
18164
18165 2002-04-28 Colin Walters <walters@verbum.org>
18166
18167 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
18168 Default to "~/.emacs.d/games".
18169
18170 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
18171
18172 * lread.c (openp): Change arg exec_only to predicate.
18173 (build_load_history): Use XCAR/XCDR.
18174 (Flocate_file_internal): New fun.
18175 (syms_of_lread): Defsubr it.
18176 (Fload): Update call to openp.
18177
18178 * lisp.h (openp): Update prototype.
18179
18180 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
18181 * w32proc.c (sys_spawnve):
18182 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
18183 * w32.c (check_windows_init_file):
18184 * sound.c (Fplay_sound_internal):
18185 * process.c (Fstart_process):
18186 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
18187 * mac.c (run_mac_command):
18188 * emacs.c (init_cmdargs):
18189 * callproc.c (Fcall_process): Update call to openp.
18190
18191 * textprop.c (remove_properties): Don't use XCAR without CONSP.
18192
18193 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
18194
18195 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18196
18197 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
18198 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
18199
18200 2002-04-28 Richard M. Stallman <rms@gnu.org>
18201
18202 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
18203
18204 * eval.c (Fcommandp): New arg for_call_interactively.
18205 * lisp.h (Fcommandp): Declare new arg.
18206
18207 2002-04-28 Jason Rumney <jasonr@gnu.org>
18208
18209 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
18210
18211 * w32.c (stat, fstat): Use file index information to generate
18212 inodes for directories where available.
18213
18214 2002-04-26 Andrew Choi <akochoi@shaw.ca>
18215
18216 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
18217 [HAVE_CARBON]: Include Mac object files.
18218
18219 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
18220 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
18221 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
18222 MAC_OSX, and MAC_OS instead of macintosh.
18223
18224 * editfns.c [MAC_OS8]: Include stdio.h.
18225
18226 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
18227
18228 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
18229 Apple Monaco.
18230
18231 * process.c (QCfamily, QCfilte): Declare extern.
18232 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
18233 calling select.
18234
18235 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
18236
18237 * tparam.c [MAC_OSX]: Don't define BC and UP.
18238
18239 * config.in [HAVE_CARBON]: Add.
18240
18241 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
18242 Move here from mac/src and mac/inc.
18243
18244 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
18245
18246 2002-04-26 Gerd Moellmann <gerd@gnu.org>
18247
18248 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
18249 Compute phys_cursor_width from the x position returned
18250 by x_draw_glyhs, which is cheaper.
18251 (x_display_and_set_cursor): Compute the buffer-local value
18252 of `cursor-in-non-selected-windows' only when needed.
18253
18254 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18255
18256 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
18257 cursor on a stretch glyph has a width that depends on
18258 x_stretch_cursor_p.
18259
18260 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18261
18262 * abbrev.c (abbrev-start-location): Doc fix.
18263
18264 * indent.c (Fvertical_motion): Fix last change.
18265
18266 2002-04-25 Gerd Moellmann <gerd@gnu.org>
18267
18268 * indent.c (Fvertical_motion): Move to the start of the line
18269 containing PT before moving up or down.
18270
18271 2002-04-24 Gerd Moellmann <gerd@gnu.org>
18272
18273 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
18274 case of writing a whole row, more or less analogous to the case of
18275 writing only parts of a row.
18276
18277 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
18278 0 for NO_CURSOR.
18279
18280 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
18281
18282 2002-04-23 Colin Walters <walters@verbum.org>
18283
18284 * buffer.c (syms_of_buffer): Doc fix.
18285
18286 2002-04-23 Gerd Moellmann <gerd@gnu.org>
18287
18288 * xterm.c (notice_overwritten_cursor): Handle the special case
18289 of the cursor being in the first blank non-text line at the
18290 end of a window.
18291
18292 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
18293 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
18294 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
18295 bar cursors only, to make phys_cursor_width contain what its name
18296 suggests.
18297 (notice_overwritten_cursor): Consider the cursor image erased if
18298 the output area intersects the cursor image in y-direction.
18299
18300 2002-04-23 Simon Marshall <simon@gnu.org>
18301
18302 * xfns.c (x_set_mouse_color): Change default for cross_cursor
18303 to XC_hand2.
18304
18305 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18306
18307 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
18308
18309 2002-04-22 Kim F. Storm <storm@cua.dk>
18310
18311 * textprop.c (remove_properties): Fixed trap for malformed plist.
18312
18313 2002-04-22 Richard M. Stallman <rms@gnu.org>
18314
18315 * cmds.c (Fend_of_line): Handle intangible text in mid line.
18316
18317 * window.c (make_window): Initialize height_fixed_p,
18318 last_cursor_off_p, and p->cursor_off_p slots.
18319
18320 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18321
18322 * fns.c (use-dialog-box): Doc fix.
18323
18324 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18325
18326 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
18327 variables `row', `i' and `area'.
18328 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
18329 toolkit library.
18330
18331 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
18332
18333 * xfaces.c (clear_font_table): Don't free the default font of
18334 a frame even if it's on another display.
18335 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
18336 that could be Qt.
18337
18338 2002-04-19 Juanma Barranquero <lektu@terra.es>
18339
18340 * indent.c (Fmove_to_column): Remove unused local variable
18341 `next_boundary_byte'.
18342 (current_column_1): Likewise.
18343
18344 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
18345
18346 * msdos.c (Qhbar): New variable.
18347 (syms_of_msdos): Intern and staticpro it.
18348 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
18349 cursor type.
18350
18351 2002-04-19 Dave Lambert <dlambert@acm.org>
18352
18353 Theses change implement an underscore-like (`hbar') cursor.
18354
18355 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
18356
18357 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
18358 Handle the `hbar' cursor type.
18359 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
18360
18361 * xfns.c (Qhbar): New variable.
18362 (syms_of_xfns): Intern and staticpro it.
18363 (x_specified_cursor_type): Handle `hbar' cursor.
18364
18365 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
18366 not defined.
18367
18368 2002-04-18 Richard M. Stallman <rms@gnu.org>
18369
18370 * textprop.c (remove_properties): New arg LIST allows scanning
18371 either a list or a plist.
18372 (interval_has_some_properties_list): New function, like
18373 interval_has_some_properties using list instead of plist.
18374 All callers changed.
18375 (Fremove_list_of_text_properties): New function.
18376 (syms_of_textprop): Defsubr it.
18377
18378 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18379
18380 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
18381
18382 2002-04-17 Juanma Barranquero <lektu@terra.es>
18383
18384 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
18385
18386 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
18387
18388 * window.c (coordinates_in_window): Don't report on margin area
18389 if its width is zero.
18390
18391 2002-04-16 Jason Rumney <jasonr@gnu.org>
18392
18393 * w32fns.c (Fx_file_dialog): Decode file name before using.
18394
18395 * w32term.c (construct_drag_n_drop): Likewise.
18396
18397 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
18398
18399 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
18400 store load-history in pure space.
18401
18402 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
18403
18404 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
18405
18406 * xterm.c (Qlatin_1, Qutf_8): New vars.
18407 (syms_of_xterm): Initialize them.
18408 (XTread_socket): Eliminate incorrect optimization that tried to avoid
18409 decoding the output of X*LookupString.
18410 Always use latin-1 to decode the output of XLookupString.
18411 Try Xutf8LookupString if XmbLookupString failed.
18412
18413 * region-cache.c (new_region_cache): Use BEG.
18414
18415 2002-04-16 Gerd Moellmann <gerd@gnu.org>
18416
18417 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
18418 configuration files.
18419 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
18420 returns 0.
18421
18422 2002-04-15 Andreas Schwab <schwab@suse.de>
18423
18424 * config.in: Regenerated using autoheader.
18425
18426 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
18427 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
18428 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
18429 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
18430 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
18431 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
18432 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
18433 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
18434 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
18435 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
18436 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
18437 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
18438 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
18439 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
18440 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
18441 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
18442 STACK_DIRECTION, now set by autoconf.
18443
18444 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18445
18446 * dispnew.c (marginal_area_string): Sort arguments.
18447
18448 * dispextern.h (marginal_area_string): Add prototype.
18449
18450 2002-04-13 Richard M. Stallman <rms@gnu.org>
18451
18452 * fileio.c (Finsert_file_contents):
18453 Don't call temp_output_buffer_setup--do just part, by hand.
18454
18455 * coding.c (run_pre_post_conversion_on_str):
18456 Don't call temp_output_buffer_setup--do just part, by hand.
18457
18458 * keyboard.c (command_loop_1): Don't call start_hourglass
18459 or cancel_hourglass when executing a macro.
18460
18461 * marker.c (count_markers): New function.
18462
18463 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
18464 grow without limit. Move recently used elements to the front.
18465
18466 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
18467
18468 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
18469
18470 2002-04-12 Gerd Moellmann <gerd@gnu.org>
18471
18472 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
18473 rows marginal areas.
18474 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
18475 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
18476
18477 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
18478
18479 2002-04-12 Dave Love <fx@gnu.org>
18480
18481 * dispnew.c (marginal_area_string): New.
18482
18483 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
18484 (Qleft_margin, Qright_margin): Declare.
18485 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
18486
18487 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
18488 note_mode_line_highlight and extended.
18489
18490 * keyboard.c (Qleft_margin, Qright_margin): Declare.
18491 (make_lispy_event): Deal with mouse events in margins.
18492
18493 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
18494
18495 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
18496
18497 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
18498 than deactivating the mark if tmm is set to `lambda'.
18499 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
18500 Use a single event for HELP_EVENT.
18501 (Fexecute_extended_command): Save last_point_position.
18502
18503 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18504
18505 * lisp.h (Fpropertize): Add prototype.
18506
18507 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
18508
18509 2002-04-10 Colin Walters <walters@verbum.org>
18510
18511 * config.in: Add HAVE_SHARED_GAME_DIR.
18512
18513 * callproc.c (Vgame_score_directory): New variable.
18514 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
18515
18516 2002-04-10 Richard M. Stallman <rms@gnu.org>
18517
18518 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
18519
18520 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
18521
18522 * minibuf.c (read_minibuf): Use empty_string.
18523 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
18524 Short-circuit the search as soon as it "failed".
18525 (Fall_completions): Allow lambda forms and lists of strings for alist.
18526 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
18527 when require_match is nil.
18528 (Ftest_completion): Rename from `test_completion' and export to elisp.
18529 Call the predicate also when alist is a list.
18530 Obey Vcompletion_regexp_list.
18531 (do_completion, Fminibuffer_complete_and_exit): Use it.
18532 (Fassoc_string): Rename from `assoc_for_completion'.
18533 Allow list of strings as well and export to elisp.
18534
18535 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
18536
18537 * puresize.h (BASE_PURESIZE): Increase to 900KB.
18538
18539 2002-04-08 Juanma Barranquero <lektu@terra.es>
18540
18541 * w32.c (sys_accept): Don't hide variable `s'.
18542
18543 2002-04-05 Gerd Moellmann <gerd@gnu.org>
18544
18545 * callint.c (Fcall_interactively): Use INTEGERP instead of
18546 NUMBERP for checking Vhistory_length.
18547
18548 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18549
18550 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
18551 Doc fix to reflect it.
18552
18553 2002-04-04 Richard M. Stallman <rms@gnu.org>
18554
18555 * xdisp.c (display_mode_element): New arg RISKY.
18556 Disregard text props found or specified within a variable
18557 that isn't marked risky-local-variable.
18558 (Qrisky_local_variable): New variable.
18559 (syms_of_xdisp): Init and staticpro it.
18560
18561 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
18562
18563 * undo.c (record_point): New fun.
18564 (record_delete, record_insert): Use it.
18565
18566 2002-04-03 Juanma Barranquero <lektu@terra.es>
18567
18568 * doc.c (Fdocumentation): Add missing parentheses.
18569 (Fdocumentation_property): Likewise.
18570
18571 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
18572
18573 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
18574 data is 0, just return nil.
18575
18576 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
18577
18578 * msdos.c (syms_of_msdos): Fix last change with
18579 mouse_autoselect_window.
18580
18581 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18582
18583 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
18584 mouse_autoselect_window.
18585
18586 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
18587
18588 * keyboard.c (make_lispy_event): Handle unknown keysyms together
18589 with system-specific keysyms. Use it also for unknown function keys.
18590
18591 * doc.c (reread_doc_file): Return whether reload was attempted.
18592 (Fdocumentation, Fdocumentation_property): Don't try to reload
18593 if the doc is 0 and only ask once.
18594
18595 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
18596
18597 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
18598
18599 * keyboard.c (read_char): If the event was Qselect_window,
18600 restore timer_idleness_start_time to its previous value.
18601
18602 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
18603
18604 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
18605
18606 * region-cache.c (new_region_cache): Use BEG.
18607
18608 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
18609 Use BEG and BEG_BYTE.
18610
18611 * doc.c (get_doc_string): Return nil if the location is wrong.
18612 (reread_doc_file): New fun.
18613 (Fdocumentation, Fdocumentation_property):
18614 Call it if get_doc_string fails.
18615 (Fsnarf_documentation): Make it work for a dumped Emacs.
18616
18617 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
18618 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
18619
18620 * charset.c (Fstring): Allow 0 arguments.
18621
18622 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
18623
18624 * process.c (DATAGRAM_CONN_P, list_processes_1)
18625 (Fprocess_datagram_address, Fset_process_datagram_address)
18626 (Fset_network_process_options, server_accept_connection):
18627 Fix some int/Lisp_Object confusions (thank you union types).
18628
18629 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18630
18631 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
18632
18633 * w32term.c: Likewise.
18634 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
18635
18636 * keyboard.c (Qselect_window): New symbol.
18637 (head_table): Use it.
18638 (keys_of_keyboard): Bound select-window event to handle-select-window.
18639 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
18640
18641 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
18642 (last_window): New variable.
18643 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
18644 (note_mouse_movement): Remove reimplemented code in #if 0.
18645 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
18646 Emacs windows.
18647
18648 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
18649
18650 2002-03-31 Gerd Moellmann <gerd@gnu.org>
18651
18652 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
18653 Callers changed.
18654
18655 2002-03-30 Richard M. Stallman <rms@gnu.org>
18656
18657 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
18658 loop whenever it stops making progress.
18659
18660 * widget.c (set_frame_size): Don't call change_frame_size.
18661
18662 2002-03-30 Gerd Moellmann <gerd@gnu.org>
18663
18664 * dispnew.c (direct_output_for_insert):
18665 Call mark_window_display_accurate.
18666
18667 2002-03-29 Jason Rumney <jasonr@gnu.org>
18668
18669 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
18670
18671 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
18672
18673 * Makefile.in (lread.o): Depend on coding.h.
18674
18675 * lread.c (openp, Fload): Encode the file name before passing it
18676 to `stat', `access', and `emacs_open'.
18677 (openp): GCPRO the encoded file name. Don't recompute Lisp
18678 strings unnecessarily.
18679
18680 2002-03-29 Kim F. Storm <storm@cua.dk>
18681
18682 * fns.c (Flax_plist_put): Doc fix.
18683
18684 2002-03-28 Miles Bader <miles@gnu.org>
18685
18686 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
18687
18688 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18689
18690 * process.c (set-network-process-options): Add usage.
18691 (make-network-process): Doc fix.
18692
18693 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
18694
18695 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
18696
18697 2002-03-26 Richard M. Stallman <rms@gnu.org>
18698
18699 * fns.c (Fsubstring_no_properties): New function.
18700 (Flax_plist_get, Flax_plist_put): New functions.
18701 (syms_of_fns): defsubr them.
18702
18703 * xdisp.c (update_menu_bar): Test only update_mode_lines;
18704 don't test or alter w->update_mode_line.
18705
18706 * window.c (Fdisplay_buffer): Doc fix.
18707
18708 2002-03-24 Richard M. Stallman <rms@gnu.org>
18709
18710 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
18711
18712 2002-03-24 Gerd Moellmann <gerd@gnu.org>
18713
18714 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
18715 (Fdefmacro): Handle `(declare ...)'.
18716 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
18717 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
18718
18719 2002-03-24 Jason Rumney <jasonr@gnu.org>
18720
18721 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
18722 (xbm_file_p): Add prototypes.
18723 (xbm_format, xbm_image_p): Sync with xfns.c.
18724 (reflect_byte): New function.
18725 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
18726 (xbm_load_image): Create bitmaps with a depth of 1.
18727 (init_xfns): Enable XBM images.
18728
18729 2002-03-23 Jason Rumney <jasonr@gnu.org>
18730
18731 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
18732 correctly. Do not pass up_modifier to keyboard buffer.
18733
18734 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
18735
18736 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
18737
18738 * Makefile.in (bootstrapclean): New target.
18739 (bootstrap-temacs, bootstrap-doc): Remove.
18740 (bootstrap-emacs): Use a bog-standard `temacs'.
18741 Don't bother to build a DOC file.
18742
18743 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
18744
18745 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
18746 in temacs even if !CANNOT_DUMP.
18747 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
18748
18749 * alloc.c (check_pure_size): Only output a warning.
18750
18751 2002-03-22 Jason Rumney <jasonr@gnu.org>
18752
18753 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
18754 supported.
18755
18756 * w32term.c (zv_bits): Declare as short, for word alignment.
18757 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
18758 (syms_of_w32term): Define x-use-underline-position-properties.
18759
18760 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
18761 (clear_image_cache): Block input, fix logic, clear matrices in
18762 all frames that share this cache.
18763
18764 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
18765
18766 * emacs.c (main): Update the Copyright year in the blurb printed
18767 by "emacs --version".
18768
18769 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
18770
18771 * xterm.c (XTread_socket): If XK_ISO_Lock and
18772 XK_ISO_Last_Group_Lock are defined, handle keysyms between
18773 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
18774
18775 2002-03-21 Kim F. Storm <storm@cua.dk>
18776
18777 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
18778 menu-bar bindings in keymap and local-map properties _are_ used.
18779 But try keymap property first in accordance with 2002-01-03 patch.
18780 Added comment describing why this is not always reliable.
18781 (tool_bar_items): Ditto for tool-bar.
18782
18783 2002-03-21 Jason Rumney <jasonr@gnu.org>
18784
18785 * w32fns.c (x_clear_image_1): Disable color table code.
18786
18787 2002-03-21 Kim F. Storm <storm@cua.dk>
18788
18789 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
18790 removed the wrong version of the DEFUN macro; fixed it.
18791
18792 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
18793 Fmember rather than Fmemq).
18794 (Fprovide): Check that subfeatures is a list.
18795
18796 * process.c (QCfeature, QCdatagram): Removed variables.
18797 (QCtype, Qdatagram): New variables.
18798 (network_process_featurep): Removed function.
18799 (Fmake_network_process): Removed :feature check.
18800 Use :type 'datagram instead of :datagram t to create a datagram
18801 socket. This allows us to add other connection types (e.g. raw
18802 sockets) later in a consistent manner.
18803 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
18804 supported subfeatures for feature make-network-process.
18805 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
18806 Intern and staticpro QCtype and Qdatagram.
18807 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
18808
18809 * xfns.c: (QCtype): Remove duplicate declaration and
18810 initialization (is now declared in process.c).
18811
18812 * w32fns.c: (QCtype): Remove duplicate declaration and
18813 initialization (is now declared in process.c).
18814
18815 2002-03-21 Richard M. Stallman <rms@gnu.org>
18816
18817 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
18818 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
18819 when jumping to `fail' to avoid undoing reg changes in the
18820 last iteration of the loop.
18821 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
18822
18823 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
18824 Depend on process.h.
18825
18826 2002-03-20 Jason Rumney <jasonr@gnu.org>
18827
18828 Most of the following changes are still conditional on HAVE_IMAGES
18829 which is not set by default on Windows.
18830
18831 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
18832
18833 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
18834 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
18835 (four_corners_best, x_clear_image_1, x_clear_image)
18836 (x_alloc_image_color, postprocess_image)
18837 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
18838 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
18839 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
18840
18841 * w32gui.h (struct XImage): Define.
18842
18843 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
18844 extract mouse co-ordinates.
18845
18846 2002-03-20 Jason Rumney <jasonr@gnu.org>
18847
18848 * w32.c (init_winsock): Dynamically load new server and UDP
18849 socket functions.
18850 (socket_to_fd): New function.
18851 (sys_socket): Use it.
18852 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
18853 (sys_recvfrom, sys_sendto): New wrapper functions.
18854
18855 * process.c (QCfamily, QCfilter): Remove duplicate declaration
18856 and initialization.
18857
18858 * makefile.w32-in (LIBS): Remove $(WSOCK32).
18859
18860 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
18861
18862 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
18863 Don't use "sun" as a variable, it's a predefined constant on Sun
18864 machines.
18865
18866 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18867
18868 * bytecode.c (Fbyte_code): Revert last change.
18869
18870 2002-03-19 Kim F. Storm <storm@cua.dk>
18871
18872 * makefile.w32-in (LIBS): Add $(WSOCK32).
18873 From David Ponce <dponce@voila.fr>.
18874
18875 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18876
18877 * process.c (wait_reading_process_input): Move variables `pname'
18878 and `pnamelen' down where they are used.
18879
18880 * bytecode.c (Fbyte_code): Discard unused computed value to
18881 prevent gcc warning.
18882
18883 * lisp.h (Fplist_member): Add prototype.
18884
18885 2002-03-18 Kim F. Storm <storm@cua.dk>
18886
18887 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
18888 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
18889
18890 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
18891 Remove explicit GNU_LINUX settings for datagram support.
18892
18893 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18894
18895 * process.c (Fmake_network_process): Remove unused variable `sa'.
18896 Doc fix. Add usage:.
18897 (set_socket_options): Remove unused variables `optnum' and `opttype'.
18898
18899 2002-03-17 Richard M. Stallman <rms@gnu.org>
18900
18901 * xdisp.c (cursor_type_changed): New variable.
18902 (redisplay_internal): Redisplay all windows if cursor_type_changed.
18903 Clear it when clearing windows_or_buffers_changed.
18904 (try_cursor_movement, redisplay_window, try_window_id)
18905 (try_window_reusing_current_matrix): Test cursor_type_changed
18906 along with windows_or_buffers_changed.
18907
18908 * window.h (cursor_type_changed): New variable.
18909
18910 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
18911 not update_mode_lines, and always set it to 1.
18912
18913 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
18914 if no frames needed redrawing.
18915
18916 2002-03-17 Kim F. Storm <storm@cua.dk>
18917
18918 The following changes add support for network server processes,
18919 datagram connections, and local (unix) sockets.
18920
18921 * process.h (struct Lisp_Process): New member log.
18922 Doc fix: Member command used to indicate stopped network process.
18923 Doc fix: Member childp contains plist for network process.
18924 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
18925
18926 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
18927 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
18928 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
18929 New variables.
18930 (NETCONN1_P): New macro.
18931 (DATAGRAM_SOCKETS): New conditional symbol.
18932 (datagram_address): New array.
18933 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
18934 (status_message): Use concat3.
18935 (Fprocess_status): Add `listen' status to doc string. Return `stop'
18936 for a stopped network process.
18937 (Fset_process_buffer): Update contact plist for network process.
18938 (Fset_process_filter): Ditto. Don't enable input for stopped
18939 network processes. Server must listen, even if filter is t.
18940 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
18941 New functions.
18942 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
18943 (Fprocess_contact): Added KEY argument. Handle datagrams.
18944 (list_processes_1): Optionally show only processes with the query
18945 on exit flag set. Dynamically adjust column widths. Omit tty
18946 column if not needed. Report stopped network processes.
18947 Identify server and datagram network processes.
18948 (Flist_processes): New optional arg `query-only'.
18949 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
18950 (conv_lisp_to_sockaddr, set_socket_options)
18951 (network_process_featurep, unwind_request_sigio): New helper functions.
18952 (Fprocess_datagram_address, Fset_process_datagram_address):
18953 (Fset_network_process_options): New lisp functions.
18954 (Fopen_network_stream): Removed. Now defined in simple.el.
18955 (Fmake_network_process): New lisp function. Code is based on previous
18956 Fopen_network_stream, but heavily reworked with new property list based
18957 argument list, support for datagrams, server processes, and local
18958 sockets in addition to old client-only functionality.
18959 (server_accept_connection): New function.
18960 (wait_reading_process_input): Use it to handle incoming connects.
18961 Do not enable input on a new connection if process is stopped.
18962 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
18963 (send_process): Handle datagram sockets.
18964 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
18965 network process is indicated by setting command field to t .
18966 (Fprocess_send_eof): No-op if datagram connection.
18967 (Fstatus_notify): Don't read input for a stream server socket or a
18968 stopped network process.
18969 (init_process): Initialize datagram_address array.
18970 (syms_of_process): Intern and staticpro new variables, defsubr new
18971 functions.
18972
18973 2002-03-16 Jason Rumney <jasonr@gnu.org>
18974
18975 * w32fns.c (w32_to_all_x_charsets): Return correct type in
18976 startup case.
18977
18978 2002-03-16 Richard M. Stallman <rms@gnu.org>
18979
18980 * xdisp.c (redisplay_internal, redisplay_windows):
18981 Use list_of_error to call internal_condition_case_1.
18982 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
18983 so as to catch all errors with no possibility of debugger redisplay.
18984 (list_of_error): New variable.
18985 (syms_of_xdisp): Init and staticpro it.
18986
18987 * print.c (print_object): Delete `\ ' from printed rep of frame.
18988
18989 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
18990
18991 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
18992 until its implementation is fixed.
18993
18994 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
18995
18996 * xfns.c (png_load): Remove unused variable `gamma_str'.
18997
18998 2002-03-14 Richard M. Stallman <rms@gnu.org>
18999
19000 * xfns.c (x_real_positions): Handle failure in XQueryTree.
19001
19002 2002-03-14 Miles Bader <miles@gnu.org>
19003
19004 * intervals.c (adjust_for_invis_intang): New function.
19005 (set_point_both): Use `adjust_for_invis_intang' to do most of the
19006 work for dealing with invisible+intangible regions. Do so before
19007 and after both forward and backward movements, to handle both
19008 front-sticky and rear-sticky cases.
19009 * textprop.c (text_property_stickiness): Function moved here from
19010 `editfns.c'.
19011 * intervals.h (text_property_stickiness): New declaration.
19012 * editfns.c (char_property_eq): Function removed.
19013 (text_property_stickiness): Function moved to `textprop.c'.
19014
19015 2002-03-13 Jason Rumney <jasonr@gnu.org>
19016
19017 * config.in: Add STRFTIME_NO_POSIX2.
19018
19019 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
19020 and %OX when underlying strftime does not.
19021
19022 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
19023
19024 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
19025 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
19026 line) to avoid annoying flicker.
19027 (xm_scroll_callback): Get rid of the now unnecessary kludge.
19028 (XTread_socket): Mark it static.
19029
19030 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
19031
19032 2002-03-13 Kim F. Storm <storm@cua.dk>
19033
19034 * puresize.h (BASE_PURESIZE): Increase to 775000.
19035
19036 2002-03-12 Juanma Barranquero <lektu@terra.es>
19037
19038 * editfns.c (syms_of_editfns): Fix typo.
19039
19040 2002-03-12 Gerd Moellmann <gerd@gnu.org>
19041
19042 * xsmfns.c: Include stdio.h because termhooks.h needs it.
19043 Include termopt.h for interrupt_input.
19044
19045 2002-03-11 Andreas Schwab <schwab@suse.de>
19046
19047 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
19048
19049 2002-03-11 Gerd Moellmann <gerd@gnu.org>
19050
19051 * xterm.c (note_mouse_movement): Put code for
19052 x_autoselect_window_p in #if 0.
19053
19054 * lread.c (Fload): Don't assume that message_with_string uses the
19055 string it is given like a C string.
19056
19057 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19058
19059 * xterm.h (x_session_check_input, x_session_initialize): Declare.
19060
19061 * xterm.c (XTread_socket): Add call to x_session_check_input and
19062 x_session_have_connection.
19063 (x_initialize): Add call to x_session_initialize.
19064
19065 * termhooks.h (enum event_kind): Add save_session_event.
19066
19067 * keyboard.c: Add Emacs event save_session_event.
19068
19069 * emacs.c (main): Add call to syms_of_xsmfns.
19070
19071 * lisp.h (syms_of_xsmfns): Declare extern.
19072
19073 * config.in: Add HAVE_X_SM.
19074
19075 * Makefile.in (LIBXT): Add -lSM -lICE
19076 if HAVE_X_SM and not USE_X_TOOLKIT.
19077 (XOBJ): New file xsmfns.c added.
19078
19079 * xsmfns.c: New file for X session management.
19080
19081 2002-03-09 Jason Rumney <jasonr@gnu.org>
19082
19083 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
19084 read-only when setting modified time.
19085
19086 2002-03-08 Gerd Moellmann <gerd@gnu.org>
19087
19088 * xdisp.c (move_it_vertically_backward): At the end of the function,
19089 when moving forward by lines, treat terminal frames specially.
19090
19091 * keyboard.c (echo_char): Make sure to add a separator between
19092 keys even if echo_dash hasn't been called.
19093
19094 * xdisp.c: Use new string macros.
19095 (update_echo_area): Pass number of bytes to message3 instead of
19096 number of chars.
19097 (set_message_1): Don't access a string's size_byte directly.
19098 (decode_mode_spec_coding): Use number of bytes of eoltype string
19099 instead number of chars.
19100
19101 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
19102
19103 2002-03-08 Juanma Barranquero <lektu@terra.es>
19104
19105 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
19106 24-bit.
19107
19108 2002-03-06 Jason Rumney <jasonr@gnu.org>
19109
19110 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
19111
19112 2002-03-06 Gerd Moellmann <gerd@gnu.org>
19113
19114 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
19115 (cancel_echoing, echo_length, echo_truncate): Changed to
19116 work with new kboard definition.
19117 (echo_now): Use message3_nolog instead of message2_nolog.
19118
19119 * alloc.c (mark_kboards): Mark echo_string.
19120
19121 * keyboard.h (ECHOBUFSIZE): Removed.
19122 (struct kboard): Member echoptr removed, member echobuf renamed
19123 to echo_string.
19124
19125 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
19126 message3 instead of message2 to display the message using STRING's
19127 text properties.
19128
19129 2002-03-05 Andreas Schwab <schwab@suse.de>
19130
19131 * xdisp.c (hscroll_margin): Change to EMACS_INT.
19132
19133 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
19134
19135 * frame.c (default-frame-alist): Explain that setting it doesn't
19136 affect existing frames.
19137
19138 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
19139
19140 * indent.c (skip_invisible): Fix my brain fart.
19141
19142 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
19143
19144 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
19145
19146 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
19147 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
19148 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
19149 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
19150 and variables to use EMACS_INT instead of just int.
19151
19152 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
19153
19154 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
19155
19156 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
19157 environment, pass it down with corrected value.
19158
19159 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19160
19161 * lread.c (read_filtered_event): Do not call start_hourglass
19162 before returning.
19163
19164 2002-03-04 Juanma Barranquero <lektu@terra.es>
19165
19166 * w32term.c (x_display_and_set_cursor): Fix typo.
19167
19168 2002-03-03 Richard M. Stallman <rms@gnu.org>
19169
19170 * fileio.c (Fmake_temp_name): Doc fix.
19171
19172 2002-03-03 Gary Wong <gtw@gnu.org>
19173
19174 * termcap.c [!emacs]: Replace ospeed for building standalone
19175 libtermcap, for binary compatibility.
19176
19177 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
19178
19179 2002-03-03 Richard M. Stallman <rms@gnu.org>
19180
19181 * xrdb.c (file_p): Rename arg `path' to `filename'.
19182
19183 * abbrev.c (Fexpand_abbrev): Increment plist as use count
19184 only if it is an integer.
19185
19186 * xfns.c (png_load): Set screen_gamma based on f->gamma.
19187 If png_get_sRGB gives an answer, call png_set_gamma
19188 using the default image gamma value.
19189
19190 * lread.c (read1): When reading from a file, default string to
19191 multibyte only if it has some multibyte characters.
19192
19193 * print.c (print_object): Output multibyte chars 128...255
19194 using \x even if ! print_escape_multibyte.
19195
19196 * xdisp.c (display_mode_element): Move the places where
19197 bytepos, charpos, this, and lisp_string are set.
19198 Use lisp_string to set bytepos.
19199
19200 * xdisp.c (redisplay_internal):
19201 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
19202
19203 * xdisp.c (display_mode_element): Merge properties specified with
19204 :propertize onto those that come with the string.
19205
19206 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
19207
19208 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
19209 automatic-hscrolling. Users changed.
19210 <hscroll-margin>: Renamed from automatic-hscroll-margin.
19211 Users changed.
19212 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
19213
19214 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
19215
19216 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
19217
19218 2002-03-02 Kim F. Storm <storm@cua.dk>
19219
19220 * window.c (Fminibuffer_selected_window): New function.
19221 (syms_of_window): Defsubr it.
19222
19223 2002-03-01 Kim F. Storm <storm@cua.dk>
19224
19225 * window.h (struct window): New member phys_cursor_width.
19226
19227 * window.c (make_window, replace_window): Init phys_cursor_width.
19228
19229 * xterm.c (x_display_and_set_cursor): Blink box cursor using
19230 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19231
19232 * w32term.c (x_display_and_set_cursor): Blink box cursor using
19233 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
19234
19235 * lisp.h (GCPRO6): New macro.
19236
19237 * process.c (Fopen_network_stream): Use GCPRO6.
19238
19239 2002-03-01 Kim F. Storm <storm@cua.dk>
19240
19241 * process.c (Qconnect, Qfailed): New variables.
19242 (syms_of_process): Intern and staticpro them.
19243 (Fprocess_status): Document connect and failed return values.
19244 [NON_BLOCKING_CONNECT]: New conditional.
19245 (connect_wait_mask, num_pending_connects): New variables.
19246 (status_message): Convert Qfailed status.
19247 (Fopen_network_stream): Added support for non-blocking connect.
19248 New optional args: filter, sentinel, non_blocking. Doc updated.
19249 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
19250 (deactivate_process): Handle pending non-blocking connect.
19251 (wait_reading_process_input): Poll for status of non-blocking
19252 connects. Exec sentinel directly when connect succeeds.
19253 (status_notify): Don't read process output if not yet connected.
19254
19255 2002-02-28 Kim F. Storm <storm@cua.dk>
19256
19257 * window.c: (minibuf_selected_window): Renamed from
19258 Vminibuf_selected_window. Users changed.
19259 (syms_of_window): Staticpro it.
19260
19261 2002-02-26 Kim F. Storm <storm@cua.dk>
19262
19263 The following changes add a new Vminibuf_selected_window variable
19264 which is similar to Vminibuf_scroll_window, but which is only set
19265 on entry to the minibuffer (from a non-minibuffer window):
19266
19267 * window.c: (Vminibuf_selected_window): New variable.
19268 (struct save_window_data): New member minibuf_selected_window.
19269 (Fset_window_configuration): Restore Vminibuf_selected_window.
19270 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
19271 Set minibuf_scroll_window member to nil if minibuf_level is 0.
19272 (compare_window_configurations): Compare minibuf_selected_window.
19273
19274 * window.h: (Vminibuf_selected_window): Declare extern.
19275
19276 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
19277 entry to minibuffer or on entry from a non-minibuffer window.
19278
19279 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
19280 Vminibuf_selected_window instead of Vminibuf_scroll_window.
19281
19282 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
19283 instead of Vminibuf_scroll_window when deciding in which window
19284 the region should be highlighted. Consequently, the region remains
19285 highlighteded even when a completion buffer is also displayed.
19286
19287 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
19288
19289 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
19290
19291 * xselect.c (Qcompound_text_with_extensions): Renamed from
19292 Qcompound_text_no_extensions.
19293 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
19294
19295 2002-02-26 Juanma Barranquero <lektu@terra.es>
19296
19297 * w32proc.c (syms_of_ntproc): Doc fix.
19298
19299 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19300
19301 * intervals.h: Include "dispextern.h" unconditionally.
19302
19303 2002-02-24 Jason Rumney <jasonr@gnu.org>
19304
19305 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
19306 and disp-table.elc.
19307 (lisp): Add emacs-lisp/backquote.elc.
19308
19309 2002-02-24 Kim F. Storm <storm@cua.dk>
19310
19311 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
19312 The validation of the event type was too strict as it didn't
19313 allow string events; buffer names are used in bindings for
19314 menu-bar-select-buffer (see `menu-bar-update-buffers').
19315
19316 2002-02-23 Kim F. Storm <storm@cua.dk>
19317
19318 The following changes rework my patch of 2002-02-06 which
19319 added command remapping by entering the commands directly into
19320 the keymaps. Now, command remapping uses an explicit `remap'
19321 prefix in the keymaps, i.e. [remap COMMAND].
19322
19323 * keymap.c (Qremap, remap_command_vector): New variables.
19324 (is_command_symbol): Remove function.
19325 (Fdefine_key): No longer accept a symbol for KEY.
19326 Added validation of [remap COMMAND] argument for KEY.
19327 The DEF is no longer required to be a symbol when remapping a command.
19328 (Fremap_command): New function to remap command through keymaps.
19329 (Flookup_key): Perform command remapping initiated by
19330 Fremap_command directly for speed.
19331 (Fkey_binding): Use Fremap_command for command remapping.
19332 (where_is_internal): Handle new command remapping representation.
19333 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
19334 staticpro them. Defsubr Fremap_command.
19335
19336 * keymap.h (Fremap_command): Declare extern.
19337 (is_command_symbol): Remove extern.
19338
19339 * keyboard.c (command_loop_1): Use Fremap_command for command
19340 remapping; now try command remapping for all symbols.
19341
19342 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19343
19344 * coding.h (run_pre_post_conversion_on_str): Add prototype.
19345
19346 2002-02-23 Jason Rumney <jasonr@gnu.org>
19347
19348 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
19349 on the string before encoding it.
19350 (Fw32_get_clipboard_data): Run post-read-conversion on the string
19351 after decoding it.
19352
19353 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
19354
19355 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19356
19357 * w32term.c (enter_timestamp): Remove unused static variable to
19358 prevent warning.
19359
19360 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
19361
19362 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
19363
19364 * w16select.c (Fw16_get_clipboard_data): Fix last change.
19365
19366 * xselect.c (selection_data_to_lisp_data): Fix last change.
19367
19368 2002-02-22 Jason Rumney <jasonr@gnu.org>
19369
19370 * w32term.h (struct w32_output): New member menu_command_in_progress.
19371
19372 * w32menu.c (menubar_selection_callback): Free the menu and
19373 clear the menu_command_in_progress flag.
19374
19375 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
19376 (menu_free_timer): New variable.
19377 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
19378 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
19379 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
19380 menu command is in progress.
19381 <WM_COMMAND>: Set the menu_command_in_progress flag.
19382 Kill any menu_free_timer that is running.
19383
19384 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
19385 Call ExtTextOutA rather than ExtTextOut.
19386
19387 2002-02-22 Eli Zaretskii <eliz@gnu.org>
19388
19389 * puresize.h (BASE_PURESIZE): Increase to 755000.
19390
19391 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19392
19393 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
19394 on the string before encoding it.
19395 (Fw16_get_clipboard_data): Run post-read-conversion on the string
19396 after decoding it.
19397
19398 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
19399
19400 Support for ICCCM Extended Segments in X selections:
19401
19402 * xselect.c <Qcompound_text_no_extensions>: New variable.
19403 (syms_of_xselect): Intern and staticpro it.
19404 (selection_data_to_lisp_data): Run post-read-conversion on decoded
19405 selection text.
19406 (lisp_data_to_selection_data): If next-selection-coding-system is
19407 compound-text-no-extensions, set the type of selection to be
19408 compound-text.
19409
19410 * xterm.h (x_encode_text): Update prototype.
19411
19412 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
19413 callers changed. If SELECTIONP is non-zero, run the
19414 pre-write-conversion function before encoding the selection text.
19415
19416 2002-02-21 Kim F. Storm <storm@cua.dk>
19417
19418 * frame.c (syms_of_frame): Change mouse-highlight default to t.
19419
19420 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
19421 Correct composing of language-change event.
19422
19423 2002-02-20 Kim F. Storm <storm@cua.dk>
19424
19425 * keyboard.c (menu_bar_items): Don't include keymap or local-map
19426 bindings at PT when building menu (the menu is not updated often
19427 enough for this to work reliable).
19428 (tool_bar_items): Likewise.
19429 (current_active_maps): Removed unused (and buggy) function.
19430
19431 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19432
19433 * xfns.c (gif_load): Use correct width and height for GIF images.
19434
19435 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
19436
19437 * floatfns.c (Fatan): Accept an optional second arg and call
19438 atan2 if passed 2 args.
19439
19440 2002-02-18 Jason Rumney <jasonr@gnu.org>
19441
19442 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
19443
19444 2002-02-17 Jason Rumney <jasonr@gnu.org>
19445
19446 * w32term.c (x_autoselect_window_p): New variable.
19447 (syms_of_w32term): DEFVAR_BOOL and initialize it.
19448 (note_mouse_movement): Use it.
19449
19450 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
19451
19452 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
19453
19454 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19455 New variables.
19456 (syms_of_w32fns): Intern and staticpro them.
19457 (x_frame_parms) <"fullscreen">: New parameter.
19458 (x_fullscreen_move, x_set_fullscreen): New functions.
19459 (x_set_frame_parameters): Support Qfullscreen.
19460 (x_real_positions): Save x/y_pixels_diff frame params.
19461 (x_figure_window_size): Support full-screen frames.
19462 (Fx_create_frame): Default the fullscreen parameter.
19463
19464 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
19465 (x_fullscreen_adjust): New functions.
19466 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
19467 fullscreen. Call x_check_fullscreen_move, and set the
19468 want_fullscreen member of output_data.w32
19469 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
19470
19471 * w32term.h: New enum for FULLSCREEN_* constants.
19472 (struct w32_output): New members want_fullscreen, x_pixels_diff,
19473 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
19474 (x-fullscreen-adjust): New prototype.
19475
19476 2002-02-17 Kim F. Storm <storm@cua.dk>
19477
19478 * frame.c (Vmouse_highlight): New variable.
19479 (syms_of_frame): DEFVAR_LISP it.
19480
19481 * frame.h (Vmouse_highlight): Declare extern.
19482
19483 * xterm.h (struct x_display_info): Add mouse_face_hidden.
19484
19485 * xterm.c (disable_mouse_highlight): Removed variable.
19486 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19487 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19488 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
19489 and on after keyboard input.
19490 (x_term_init): Initialize mouse_face_hidden.
19491
19492 * msdos.h (struct display_info): Add mouse_face_hidden.
19493
19494 * msdos.c (disable_mouse_highlight): Removed variable.
19495 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19496 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
19497 (internal_terminal_init): Initialize mouse_face_hidden.
19498 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
19499 and on after keyboard input.
19500
19501 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
19502
19503 * w32term.c (disable_mouse_highlight): Removed variable.
19504 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
19505 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
19506 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
19507 and on after keyboard input.
19508 (w32_initialize_display_info): Initialize mouse_face_hidden.
19509
19510 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
19511
19512 * msdos.c (last_mouse_window): New variable.
19513 (dos_rawgetc): Fix last change--if the mouse is in the same window
19514 as recorded in last_mouse_window, don't select this window.
19515
19516 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
19517
19518 * msdos.c (x_autoselect_window_p): New variable.
19519 (syms_of_msdos): Defvar it.
19520 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
19521 which the last mouse movement occured, unless it is already selected.
19522
19523 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
19524 New variables.
19525 (syms_of_xdisp): DEVFAR them.
19526 (hscroll_window_tree): Use automatic_hscroll_margin and
19527 Vautomatic_hscroll_step to compute the amount of window scrolling.
19528
19529 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19530
19531 * xterm.c (x-autoselect-window): New variable.
19532 (note_mouse_movement): Use it.
19533
19534 * keyboard.c: Do not include "systime.h" twice.
19535
19536 2002-02-15 Andreas Schwab <schwab@suse.de>
19537
19538 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
19539
19540 * alloc.c (NSTATICS): Increase to 1280.
19541
19542 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
19543
19544 * alloc.c (NSTATICS): Bump to 1026.
19545
19546 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
19547 (Vx_super_keysym): New variables.
19548 (syms_of_xterm): DEFVAR_LISP them.
19549 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
19550 variables to determine which keys to use for the various modifiers.
19551
19552 2002-02-13 Kim F. Storm <storm@cua.dk>
19553
19554 * window.c: (Vmode_line_in_non_selected_windows): Removed.
19555 (mode_line_in_non_selected_windows): New variable.
19556 (syms_of_window): DEFVAR_BOOL it.
19557
19558 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
19559 Use mode_line_in_non_selected_windows.
19560 (mode_line_in_non_selected_windows): Declare extern.
19561 (Vmode_line_in_non_selected_windows): Removed extern.
19562
19563 2002-02-13 Richard M. Stallman <rms@gnu.org>
19564
19565 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
19566 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
19567 (Fclear_this_command_keys): Doc fixes.
19568
19569 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
19570 (update_face_from_frame_parameter): Increment face_change_count
19571 and windows_or_buffers_changed to force redisplay using changed faces.
19572
19573 * xdisp.c (QCpropertize): New variable.
19574 (mode_line_proptrans_alist): New variable.
19575 (display_mode_element): New arg PROPS; all calls changed.
19576 Implement this, for strings.
19577 Handle literal output of strings by sharing the
19578 main-line code for strings, using local var `literal'.
19579 Handle :propertize feature.
19580 (syms_of_xdisp): Initialze and staticpro QCpropertize and
19581 mode_line_proptrans_alist.
19582
19583 2002-02-11 Kim F. Storm <storm@cua.dk>
19584
19585 * window.c: (Vmode_line_in_non_selected_windows): New variable.
19586 (syms_of_window): DEFVAR_LISP it.
19587
19588 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
19589 (CURRENT_MODE_LINE_FACE_ID): Use it.
19590 (Vmode_line_in_non_selected_windows): Declare extern.
19591
19592 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
19593 to get mode line face.
19594
19595 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
19596
19597 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
19598 variables; cus-start.el doesn't need them anymore.
19599
19600 2002-02-09 Kim F. Storm <storm@cua.dk>
19601
19602 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
19603 reduction. This fixes a display problem where stray newlines were
19604 inserted in the window (corrected by C-l). Clarified code (IMHO).
19605
19606 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
19607
19608 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
19609
19610 * xdisp.c (display_mode_lines): Fix last change.
19611
19612 2002-02-09 Jason Rumney <jasonr@gnu.org>
19613
19614 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
19615 match each other.
19616 (w32_load_system_font): Prevent Cleartype fonts from loading.
19617 (Fx_show_tip): Ensure tip frames are above other topmost windows.
19618
19619 2002-02-09 Kim F. Storm <storm@cua.dk>
19620
19621 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
19622 (CURRENT_MODE_LINE_HEIGHT): Use it.
19623 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
19624
19625 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
19626 (pos_visible_p, handle_face_prop): Likewise.
19627 (display_mode_lines): Likewise, but for the real selected window.
19628 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
19629
19630 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
19631 in non-selected windows.
19632 (realize_basic_faces): Realize it.
19633 (syms_of_term): Intern and staticpro it.
19634
19635 2002-02-08 Kim F. Storm <storm@cua.dk>
19636
19637 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
19638 Changed mail addresses to emacs-devel@gnu.org.
19639
19640 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
19641
19642 * fileio.c (Fsubstitute_in_file_name): If the file name includes
19643 ~user, and there's no such user, don't discard everything before ~user.
19644
19645 * floatfns.c (Fround): Doc fix.
19646
19647 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19648
19649 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
19650
19651 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
19652
19653 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
19654
19655 2002-02-07 Kim F. Storm <storm@cua.dk>
19656
19657 * keymap.c (where_is_internal): Only check whether definition is
19658 remapped if it fulfills is_command_symbol.
19659
19660 2002-02-07 Andreas Schwab <schwab@suse.de>
19661
19662 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
19663
19664 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
19665
19666 2002-02-06 Kim F. Storm <storm@cua.dk>
19667
19668 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
19669 defining command remapping. Doc updated.
19670 (Flookup_key): Remap command through keymap if KEY is a symbol.
19671 (is_command_symbol): New function.
19672 (Fkey_binding): Use it. New optional argument NO-REMAP.
19673 Doc updated. Callers changed. Perform command remapping via
19674 recursive call unless that arg is non-nil.
19675 (where_is_internal): New argument no_remap. Callers changed.
19676 Call recursively to find original key bindings for a remapped
19677 comand unless that arg is non-nil.
19678 (Fwhere_is_internal): New optional argument NO-REMAP.
19679 Doc updated. Callers changed. Pass arg to where_is_internal.
19680
19681 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
19682 (is_command_symbol): Add prototype.
19683
19684 * keyboard.c (Vthis_original_command): New variable.
19685 (syms_of_keyboard): DEFVAR_LISP it.
19686 (command_loop_1): Set it, and perform command remapping.
19687
19688 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19689
19690 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
19691
19692 2002-02-06 Jason Rumney <jasonr@gnu.org>
19693
19694 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
19695
19696 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
19697
19698 * charset.c (get_charset_id): Use if-else instead of ?:.
19699
19700 2002-02-06 Richard M. Stallman <rms@gnu.org>
19701
19702 * filelock.c (S_ISLNK): Define if not defined.
19703
19704 2002-02-03 Richard M. Stallman <rms@gnu.org>
19705
19706 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
19707
19708 * lread.c (read1): Redesign strategy for force_multibyte and
19709 force_singlebyte. Now is_multibyte records whether read_buffer
19710 is multibyte. Encountering any multibyte character makes it so.
19711
19712 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
19713
19714 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
19715 with the same sequence, map that sequence to f10 rather than f0.
19716
19717 2002-02-03 Andreas Schwab <schwab@suse.de>
19718
19719 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
19720 latter never being defined on GNU/Linux.
19721
19722 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
19723
19724 * xfaces.c (realize_default_face): Don't set the weight and slant of
19725 the default face to Qnormal, unless these attributes are unspecified.
19726
19727 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19728
19729 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
19730 Call cancel_hourglass unconditionally.
19731
19732 * eval.c (Fsignal): Remove duplicated declaration of
19733 the variable `display_hourglass_p'.
19734
19735 2002-01-31 Richard M. Stallman <rms@gnu.org>
19736
19737 * editfns.c (region_limit): Nicer error message.
19738
19739 * coding.c (decode_composition_emacs_mule):
19740 Give up if NCOMPONENT gets too large to index `component'.
19741
19742 * callint.c (check_mark): New arg to specify clearer error message.
19743 Callers changed.
19744
19745 2002-01-27 Richard M. Stallman <rms@gnu.org>
19746
19747 * minibuf.c (Fcompleting_read): Doc fix.
19748
19749 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19750
19751 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
19752 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
19753 Fix doc-strings.
19754
19755 2002-01-26 Richard M. Stallman <rms@gnu.org>
19756
19757 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
19758
19759 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
19760 and scroll_up_aggressively.
19761
19762 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19763
19764 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
19765
19766 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
19767
19768 * textprop.c (Fnext_property_change, Fnext_single_property_change)
19769 (Fprevious_property_change, Fprevious_single_property_change):
19770 Stay within the narrowed-buffer boundaries.
19771
19772 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
19773
19774 * term.c (Ftty_display_color_cells): New function.
19775 (syms_of_term): Defsubr it.
19776 (Ftty_display_color_cells, Ftty_display_color_p): Change the
19777 argument name to DISPLAY. Doc fix.
19778
19779 * dispextern.h: Add prototype for set_tty_color_mode and
19780 tty_setup_colors.
19781
19782 2002-01-24 Jason Rumney <jasonr@gnu.org>
19783
19784 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
19785 If region left to draw is not what was expected, mark the frame as
19786 garbaged.
19787
19788 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
19789 Combine the regions returned by BeginPaint and GetUpdateRect.
19790
19791 2002-01-23 Jason Rumney <jasonr@gnu.org>
19792
19793 * w32term.c (x_update_window_begin): Only hide caret if
19794 w32_use_visible_system_caret is set.
19795 (x_update_window_end): Only show caret if
19796 w32_use_visible_system_caret is set.
19797 (syms_of_w32term): Handle SystemParametersInfo call failing.
19798
19799 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
19800
19801 2002-01-22 Richard M. Stallman <rms@gnu.org>
19802
19803 * unexelf.c (unexec): Define n so as to cause compilation error
19804 for the code where people have often written n instead of nn.
19805
19806 * .gdbinit (hookpost-run): Defined.
19807
19808 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19809
19810 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
19811
19812 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19813
19814 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
19815 if fullscreen is being set.
19816
19817 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19818
19819 * minibuf.c (Fminibuffer_contents)
19820 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
19821 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
19822
19823 2002-01-21 Richard M. Stallman <rms@gnu.org>
19824
19825 * window.c (check_frame_size): Fix minimum height calculation.
19826
19827 2002-01-20 Ken Raeburn <raeburn@gnu.org>
19828
19829 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
19830 height before comparison.
19831 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
19832
19833 2002-01-20 Jason Rumney <jasonr@gnu.org>
19834
19835 * w32term.c (w32_system_caret_width): Remove.
19836 (w32_use_visible_system_caret): New user flag.
19837 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
19838 Windows reports a screen reader running.
19839 (x_update_window_begin): Hide the system caret.
19840 (x_update_window_end): Show the system caret.
19841 (x_display_and_set_cursor): Don't draw a cursor when
19842 w32_use_visible_system_caret is set. Do not adjust width.
19843
19844 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
19845 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
19846 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
19847 the user requests it. Use system default width when creating.
19848 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
19849
19850 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
19851 New window messages.
19852
19853 2002-01-20 Richard M. Stallman <rms@gnu.org>
19854
19855 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
19856
19857 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19858
19859 * doprnt.c (doprnt1): Fix typos in error call.
19860
19861 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
19862
19863 * unexelf.c (unexec) [__sgi]: Support the .got sections.
19864
19865 2002-01-20 Jason Rumney <jasonr@gnu.org>
19866
19867 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
19868 that Windows returns. If a double check fails, try to guess how
19869 ExtTextOut is going to act.
19870
19871 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
19872 in place of stricmp.
19873 (w32_list_synthesized_fonts): Removed.
19874 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
19875 (struct enumfont_t): New element; list.
19876 (enum_font_cb2): List all style and charset variations of a font.
19877 (Fw32_select_font): New optional argument; include_proportional.
19878 Exclude vertical fonts. Exclude proportional fonts unless
19879 include_proportional is non-nil.
19880 (w32_enable_synthesized_fonts): Change to a boolean.
19881 (Fw32_send_sys_command): Doc fix.
19882
19883 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19884
19885 * dispnew.c (update_frame): Move the variable `tem' to the block
19886 where it is used.
19887
19888 2002-01-19 Jason Rumney <jasonr@gnu.org>
19889
19890 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
19891 call to face-set-after-frame-default.
19892
19893 2002-01-18 Richard M. Stallman <rms@gnu.org>
19894
19895 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
19896 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
19897
19898 2002-01-17 Richard M. Stallman <rms@gnu.org>
19899
19900 * window.c (enlarge_window): When exceeding size of parent,
19901 directly delete all the siblings instead of trying to resize it.
19902
19903 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19904
19905 * term.c (set_tty_color_mode): Remove unused variable `tem'.
19906
19907 2002-01-16 Henrik Enberg <henrik@enberg.org>
19908
19909 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
19910
19911 2002-01-16 Kim F. Storm <storm@cua.dk>
19912
19913 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
19914 is invisible. This can happen if cursor is on top line of a
19915 window, and we switch to a buffer with a header line.
19916
19917 * w32term.c (x_erase_phys_cursor): Ditto.
19918
19919 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19920
19921 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
19922 `dont_resize' only when used.
19923
19924 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
19925
19926 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
19927
19928 * xdisp.c (display_mode_element): When computing charpos, depend
19929 on multibyteness of elt, not the text in field.
19930
19931 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19932
19933 * buffer.c (Fkill_all_local_variables):
19934 Increment `update_mode_lines' only once.
19935
19936 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19937
19938 * lisp.h (adjust_after_replace_noundo)
19939 (Fupdate_coding_systems_internal): Add prototypes.
19940
19941 * sound.c (Fplay_sound): Initialize header_size also for :data case.
19942
19943 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
19944
19945 Support for the --color command-line argument and tty-color-mode
19946 frame parameter:
19947
19948 * term.c (tty_default_color_capabilities, tty_setup_colors)
19949 (set_tty_color_mode): New functions.
19950 (term_init): Call tty_default_color_capabilities.
19951 (Qtty_color_mode_alist): New variable.
19952 (syms_of_term): Intern and staticpro it.
19953
19954 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
19955 frames.
19956 (do_switch_frame): For termcap frames, switch the tty
19957 color mode as specified by the frame's parameters.
19958 (Qtty_color_mode): New variable.
19959 (syms_of_frame): Intern and staticpro it.
19960
19961 * emacs.c (USAGE2): Add the --color option.
19962 (standard_args): Ditto.
19963
19964 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19965
19966 * xterm.h (struct x_output): New members want_fullscreen,
19967 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
19968 y_pixels_outer_diff.
19969 New enum for FULLSCREEN_* constants.
19970 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
19971 is NULL.
19972 (x_fullscreen_adjust): Add prototype.
19973
19974 * emacs.c (USAGE2): Add the new full-screen arguments.
19975 (standard_args): Ditto.
19976
19977 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
19978 New variables.
19979 (syms_of_xfns): Intern and staticpro them.
19980 (x_frame_parms) <"fullscreen">: New parameter.
19981 (x_fullscreen_move, x_set_fullscreen): New functions.
19982 (x_set_frame_parameters): Support for Qfullscreen.
19983 (x_real_positions): More accurate computation of the frame position.
19984 (x_figure_window_size): Support full-screen frames.
19985 (Fx_create_frame): Default the fullscreen parameter.
19986
19987 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
19988 (XTread_socket) <Expose>: Call x_check_fullscreen.
19989 <ConfigureNotify>: Don't resize to fullscreen.
19990 Call x_check_fullscreen_move, and set the want_fullscreen member of
19991 output_data.x.
19992
19993 2002-01-13 Jason Rumney <jasonr@gnu.org>
19994
19995 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
19996 for mice with more than 3 buttons.
19997
19998 * w32term.c (parse_button): New parameter xbutton. Callers changed.
19999 (w32_read_socket): Handle new "XBUTTON" messages.
20000
20001 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
20002 (syms_of_w32fns): DEFVAR_BOOL it.
20003 (w32_wnd_proc): Handle new "XBUTTON" messages.
20004
20005 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20006
20007 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
20008
20009 2002-01-13 Andreas Schwab <schwab@suse.de>
20010
20011 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
20012
20013 2002-01-12 Andreas Schwab <schwab@suse.de>
20014
20015 * .gdbinit (xbuffer): Remove address operator since data is now a
20016 pointer.
20017
20018 2002-01-11 Richard M. Stallman <rms@gnu.org>
20019
20020 * insdel.c (adjust_after_replace_noundo): New function.
20021
20022 * coding.c (code_convert_region): Don't copy old text if undo disabled.
20023
20024 2002-01-09 Jason Rumney <jasonr@gnu.org>
20025
20026 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
20027 when checking for multiple frames.
20028
20029 2002-01-08 Richard M. Stallman <rms@gnu.org>
20030
20031 * window.c (delete_window): Rewrite the code for changing the
20032 selected window to handle the case where WINDOW is not a leaf.
20033
20034 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
20035
20036 * process.c (send_process): Set src_multibyte to 1 after the call
20037 top setup_coding_system, not before the call.
20038
20039 2002-01-07 Jason Rumney <jasonr@gnu.org>
20040
20041 * xmenu.c (set_frame_menubar, xmenu_show):
20042 (xdialog_show): Initialize wv->help to Qnil.
20043
20044 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
20045 (w32_dialog_show): Initialize wv->help to Qnil.
20046
20047 2002-01-06 Jason Rumney <jasonr@gnu.org>
20048
20049 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
20050
20051 * w32menu.c (w32_menu_display_help): Revert last change.
20052
20053 * xmenu.c (menu_highlight_callback): Revert last change.
20054
20055 2002-01-06 Andreas Schwab <schwab@suse.de>
20056
20057 * insdel.c (make_gap_larger): Make sure buffer size does not
20058 overflow range of int.
20059
20060 2002-01-05 Jason Rumney <jasonr@gnu.org>
20061
20062 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20063 OVERLAPS_P.
20064
20065 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
20066
20067 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
20068 to the left or to the right of the pointer, put it against
20069 the left screen edge.
20070 (x_frame_parms): Add missing braces around initializer.
20071
20072 * w32term.c (x_setup_relief_colors): Don't compute an image's
20073 background color if it doesn't have a Pixmap.
20074 (notice_overwritten_cursor): Don't depend on
20075 output_cursor and updated_area. Compare pixel coordinates with
20076 window's cursor pixel coordinates.
20077 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20078 Call notice_overwritten_cursor with new arg list.
20079 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20080 unconditionally.
20081 (x_draw_image_relief): Use predefined macro instead of
20082 constant when the value of `tool_bar_button_relief' is negative.
20083
20084 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
20085
20086 2002-01-04 Richard M. Stallman <rms@gnu.org>
20087
20088 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
20089
20090 2002-01-03 Richard M. Stallman <rms@gnu.org>
20091
20092 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
20093 (Fkey_binding): Try the `keymap' property map first.
20094 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
20095 minor mode bindings.
20096
20097 2002-01-03 Kim F. Storm <storm@cua.dk>
20098
20099 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
20100
20101 2002-01-02 Richard M. Stallman <rms@gnu.org>
20102
20103 * keyboard.c (read_key_sequence): Handle the keymap property
20104 before minor mode maps.
20105
20106 * editfns.c (Fformat): Update thissize from field_width
20107 based on the actual width, in the string case.
20108
20109 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20110
20111 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
20112 when used as truth value to prevent gcc warnings.
20113
20114 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
20115 * w32proc.c: Include <config.h>.
20116
20117 2002-01-01 Andreas Schwab <schwab@suse.de>
20118
20119 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
20120 not EMACS_INT, to make them compatible with DEFVAR_INT.
20121 * lisp.h (max_specpdl_size): Adjust declaration.
20122
20123 2002-01-01 Richard M. Stallman <rms@gnu.org>
20124
20125 * print.c (print_object): Test print_escape_nonascii only for
20126 unibyte strings.
20127 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
20128 when outputting to a multibyte buffer.
20129
20130 2001-12-29 Richard M. Stallman <rms@gnu.org>
20131
20132 * print.c (print_object): In multibyte string, use hex escapes.
20133 Use octal only for unibyte strings.
20134 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
20135
20136 * lread.c (read_escape): New arg BYTEREP for reporting whether
20137 escape forces unibyte or multibyte.
20138 (read1): When reading a string, take note of that info.
20139
20140 2001-12-29 Ken Raeburn <raeburn@gnu.org>
20141
20142 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
20143 comparison to test lisp value returned by Fget.
20144
20145 2001-12-29 Richard M. Stallman <rms@gnu.org>
20146
20147 * lisp.h (max_specpdl_size): Add declaration.
20148
20149 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
20150
20151 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
20152 Handle modifier bits. Correct typo in error message.
20153
20154 2001-12-28 Richard M. Stallman <rms@gnu.org>
20155
20156 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
20157 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
20158 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
20159 Update calls to Fdefine_abbrev.
20160 (write_abbrev): Update for changed data format.
20161 Don't list "system" abbrevs.
20162 (Fexpand_abbrev): Update use count with new data format.
20163 (describe_abbrev): Update for changed data format.
20164 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
20165
20166 * config.in (HAVE_MBSINIT): Add #undef.
20167
20168 * strftime.c (mbsinit): Define as no-op if not available.
20169
20170 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
20171 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
20172
20173 * keymap.c (Flookup_key): Error message if key has wrong data type.
20174 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
20175 (exclude_key): New variable.
20176
20177 2001-12-28 Gerd Moellmann <gerd@gnu.org>
20178
20179 * xterm.c (x_setup_relief_colors): Don't compute an image's
20180 background color if it doesn't have a Pixmap.
20181
20182 * xterm.c (notice_overwritten_cursor): Don't depend on
20183 output_cursor and updated_area. Compare pixel coordinates with
20184 window's cursor pixel coordinates.
20185 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
20186 Call notice_overwritten_cursor with new arg list.
20187 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
20188 unconditionally.
20189
20190 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
20191 height of the cursor line to the amount to scroll.
20192
20193 2001-12-27 Richard M. Stallman <rms@gnu.org>
20194
20195 * intervals.c (set_point_both): The position after an invisible,
20196 intangible character is not an acceptable stopping point.
20197
20198 2001-12-27 Ken Raeburn <raeburn@gnu.org>
20199
20200 * window.c (enlarge_window): In new preserve_before code, convert
20201 CURBEG from lisp object to integer before doing arithmetic.
20202
20203 2001-12-27 Richard M. Stallman <rms@gnu.org>
20204
20205 * bytecode.c (Fbyte_code): Undo previous change.
20206
20207 2001-12-26 Kim F. Storm <storm@cua.dk>
20208
20209 * keyboard.c (record_char): Ignore duplicate help-echo events only
20210 separated by mouse-movement. When tracking mouse, only record
20211 first and last mouse-movement event in same window.
20212 Don't record mouse-movement events in keyboard macros.
20213
20214 2001-12-25 Richard M. Stallman <rms@gnu.org>
20215
20216 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
20217 (Fenlarge_window): New arg PRESERVE_BEFORE.
20218
20219 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
20220 instead of Fstring_as_unibyte.
20221
20222 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20223
20224 The following changes remove mocklisp support:
20225
20226 * mocklisp.h, mocklisp.c: Files removed.
20227
20228 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
20229 `Qmocklisp' and `Qmocklisp_arguments'.
20230 Remove prototype of syms_of_mocklisp.
20231
20232 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
20233
20234 * callint.c: Do not include mocklisp.h.
20235 (Fcall_interactively): Do not test for mocklisp case.
20236
20237 * eval.c: Remove variables `Qmocklisp_arguments',
20238 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
20239 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
20240 Do not test for mocklisp case.
20241 (Fwhile): Remove unused variable `tem'.
20242 (syms_of_eval): Remove variable `moclisp-arguments'.
20243
20244 * data.c (wrong_type_argument): Remove mocklisp case.
20245
20246 * doc.c (Fdocumentation): Remove mocklisp case.
20247
20248 * emacs.c (main): Do not call syms_of_mocklisp.
20249
20250 2001-12-21 Richard M. Stallman <rms@gnu.org>
20251
20252 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
20253 to the left or to the right of the pointer, put it against
20254 the left screen edge.
20255
20256 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
20257
20258 * Makefile.in (distclean): Remove .gdbinit if we are building
20259 outside the source tree.
20260
20261 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
20262
20263 * w32.c (emacs_root_dir): New function.
20264
20265 * msdos.c (emacs_root_dir): New function.
20266
20267 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
20268 of the current drive as the fallback for default_directory.
20269
20270 * dired.c (file_name_completion): Run the elements of
20271 completion-ignored-extensions through ENCODE_FILE.
20272
20273 * lisp.h (scmp): Remove prototype, since it's now a static
20274 function private to dired.c.
20275
20276 2001-12-18 Richard M. Stallman <rms@gnu.org>
20277
20278 * dired.c (scmp): Function moved from minibuf.c.
20279 Delete multibyte handling--used only on encoded strings.
20280
20281 * minibuf.c (scmp): Function moved to dired.c.
20282
20283 * fns.c (merge): Add QUIT call.
20284
20285 2001-12-18 Dave Love <fx@gnu.org>
20286
20287 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
20288 language/georgian.el.
20289
20290 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
20291
20292 * Makefile.in (lisp, shortlisp): Synchronize with changes to
20293 lisp/Makefile.in:DONTCOMPILE.
20294
20295 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20296
20297 * xdisp.c (window_box_height): Do not return negative values.
20298 From Gerd Moellmann <gerd@gnu.org>.
20299
20300 * keyboard.c (head_table): Add missing braces around initializer.
20301
20302 * term.c (keys): Likewise.
20303
20304 * xfns.c (x_frame_parms, visual_classes): Likewise.
20305
20306 2001-12-17 Sam Steingold <sds@gnu.org>
20307
20308 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
20309 patch (COMPOSING_P, not COMPOSING).
20310
20311 2001-12-17 Richard M. Stallman <rms@gnu.org>
20312
20313 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
20314
20315 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
20316 before calling decode_coding.
20317
20318 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
20319
20320 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
20321 instead of only for COMPOSITION_DISABLED.
20322
20323 2001-12-16 Richard M. Stallman <rms@gnu.org>
20324
20325 * alloc.c (pure_alloc): After overflow, allocate just a small block.
20326
20327 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
20328
20329 * buffer.h (struct buffer): New field `display_error_modiff'.
20330 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
20331
20332 * window.c (Frecenter): Clear display_error_modiff field.
20333
20334 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
20335 Call redisplay_window, but not if display_error_modiff field says no.
20336 (redisplay_window_error): New function.
20337 (displayed_buffer): New variable.
20338 (redisplay_internal, redisplay_windows): Call the new functions
20339 instead of redisplay_window directly.
20340
20341 2001-12-15 Richard M. Stallman <rms@gnu.org>
20342
20343 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
20344
20345 2001-12-14 Andrew Innes <andrewi@gnu.org>
20346
20347 * makefile.w32-in (EMACSLOADPATH): Define.
20348 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
20349 (bootstrap-temacs): Remove dependency on bootstrap-clean.
20350
20351 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
20352
20353 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
20354 parameter have a numeric value all the time.
20355
20356 * w32fns.c (x_report_frame_params): Likewise.
20357
20358 2001-12-12 Richard M. Stallman <rms@gnu.org>
20359
20360 * fileio.c (Fwrite_region): Doc fix.
20361
20362 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
20363 (redisplay_internal): Call clear_image_cache only for window terminals.
20364
20365 2001-12-12 Gerd Moellmann <gerd@gnu.org>
20366
20367 * xdisp.c (move_it_vertically_backward): Change heuristic
20368 for the case that we didn't move far enough initially.
20369
20370 * window.c (Frecenter): Simplify computation in the case of window
20371 system frames and ARG < 0; use window_box_height.
20372
20373 2001-12-11 Richard M. Stallman <rms@gnu.org>
20374
20375 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
20376 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
20377
20378 2001-12-11 Andrew Innes <andrewi@gnu.org>
20379
20380 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
20381 arg is negative.
20382
20383 2001-12-11 Richard M. Stallman <rms@gnu.org>
20384
20385 * m/hp800.h: Split the __hpux conditional into the parts
20386 that are right for GNU/Linux too and the parts that are not.
20387 Use the former if GNU_LINUX.
20388 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
20389
20390 * s/gnu-linux.h (GNU_LINUX): Defined.
20391
20392 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20393
20394 * macros.c, msdos.c, w16select.c: Change doc-string comments to
20395 `new style' [w/`doc:' keyword].
20396
20397 2001-12-10 Jason Rumney <jasonr@gnu.org>
20398
20399 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
20400 before using.
20401
20402 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20403
20404 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
20405 keyword].
20406
20407 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
20408
20409 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
20410
20411 * s/hpux10.h (srand48): Don't undefine.
20412
20413 2001-12-09 Jason Rumney <jasonr@gnu.org>
20414
20415 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
20416 Add comment to explain where the struct came from.
20417 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
20418 (add_menu_item): Process pop-up menus first to avoid memory leak.
20419 (add_menu_item, w32_menu_display_help): Use `help' field as
20420 Lisp_Object.
20421 (w32_free_submenu_strings): Only free owner-drawn strings.
20422
20423 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20424
20425 * COPYING: Moved back.
20426
20427 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
20428 Add parentheses around && within ||.
20429
20430 * indent.c (compute_motion): Likewise.
20431
20432 * intervals.c (merge_properties_sticky): Likewise.
20433
20434 * coding.c (setup_coding_system, shrink_encoding_region)
20435 (Fdecode_sjis_char): Likewise.
20436
20437 2001-12-07 Andreas Schwab <schwab@suse.de>
20438
20439 * xdisp.c (display_mode_element): Don't read past end of string if
20440 it ends with '%'.
20441
20442 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
20443 can hold.
20444
20445 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
20446 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
20447 type changed to Lisp_Object.
20448 (syms_of_data): DEFVAR_LISP them.
20449
20450 2001-12-07 Richard M. Stallman <rms@gnu.org>
20451
20452 * callproc.c (init_callproc): Set Vdata_directory based on the source
20453 location whenever Emacs was run uninstalled.
20454
20455 2001-12-06 Paul Eggert <eggert@twinsun.com>
20456
20457 * config.in (HAVE_WORKING_VFORK): New #undefs.
20458 * process.c (create_process):
20459 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
20460 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
20461 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
20462 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
20463 * m/intel386.h (HAVE_VFORK): Likewise.
20464 * m/mips-siemens.h (HAVE_VFORK): Likewise.
20465 * m/mips.h (HAVE_VFORK): Likewise.
20466 * s/freebsd.h (vfork): Remove #define.
20467 * s/lynxos.h (HAVE_VFORK): Remove #undef.
20468 * s/usg5-4-2.h: Fix comment about vfork.
20469
20470 2001-12-06 Richard M. Stallman <rms@gnu.org>
20471
20472 * s/hpux10.h (random): Add undef.
20473 (HAVE_RANDOM): Define it just once.
20474
20475 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
20476
20477 * eval.c: Undo last change: the standard syntax is not wanted.
20478
20479 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
20480
20481 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
20482 scroll bars of the frame before deleting the frame itself. If the
20483 frame has a widget, delete the frame with XtDestroyWidget, and do
20484 not call XDestroyWindow before that.
20485
20486 2001-12-06 Kim F. Storm <storm@cua.dk>
20487
20488 * xfns.c (x_report_frame_params): Return actual fringe widths.
20489
20490 * w32fns.c (x_report_frame_params): Return actual fringe widths.
20491
20492 2001-12-05 Andrew Innes <andrewi@gnu.org>
20493
20494 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
20495 excessively large.
20496
20497 * insdel.c (make_gap_larger): New function.
20498 (make_gap_smaller): New function.
20499 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
20500 Call make_gap_smaller if arg is negative.
20501
20502 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
20503
20504 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
20505 Pass a dummy argument when calling interrupt_signal.
20506 (parse_menu_item): Mark disabled items before checking for empty def.
20507 (read_char_minibuf_menu_prompt): Make safety more visible.
20508 (read_key_sequence): Add a `first_unbound' variable.
20509 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
20510 unbound prefix as soon as we can detect it.
20511
20512 * doc.c (Fsnarf_documentation): Add prototype.
20513 (get_doc_string): Handle negative arguments.
20514 (Fdocumentation): Use AREF and ASIZE.
20515 Move the calls to get_doc_string to a single place.
20516 Don't confuse an interactive-spec for a docstring reference.
20517 (Fdocumentation_property): Take advantage of the fact that
20518 get_doc_string now ignores the sign of the docstring position.
20519
20520 * eval.c: Use standard syntax for usage in docstrings.
20521
20522 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20523
20524 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
20525
20526 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20527
20528 * xterm.c (x_draw_image_relief): Use predefined macro instead of
20529 constant when the value of `tool_bar_button_relief' is negative.
20530
20531 2001-12-02 Richard M. Stallman <rms@gnu.org>
20532
20533 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
20534 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
20535
20536 * fileio.c (read_non_regular): Delete Fsignal call.
20537
20538 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
20539
20540 * lisp.h (run_hook_list_with_args): Undo last change.
20541
20542 2001-12-01 Gerd Moellmann <gerd@gnu.org>
20543
20544 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
20545
20546 2001-12-01 Jason Rumney <jasonr@gnu.org>
20547
20548 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
20549
20550 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
20551 [!WM_MOUSELEAVE]: Define.
20552
20553 * w32menu.c (current_popup_menu, get_menu_item_info):
20554 (set_menu_item_info): New vars.
20555 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
20556 (w32_menu_show): Set current_popup_menu.
20557 (add_menu_item): Allocate new strings for owner-drawn menu items
20558 and help strings.
20559 Use owner-draw for disabled menu items again.
20560 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
20561 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
20562
20563 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
20564 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
20565 <WM_EXITMENULOOP>: Free menu strings.
20566 <WM_MOUSELEAVE>: Stop tracking mouse.
20567 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
20568
20569 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
20570 and mouse face.
20571
20572 2001-12-01 Kim F. Storm <storm@cua.dk>
20573
20574 The following changes add left-fringe and right-fringe
20575 frame parameters to adjust fringe widths, or remove one or
20576 both fringes.
20577
20578 * frame.h (struct frame): Remove trunc_area_pixel_width and
20579 trunc_area_cols fields.
20580 (Qleft_fringe, Qright_fringe): Declare.
20581 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
20582
20583 * frame.c (Qleft_fringe, Qright_fringe): New vars.
20584 (syms_of_frame): Initialize them.
20585
20586 * window.c (coordinates_in_window): Handle separate left and right
20587 fringe widths.
20588
20589 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
20590 and fringe_cols fields.
20591 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
20592 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
20593 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
20594 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
20595 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
20596 (x_compute_fringe_widths): Add prototype.
20597
20598 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
20599 fill fringe evenly with small dashes.
20600 (x_draw_fringe_bitmap): Clear background if necessary. Align and
20601 clip the new ZV bitmap to avoid jitter between rows.
20602 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
20603 background. Don't draw fringe bitmaps if fringe width is zero.
20604 (x_compute_fringe_widths): New function.
20605 (x_new_font, x_set_window_size_1): Use it.
20606
20607 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
20608 (x_set_frame_parameters): Process `font' parameter before other
20609 parameters as fringe widths depend on it.
20610 (x_set_fringe_width): New function.
20611 (x_figure_window_size): Use x_compute_fringe_widths.
20612 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
20613 parameters.
20614
20615 * widget.c (set_frame_size): Use x_compute_fringe_widths.
20616 (EmacsFrameSetCharSize): Ditto.
20617
20618 * w32term.h: Merged changes from xterm.h.
20619 * w32term.c: Merged changes from xterm.c.
20620 * w32fns.c: Merged changes from xfns.c.
20621
20622 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20623
20624 * COPYING: Removed.
20625
20626 2001-11-29 Dave Love <fx@gnu.org>
20627
20628 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
20629 extra extra slot.
20630 (detect_coding_mask): Fix call of detect_coding_iso2022.
20631
20632 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20633
20634 * fileio.c (file-name-coding-system)
20635 (default-file-name-coding-system): Doc fix (links to referenced
20636 variables added).
20637
20638 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20639
20640 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
20641 Add dummy uses of gcproN variables.
20642
20643 * category.c (describe_category, describe_category_1)
20644 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
20645 (syms_of_category): Don't defsubr Sdescribe_categories.
20646
20647 2001-11-28 Richard M. Stallman <rms@gnu.org>
20648
20649 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
20650
20651 * Makefile.in (lispdir): New variable, referring to build dir.
20652 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
20653
20654 2001-11-28 Andrew Innes <andrewi@gnu.org>
20655
20656 * w32menu.c (w32_menu_display_help): Actually add the new argument
20657 OWNER.
20658
20659 2001-11-28 Jason Rumney <jasonr@gnu.org>
20660
20661 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
20662 menu items. From David Ponce <dponce@wanadoo.fr>.
20663 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
20664 conditionally.
20665 (w32_menu_display_help): New argument OWNER. Rewritten to store a
20666 help event in the owner frame's keyboard buffer.
20667
20668 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
20669 (Fx_show_tip): Don't subtract last width from row width.
20670
20671 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
20672 (w32_read_socket): Use EQ to compare frames.
20673
20674 2001-11-28 Gerd Moellmann <gerd@gnu.org>
20675
20676 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
20677 OVERLAPS_P.
20678
20679 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20680
20681 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
20682 `gcpro3' and `gcpro4'.
20683
20684 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
20685
20686 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
20687
20688 * ccl.c: Use AREF and ASIZE.
20689
20690 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
20691
20692 * lisp.h (run_hook_list_with_args): Remove.
20693 (LIST_END_P): Fix call to wrong_type_argument.
20694 (make_fixnum_or_float): Use EMACS_INT rather than int.
20695
20696 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
20697
20698 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
20699 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
20700
20701 * eval.c: Use AREF and ASIZE.
20702 (Ffetch_bytecode): Add the file name to the error message.
20703
20704 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
20705 which match the end of the file-name.
20706 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
20707 is not a valid env var, but leave it as is instead.
20708
20709 * keymap.c (access_keymap): Handle t bindings like nil bindings.
20710 Make nil bindings in char-tables transparent.
20711 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
20712
20713 2001-11-26 Richard M. Stallman <rms@gnu.org>
20714
20715 * textprop.c (set_text_properties_1): Allow START, END in either order.
20716 Do nothing if range is empty.
20717
20718 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
20719
20720 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
20721 (clean): Not here.
20722
20723 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20724
20725 * textprop.c (set_text_properties_1): Clearly mark that the
20726 interval should not be empty.
20727
20728 * intervals.c (graft_intervals_into_buffer):
20729 Don't call set_text_properties_1 on an empty interval.
20730
20731 2001-11-25 Richard M. Stallman <rms@gnu.org>
20732
20733 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
20734
20735 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
20736 don't lose the data in it.
20737
20738 2001-11-25 Juanma Barranquero <lektu@terra.es>
20739
20740 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
20741
20742 * buffer.c (Fkill_buffer): Likewise.
20743
20744 * print.c (temp_output_buffer_setup): Likewise.
20745
20746 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
20747
20748 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
20749
20750 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
20751
20752 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
20753 Niemitalo <kon@iki.fi>.
20754
20755 2001-11-25 Jason Rumney <jasonr@gnu.org>
20756
20757 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
20758
20759 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
20760 (Fx_show_tip): Block input during frame creation.
20761 (Fx_show_tip, Fx_hide_tip): Enable.
20762
20763 2001-11-24 Richard M. Stallman <rms@gnu.org>
20764
20765 * lread.c (Fload): Detect recursive load error for more than 3
20766 nestings of the same file.
20767 (Vrecursive_load_depth_limit): Variable deleted.
20768 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
20769
20770 2001-11-24 Jason Rumney <jasonr@gnu.org>
20771
20772 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
20773 mouse position if either left or top is not specified.
20774
20775 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
20776 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
20777 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
20778 (my_create_tip_window): Assign tip_window.
20779 (x_create_tip_frame): Use same defaults as X.
20780 (compute_tip_xy): Remove unused variable. Use full screen width.
20781 (Fx_show_tip): Do not double height. Call ShowWindow directly.
20782
20783 * w32term.c (x_after_update_window_line): Doc fix.
20784 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
20785 frames.
20786 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
20787
20788 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
20789 for all Windowed systems.
20790
20791 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
20792
20793 * msdos.c (IT_clear_screen): If the frame's faces are not yet
20794 realized, use the initial screen colors to clear the screen.
20795
20796 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20797
20798 * textprop.c (Fset_text_properties): Remove unused variables
20799 `unchanged', `prev_changed', `s' and `len'.
20800
20801 * search.c (Freplace_match): Remove unused variable `inslen'.
20802
20803 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
20804
20805 2001-11-22 Jason Rumney <jasonr@gnu.org>
20806
20807 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
20808 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
20809 (my_create_tip_window): New function.
20810 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
20811 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
20812
20813 2001-11-20 Jason Rumney <jasonr@gnu.org>
20814
20815 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
20816 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
20817
20818 * w32fns.c (Vw32_system_coding_system): Remove.
20819 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
20820
20821 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
20822
20823 * fileio.c (Fwrite_region): Move choose_write_coding_system to
20824 after build_annotations.
20825
20826 * syntax.c (describe_syntax): Add dummy arg.
20827 (describe_syntax_1): Update call to describe_vector.
20828
20829 * category.c (describe_category): Add dummy arg.
20830 (describe_category_1): Update call to describe_vector.
20831
20832 * keymap.c (Fdescribe_vector): Add `describer' parameter.
20833 (describe_command, describe_translation): Add dummy second param.
20834 (describe_map): Call elt_describer with two arguments.
20835 (describe_vector_princ): Add `fun' parameter.
20836 Call it instead of the hardcoded `princ'.
20837 (describe_vector): Add arg `args'.
20838 Pass it as a new second argument to elt_describer.
20839
20840 * keymap.h (describe_vector): Update prototype.
20841
20842 * frame.c: Don't include keymap.h any more.
20843 (keys_of_frame): Remove.
20844
20845 * lisp.h (keys_of_frame): Remove declaration.
20846
20847 * emacs.c (main): Don't call `keys_of_frame' any more.
20848
20849 2001-11-14 Andreas Schwab <schwab@suse.de>
20850
20851 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
20852 if defined, 0 otherwise.
20853 (MAP_FAILED): Define if not defined and use it to test mmap failure.
20854 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
20855
20856 2001-11-19 Richard M. Stallman <rms@gnu.org>
20857
20858 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
20859
20860 2001-11-18 Jason Rumney <jasonr@gnu.org>
20861
20862 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
20863 (x_draw_bar_cursor): If the background color of the glyph under
20864 the cursor equals the frame's cursor color, use the glyph's
20865 foreground color for drawing the bar cursor.
20866 (x_after_update_window_line): Clear internal border in different
20867 circumstances.
20868 (w32_set_vertical_scroll_bar): Check for width and height > 0.
20869 (w32_draw_relief_rect): Correct relief by 1 pixel.
20870 (x_set_glyph_string_background_width):
20871 Set extends_to_end_of_line_p if the row's fill_line_p is set and
20872 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
20873 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
20874 if cursor_in_non_selected_windows is false.
20875 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
20876 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
20877 Notice if cursor gets overwritten.
20878 (notice_overwritten_cursor): Renamed from
20879 note_overwritten_text_cursor. Rewritten to take glyph widths
20880 into account, and to take X positions as parameters.
20881 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
20882 around call to x_draw_glyphs.
20883 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
20884 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
20885 color to use for image glyph reliefs.
20886 (x_draw_image_relief): Accept zero tool_bar_button_relief.
20887 (glyph_rect): Remove unused variable `area'.
20888
20889 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
20890 some items.
20891 (x_set_internal_border_width): Set frame garbaged when window
20892 doesn't exist yet.
20893 (Fx_create_frame): Accept zero tool_bar_button_relief.
20894 (x_clear_image_1, four_corners_best, image_background)
20895 (image_background_transparent): New functions.
20896 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
20897 (gs_format): Add `:background' entry.
20898 (lookup_image): Set IMG's background color if specified.
20899 (pbm_load, xbm_load_image, png_load): Set IMG's background field
20900 when appropriate.
20901 (x_clear_image_1): Reset `background_valid' and
20902 `background_transparent_valid' fields.
20903 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
20904 calculating it here. Set IMG's background_transparent field.
20905 (enum xpm_keyword_index): Add XPM_BACKGROUND.
20906 (enum png_keyword_index): Add PNG_BACKGROUND.
20907 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
20908 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
20909 (enum gif_keyword_index): Add GIF_BACKGROUND.
20910 (enum gs_keyword_index): Add GS_BACKGROUND.
20911 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
20912 Pre-calculate image background color where necessary.
20913 (x_create_x_image_and_pixmap, xbm_load, gs_load):
20914 Use display info's n_cbits entry for screen depth.
20915 (Fx_show_tip): Remove unused variables `buffer', `top',
20916 `left', `max_width' and `max_height'.
20917
20918 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
20919
20920 2001-11-18 Gerd Moellmann <gerd@gnu.org>
20921
20922 * puresize.h (BASE_PURESIZE): Increase to 750000.
20923
20924 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20925
20926 * frame.c (Fframe_live_p): Doc fix.
20927
20928 2001-11-18 Richard M. Stallman <rms@gnu.org>
20929
20930 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
20931 (message_dolog_marker3): New static variables hold three markers.
20932 (syms_of_xdisp): Initialize and staticpro them.
20933 (message_dolog): Use message_dolog_marker1..3 instead of
20934 allocating markers each time. Unchain them when done.
20935
20936 2001-11-17 Richard M. Stallman <rms@gnu.org>
20937
20938 * doc.c (Fsnarf_documentation): Doc fix.
20939
20940 2001-11-17 Andreas Schwab <schwab@suse.de>
20941
20942 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
20943
20944 2001-11-17 Richard M. Stallman <rms@gnu.org>
20945
20946 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
20947
20948 2001-11-17 Jason Rumney <jasonr@gnu.org>
20949
20950 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
20951
20952 2001-11-17 Gerd Moellmann <gerd@gnu.org>
20953
20954 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
20955 with invalid position.
20956
20957 2001-11-16 Richard M. Stallman <rms@gnu.org>
20958
20959 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
20960
20961 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
20962 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
20963 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
20964
20965 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
20966
20967 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20968
20969 * fileio.c (build_annotations): Split off the tail.
20970 (build_annotations_2): New fun. Extracted from build_annotations.
20971 (Fwrite_region): Split the call to build_annotations into two
20972 calls to build_annotations and build_annotations_2.
20973
20974 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20975
20976 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
20977 clear_waiting_for_input with argument.
20978
20979 * xterm.h (x_update_cursor): Remove duplicated prototype.
20980
20981 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
20982
20983 * xterm.c (waiting_for_input): Remove unnecessary declaration.
20984
20985 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
20986
20987 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
20988
20989 * fileio.c (choose_write_coding_system): New fun, extracted
20990 from Fwrite_region.
20991 (Fwrite_region): Use it.
20992
20993 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
20994 (funcall_lambda, run_hook_with_args): Make static and add prototype.
20995 (ml_apply, find_handler_clause): Add prototype.
20996
20997 2001-11-16 Eli Zaretskii <eliz@gnu.org>
20998
20999 * config.in: Add #undef HAVE_COFF_H.
21000
21001 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
21002 Required for ISC 4.1.
21003
21004 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
21005
21006 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
21007 Andrew Wiseman <a.wiseman@btclick.com>.
21008
21009 2001-11-16 Kim F. Storm <storm@cua.dk>
21010
21011 The following changes are made to clean up the various internal
21012 references to the fringes to actually use the term `fringe' for
21013 them. Previously, they were called `flags areas', `bitmap areas',
21014 `left/right side of windows', or implicitly as `flags' or
21015 `bitmaps':
21016
21017 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
21018 Comments fixed. Use renamed symbols.
21019
21020 * dispnew.c: Comment fix. Use renamed symbols.
21021
21022 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
21023 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
21024 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
21025
21026 * msdos.c: Comment fix.
21027
21028 * w32fns.c: Use renamed symbols.
21029
21030 * w32term.c: Comment fixes. Use renamed symbols.
21031 (fringe_bitmap_type): Renamed from bitmap_type.
21032 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
21033 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
21034 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
21035
21036 * w32term.h: Comment fixes. Use renamed symbols.
21037 (fringes_extra): Renamed from flags_areas_extra.
21038 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
21039 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
21040 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
21041 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
21042 (FRAME_X_LEFT_FRINGE_WIDTH):
21043 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
21044 (FRAME_X_RIGHT_FRINGE_WIDTH):
21045 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
21046
21047 * widget.c: Use renamed symbols.
21048
21049 * window.c: Comment fixes. Use renamed symbols.
21050 (coordinates-in-window-p): Doc fix.
21051
21052 * xdisp.c: Comment fixes. Use renamed symbols.
21053
21054 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
21055
21056 * xfns.c: Use renamed symbols.
21057
21058 * xterm.c: Comment fixes. Use renamed symbols.
21059 (fringe_bitmap_type): Renamed from bitmap_type.
21060 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
21061 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
21062 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
21063
21064 * xterm.h: Comment fixes. Use renamed symbols.
21065 (fringes_extra): Renamed from flags_areas_extra.
21066 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
21067 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
21068 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
21069 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
21070 (FRAME_X_LEFT_FRINGE_WIDTH):
21071 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
21072 (FRAME_X_RIGHT_FRINGE_WIDTH):
21073 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
21074
21075 2001-11-15 Jason Rumney <jasonr@gnu.org>
21076
21077 * w32menu.c (add-menu-item): Make help_echo and radio buttons
21078 work for most menu items. From David Ponce
21079 <david.ponce@wanadoo.fr>.
21080
21081 2001-11-15 Gerd Moellmann <gerd@gnu.org>
21082
21083 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
21084 Some x_set_* function expect to be called even if old and new
21085 value are equal.
21086
21087 * xdisp.c (build_desired_tool_bar_string): Accept zero
21088 tool_bar_button_relief.
21089
21090 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
21091
21092 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
21093
21094 * xterm.c (x_draw_bar_cursor): If the background color of the
21095 glyph under the cursor equals the frame's cursor color, use
21096 the glyph's foreground color for drawing the bar cursor.
21097
21098 * dispnew.c (direct_output_forward_char): Fix character/byte
21099 position comparison.
21100
21101 2001-11-15 Miles Bader <miles@gnu.org>
21102
21103 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
21104 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
21105 Update arguments to find_field.
21106 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
21107 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
21108 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
21109 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
21110
21111 2001-11-14 Richard M. Stallman <rms@gnu.org>
21112
21113 * editfns.c (Fpropertize): Allow call with 1 arg.
21114
21115 * dispextern.h (image_background, image_background_transparent):
21116 Conditionalize on HAVE_X_WINDOWS.
21117
21118 2001-11-13 Richard M. Stallman <rms@gnu.org>
21119
21120 * print.c (Fprin1_to_string): Doc fix.
21121
21122 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
21123
21124 * floatfns.c (Fceiling, Ffloor): Doc fixes.
21125
21126 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
21127
21128 * fileio.c (Ffile_accessible_directory_p): Doc fix.
21129
21130 * eval.c (syms_of_eval): Doc fix.
21131
21132 * coding.c (syms_of_coding): Doc fix.
21133
21134 * doc.c (Fsnarf_documentation): Doc fix.
21135
21136 * dispnew.c (syms_of_display): Doc fix.
21137
21138 * category.c (Fget_unused_category): Doc fix.
21139
21140 * buffer.c (syms_of_buffer): Doc fixes.
21141
21142 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
21143
21144 * print.c (prin1, print): Doc fix.
21145
21146 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21147
21148 * fontset.h: Remove declarations of variables
21149 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
21150
21151 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
21152 `Vclip_large_size_font'.
21153
21154 2001-11-13 Jason Rumney <jasonr@gnu.org>
21155
21156 * w32fns.c: Doc fix.
21157
21158 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21159
21160 * xfaces.c (Fface_attributes_as_vector): Doc fix.
21161
21162 * fns.c: Doc fix.
21163
21164 * emacs.c: Doc fix.
21165
21166 * coding.c: Doc fix.
21167
21168 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
21169 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
21170 `new style' [w/`doc:' keyword].
21171
21172 2001-11-12 Richard M. Stallman <rms@gnu.org>
21173
21174 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
21175 LeaveNotify events. Only FocusIn and FocusOut do that now.
21176 (x_display_and_set_cursor): Do display hollow cursors in active
21177 minibuffer windows when they are not selected.
21178
21179 2001-11-12 Jason Rumney <jasonr@gnu.org>
21180
21181 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
21182 * w32term.c: Change doc-string comments to `new style'
21183 [w/`doc:' keyword]. Doc fixes.
21184
21185 * w32fns.c: Don't define max.
21186 (Fx_open_connection): Only execute once.
21187
21188 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21189
21190 * ccl.c: Change macros to use do-while block instead of if-else.
21191 Use braces to follow GNU Coding Standards.
21192
21193 2001-11-11 Richard M. Stallman <rms@gnu.org>
21194
21195 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
21196
21197 * lread.c (read_escape): Use end_of_file_error for reporting eof.
21198
21199 * insdel.c (replace_range): Use adjust_markers_for_replace
21200 instead of adjust_markers_for_delete and adjust_markers_for_insert.
21201
21202 * intervals.h (set_text_properties, set_text_properties_1): Declare.
21203
21204 * textprop.c (set_text_properties_1): New subroutine
21205 broken out of set_text_properties.
21206 (set_text_properties): Use set_text_properties_1.
21207
21208 * intervals.c (graft_intervals_into_buffer):
21209 Use set_text_properties_1 to clear out properties.
21210
21211 * search.c (Freplace_match): Use replace_range to insert
21212 and delete. Don't request property inheritance from
21213 surrounding text.
21214
21215 2001-11-10 Jason Rumney <jasonr@gnu.org>
21216
21217 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
21218 vertical fonts. Allow them if face name is explicitly specified.
21219 Do not give up if we find a font that cannot be converted to an xlfd.
21220
21221 2001-11-10 Gerd Moellmann <gerd@gnu.org>
21222
21223 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
21224 instead of malloc/free.
21225
21226 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21227
21228 * xfaces.c (merge_face_vectors): Use braces to follow GNU
21229 Coding Standards.
21230 (Finternal_set_lisp_face_attribute): Likewise.
21231
21232 * buffer.c (Fbury_buffer): Likewise.
21233
21234 * indent.c (current_column_1): Remove unused variable `prev_col'.
21235
21236 * coding.c (encode_coding): Use precomputed value of `src'.
21237 (encode_coding): Remove unused variable `src_end'.
21238 (code_convert_region): Remove unused variables `count'.
21239
21240 2001-11-07 Jason Rumney <jasonr@gnu.org>
21241
21242 * w32term.c (x_display_and_set_cursor): Do not move system caret
21243 if cursor_glyph is NULL.
21244
21245 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21246
21247 * keymap.c (access_keymap): Fix compilation error.
21248
21249 2001-11-07 Miles Bader <miles@gnu.org>
21250
21251 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
21252
21253 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21254
21255 * intervals.c (graft_intervals_into_buffer):
21256 Remove #ifdef'd-out code.
21257 (graft_intervals_into_buffer): Remove unused variable `middle'.
21258
21259 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
21260 code (eval-current-buffer).
21261 Change doc-string comments to `new style' [w/`doc:' keyword].
21262
21263 2001-11-06 Richard M. Stallman <rms@gnu.org>
21264
21265 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
21266
21267 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
21268
21269 * lread.c (read1): Fix behavior with nested backquoting.
21270
21271 * keyboard.c (make_lispy_event): Check integerness and fix
21272 Lisp_Object/int mixup.
21273
21274 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21275
21276 * fns.c (copy_hash_table): Remove unused variable `v'.
21277
21278 * fontset.c (fontset_font_pattern): Remove unused variable
21279 `family_registry'.
21280
21281 * indent.c (current_column_1): Remove unused variable `prev_col'.
21282
21283 2001-11-05 Richard M. Stallman <rms@gnu.org>
21284
21285 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
21286
21287 * buffer.c (Fkill_buffer): Don't delete auto save file
21288 if buffer is modified.
21289
21290 2001-11-05 Andrew Innes <andrewi@gnu.org>
21291
21292 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
21293 CHECK_NUMBER_CDR.
21294
21295 2001-11-05 Richard M. Stallman <rms@gnu.org>
21296
21297 * unexelf.c (unexec): Minor changes; clean up comments.
21298
21299 2001-11-05 Sam Steingold <sds@gnu.org>
21300
21301 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
21302
21303 2001-11-05 Andreas Schwab <schwab@suse.de>
21304
21305 * sound.c (sound_perror): Save errno from being clobbered.
21306
21307 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
21308
21309 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
21310 the program image directly.
21311
21312 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21313
21314 * buffer.h (Fbuffer_local_value): Add prototype.
21315
21316 2001-11-04 Richard M. Stallman <rms@gnu.org>
21317
21318 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
21319 and CHECK_BUFFER.
21320
21321 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
21322 (record_char): Likewise.
21323
21324 * keyboard.c (make_lispy_event): Don't insist a drag event must
21325 move to a different buffer position. Instead, check for moving at
21326 least double_click_fuzz.
21327
21328 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
21329
21330 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
21331
21332 * indent.c (current_column_1, Fmove_to_column): Separate the code
21333 for display-table glyphs from the code for buffer text, to fix
21334 bugs in the former.
21335
21336 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
21337
21338 * buffer.c (Fbuffer_local_value): New function.
21339 (syms_of_buffer): Defsubr it.
21340
21341 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
21342 value of `cursor-in-non-selected-windows'.
21343
21344 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
21345 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
21346 (syms_of_xdisp): Initialize it.
21347
21348 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21349
21350 * xfns.c (Fx_create_frame): Doc fix.
21351
21352 * coding.c: Change doc-string comments to `new style' [w/`doc:'
21353 keyword].
21354
21355 * eval.c (top_level_value, top_level_set): Remove commented and
21356 #ifdef'd-out code.
21357 (Fdefvar): Fix usage in doc-string.
21358
21359 2001-11-03 Richard M. Stallman <rms@gnu.org>
21360
21361 * xfns.c: Include unistd.h, if it exists.
21362
21363 * editfns.c: Move the include of ctype.h after unistd.h.
21364
21365 * gmalloc.c: Test BROKEN_PROTOTYPES.
21366
21367 2001-11-03 Ken Raeburn <raeburn@gnu.org>
21368
21369 * lisp.h (CHECK_STRING_CAR): New macro.
21370 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
21371 treating XCAR and XCDR as lvalues.
21372 (openp): Use CHECK_STRING_CAR.
21373 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
21374
21375 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
21376
21377 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
21378 (SIGMASKTYPE): Define.
21379
21380 * syssignal.h (sigunblock): Don't define if already defined.
21381
21382 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21383
21384 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
21385 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
21386 Fix typos in comments.
21387
21388 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
21389 and #ifdef'd-out code.
21390 Fix and reindent comments.
21391
21392 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
21393
21394 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
21395 argument `i' in macros.
21396
21397 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
21398 `i' in macros.
21399
21400 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
21401 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
21402 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
21403 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
21404 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
21405 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
21406 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
21407 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
21408 in macros.
21409
21410 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
21411 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
21412 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
21413 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
21414 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
21415 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
21416 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
21417 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
21418 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
21419 (remove unused second argument).
21420
21421 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
21422
21423 * syntax.c (describe_syntax): New wrapper.
21424 (Finternal_describe_syntax_value): Rename from describe_syntax.
21425 Don't insert space at front and \n at the end.
21426 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
21427
21428 * regex.c (re_wctype): Try to fix some warnings.
21429 (regcomp, regexec): Don't forget the __restrict.
21430
21431 2001-11-02 Richard M. Stallman <rms@gnu.org>
21432
21433 * textprop.c (Fget_char_property): Doc fix.
21434
21435 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21436
21437 * process.c (Fstart_process): Add usage to doc-string.
21438
21439 * data.c (Fsetq_default): Ditto.
21440
21441 * callint.c (Finteractive): Ditto.
21442
21443 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
21444
21445 * macros.c: Don't include keymap.h any more.
21446
21447 2001-11-01 Richard M. Stallman <rms@gnu.org>
21448
21449 * data.c (Fmake_local_variable): Doc fix.
21450
21451 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
21452 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
21453
21454 * keymap.c (Fdescribe_buffer_bindings): Print character property
21455 bindings along with or instead of the buffer local map.
21456 Make the overriding maps override what they should.
21457
21458 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21459
21460 * window.c (grow_mini_window): Fix typo in comment.
21461
21462 2001-11-01 Gerd Moellmann <gerd@gnu.org>
21463
21464 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
21465 (XTset_vertical_scroll_bar): Likewise.
21466
21467 * xfns.c (x_build_heuristic_mask): Use four_corners_best
21468 instead of IMAGE_BACKGROUND.
21469
21470 * xfns.c (four_corners_best): Reindent.
21471
21472 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
21473 Handle :box so that it is possible to specify sexprs.
21474
21475 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
21476
21477 * s/hpux11.h: New file.
21478
21479 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21480
21481 * emacs.c (USAGE1): Show command line option --no-window-system
21482 instead of --no-windows in usage.
21483 (standard_args): Rename --no-windows to --no-window-system.
21484 (bug_reporting_address): Follow Emacs coding conventions.
21485
21486 * eval.c (Fcommandp): Doc fix.
21487 Change doc-string comments to `new style' [w/`doc:' keyword].
21488
21489 * frame.c (Fframe_live_p): Doc fix.
21490
21491 * buffer.c (selective-display-ellipses): Doc fix.
21492
21493 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21494
21495 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
21496
21497 * xfaces.c (realize_x_face): If C is not a single-byte character,
21498 set the face's colors_copied_bitwise_p instead of the defaulted_p
21499 members which have a different meaning.
21500 (free_face_colors): Do nothing for a face whose colors have been
21501 copied bitwise.
21502
21503 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
21504
21505 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21506
21507 * marker.c, mocklisp.c: Change doc-string comments to `new style'
21508 [w/`doc:' keyword].
21509
21510 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21511
21512 * fns.c (require_unwind): Return Lisp_Object.
21513
21514 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21515
21516 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
21517 (last-input-char): Revert doc-string to be the same as the
21518 doc-string of `last-input-event'.
21519
21520 * xdisp.c: Fix typos in comments.
21521
21522 2001-10-31 Gerd Moellmann <gerd@gnu.org>
21523
21524 * window.c (grow_mini_window): Handle case that the root
21525 window is already smaller than the nominal mininum height.
21526
21527 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
21528
21529 * emacs.c (main): Don't call keys_of_macros any more.
21530
21531 * lisp.h (keys_of_macros): Remove.
21532
21533 * macros.c (keys_of_macros): Remove.
21534
21535 * xfaces.c (Fface_attribute_relative_p): Declare args.
21536
21537 2001-10-30 Jason Rumney <jasonr@gnu.org>
21538
21539 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
21540 (enum_font_cb2): Ignore fonts with vertical orientation.
21541
21542 2001-10-30 Richard M. Stallman <rms@gnu.org>
21543
21544 * keyboard.c (Finput_pending_p): Doc fix.
21545
21546 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21547
21548 * xterm.c (x_after_update_window_line): Don't run the code
21549 clearing in borders for rows whose visible height is 0.
21550
21551 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
21552 resized_p flag is set. If not set, use the much less flickering
21553 method previously used.
21554
21555 * dispnew.c (change_frame_size_1): Set frame's resized_p.
21556
21557 * frame.h (struct frame) <resized_p>: New member.
21558
21559 * lread.c (to_multibyte): Ensure read_buffer is at least twice
21560 as large as the number of bytes to convert.
21561
21562 * lread.c (to_multibyte): New function.
21563 (read1): Use it.
21564
21565 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
21566
21567 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
21568
21569 2001-10-30 Gerd Moellmann <gerd@gnu.org>
21570
21571 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
21572 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
21573 if the row's fill_line_p is set and drawing the last glyph with
21574 DRAW_IMAGE_{RAISED,SUNKEN}.
21575
21576 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
21577
21578 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
21579
21580 * xmenu.c: Include coding.h and charset.h.
21581 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
21582 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
21583 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
21584 Explicitly set wv->help. Use `TRUE' rather than `True'.
21585 (menu_help_callback): Use empty_string.
21586
21587 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
21588 (Fx_popup_dialog): Explicitly init f.
21589 (w32_menu_display_help): Use empty_string.
21590
21591 2001-10-29 Richard M. Stallman <rms@gnu.org>
21592
21593 * fns.c (Frequire): Detect recursive try to require the same
21594 feature 3 or more levels deep, and get error.
21595 (require_unwind): New subroutine.
21596 (require_nesting_list): New variable.
21597 (syms_of_fns): Init and staticpro it.
21598
21599 * print.c (print_object): Clarify indication of insertion type.
21600
21601 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
21602
21603 * coding.c (syms_of_coding): Document that locale-coding-system is
21604 used for decoding input on X.
21605
21606 * window.c (Fscroll_left, Fscroll_right): Doc fix.
21607
21608 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21609
21610 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
21611 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
21612
21613 2001-10-29 Gerd Moellmann <gerd@gnu.org>
21614
21615 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
21616 use NO_CURSOR if cursor_in_non_selected_windows is false.
21617
21618 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
21619 the slant attribute if FRAME is t.
21620
21621 * xfns.c (x_set_internal_border_width): Set frame garbaged
21622 when X window doesn't exist yet.
21623
21624 * xterm.c (x_after_update_window_line): Clear internal border
21625 in different circumstances.
21626
21627 * xterm.c (XTread_socket) <KeyPress>: Don't use
21628 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
21629 <handa@etl.go.jp>.
21630
21631 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
21632
21633 * m/ibms390.h: New file. From Adam Thornton
21634 <athornton@sinenomine.net>.
21635
21636 2001-10-28 Gerd Moellmann <gerd@gnu.org>
21637
21638 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
21639
21640 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
21641 a loop counter.
21642
21643 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21644
21645 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
21646
21647 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
21648 keyword].
21649 Fix typos in comments.
21650
21651 * emacs.c (bug_reporting_address): New function.
21652 Use it when displaying usage message.
21653
21654 * minibuf.c (read_minibuf): Remove unused external declaration of
21655 variable `Qread_only'.
21656
21657 * keymap.c (access_keymap): Remove unused variable `charset'.
21658
21659 2001-10-28 Miles Bader <miles@gnu.org>
21660
21661 * xfaces.c (merge_face_heights): Handle TO being relative as well.
21662 Remove #ifdef'd-out code.
21663 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
21664 (syms_of_xfaces): Initialize them.
21665
21666 2001-10-27 Jason Rumney <jasonr@gnu.org>
21667
21668 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
21669 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
21670 position using the system caret.
21671
21672 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
21673 (w32_system_caret_height, w32_system_caret_x)
21674 (w32_system_caret_y): New variables for tracking system caret.
21675 (w32_initialize): Initialize them.
21676 (x_display_and_set_cursor): Make system caret follow the active cursor.
21677
21678 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
21679 New messages types.
21680
21681 * w32term.c (note_mouse_highlight): Clear old help_echo.
21682
21683 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21684
21685 * xterm.c: Fix typo in a comment.
21686
21687 * emacs.c: Fix typos in comments.
21688 Remove unnecessary spaces.
21689 Change doc-string comments to `new style' [w/`doc:' keyword].
21690 (USAGE2): Fix typos in usage string.
21691
21692 * xterm.c: Fix typo in a comment.
21693
21694 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
21695 emacs.c.
21696
21697 2001-10-27 Gerd Moellmann <gerd@gnu.org>
21698
21699 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
21700 instead of 1/2 line_height in the heuristic for skipping
21701 farther backward when target_y was not reached.
21702
21703 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
21704 Display errno only if non-zero.
21705 (sound_warning): New function.
21706 (vox_configure): Don't treat failing to set sample rate as error.
21707 (various places): Improve error messages.
21708
21709 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
21710
21711 * fileio.c (Faccess_file): Run the argument filename through
21712 Fexpand_file_name, before using it.
21713
21714 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
21715 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
21716
21717 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21718
21719 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
21720
21721 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21722 Fix clearing in the case of scroll bars on the right.
21723
21724 2001-10-26 Juanma Barranquero <lektu@terra.es>
21725
21726 * w32gui.h (XImage): Add a dummy typedef.
21727
21728 2001-10-26 Gerd Moellmann <gerd@gnu.org>
21729
21730 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
21731
21732 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
21733
21734 * frame.c (Fframe_parameter): Fix last change.
21735
21736 * fileio.c: Revert last change (which removed old commented-out
21737 version of expand-file-name). Add a comment that explains why
21738 this old version should not be removed.
21739
21740 2001-10-25 Gerd Moellmann <gerd@gnu.org>
21741
21742 * frame.c (Fframe_parameter): Fix a bug whereby some
21743 ``artificial'' frame parameters, like `minibuffer' were not
21744 obtained by calling Fframe_parameters.
21745
21746 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
21747 cursor differently.
21748
21749 * xdisp.c (move_it_vertically_backward): Compute line height
21750 differently. Add heuristic to try to be more compatible to 20.x.
21751
21752 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
21753
21754 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
21755
21756 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
21757 boolean.
21758
21759 2001-10-25 Miles Bader <miles@gnu.org>
21760
21761 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
21762 BG is a pointer to a structure, not a structure.
21763 (gif_format, png_format): Add missing commas.
21764
21765 2001-10-24 Richard M. Stallman <rms@gnu.org>
21766
21767 * xfaces.c (Fface_attributes_as_vector): New function.
21768 (syms_of_xfaces): Defsubr it.
21769
21770 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21771
21772 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
21773 variable `area'.
21774
21775 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21776
21777 * search.c (scan_newline): Remove unused variable `selective_display'.
21778
21779 2001-10-25 Miles Bader <miles@gnu.org>
21780
21781 * dispextern.h (struct image): Add `background',
21782 `background_valid', and `background_transparent' fields.
21783 (image_background, image_background_transparent): New declarations.
21784 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
21785 * xfns.c (image_background, image_background_transparent)
21786 (four_corners_best): New functions.
21787 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
21788 (gs_format): Add `:background' entry.
21789 (lookup_image): Set IMG's background color if specified.
21790 (pbm_load, xbm_load_image, png_load): Set IMG's background field
21791 when appropriate.
21792 (x_clear_image_1): Reset `background_valid' and
21793 `background_transparent_valid' fields.
21794 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
21795 calculating it here. Set IMG's background_transparent field.
21796 (enum xpm_keyword_index): Add XPM_BACKGROUND.
21797 (enum png_keyword_index): Add PNG_BACKGROUND.
21798 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
21799 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
21800 (enum gif_keyword_index): Add GIF_BACKGROUND.
21801 (enum gs_keyword_index): Add GS_BACKGROUND.
21802 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
21803 Pre-calculate image background color where necessary.
21804 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
21805 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
21806 color to use for image glyph reliefs.
21807
21808 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21809
21810 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
21811 in full-width rows.
21812
21813 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
21814 Fix clearing of area not covered by scroll bar.
21815
21816 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21817
21818 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
21819 and `real_start'.
21820 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
21821 (glyph_rect): Remove unused variable `area'.
21822
21823 2001-10-24 Gerd Moellmann <gerd@gnu.org>
21824
21825 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
21826
21827 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
21828 (row_containing_pos): Take additional argument DY.
21829 Treat rows ending in middle of char differently.
21830 (display_line): Handle tabs on window systems differently.
21831
21832 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
21833 with additional argument.
21834
21835 * dispextern.h (row_containing_pos): Adjust prototype.
21836
21837 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
21838 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
21839 (try_window_id, try_window_reusing_current_matrix)
21840 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
21841 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
21842
21843 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21844
21845 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
21846 gnuemacs).
21847 (HAVE_BOXES): Fix typo in comment.
21848 (push_menu_pane): Fix typo in comment.
21849
21850 * xdisp.c (display_prop_string_p): Remove unused local declaration
21851 of `Qwhen'.
21852 (single_display_prop_string_p): Remove unused local declarations
21853 of `Qwhen' and `Qmargin'.
21854 (string_buffer_position): Remove unused variable `around'.
21855 (store_frame_title): Remove unused variable `width'.
21856
21857 * window.c: Don't define max.
21858 (coordinates_in_window): Remove unused variable `uy'.
21859
21860 * widget.c: Don't define max.
21861
21862 * process.c: Don't define max.
21863 (create_process): Remove unused variable `buffer'.
21864
21865 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21866
21867 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
21868
21869 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
21870
21871 * xfaces.c (Finternal_set_lisp_face_attribute)
21872 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
21873 frame is on a windowed display.
21874
21875 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21876
21877 * dispnew.c (sync_window_with_frame_matrix_rows):
21878 Fix handling of windows which aren't full-width, fix handling
21879 of marginal areas.
21880
21881 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
21882
21883 2001-10-23 Andreas Schwab <schwab@suse.de>
21884
21885 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
21886 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
21887
21888 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21889
21890 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
21891 REAL_END. Notice if cursor gets overwritten.
21892 (notice_overwritten_cursor): Take X positions as parameters.
21893 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
21894 around call to x_draw_glyphs.
21895
21896 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21897
21898 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
21899 instead of C) and usage.
21900
21901 * editfns.c (char-to-string): Fix argument names (use CHAR instead
21902 of C) and usage.
21903
21904 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
21905 `left', `max_width' and `max_height'.
21906
21907 2001-10-23 Gerd Moellmann <gerd@gnu.org>
21908
21909 * xdisp.c (display_line): For a tab continued to the next line,
21910 set row's ends_in_middle_of_char_p.
21911
21912 2001-10-22 Gerd Moellmann <gerd@gnu.org>
21913
21914 * xdisp.c (display_line): Fix computation of continuation lines
21915 width for TABs.
21916
21917 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21918
21919 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
21920 `Qlaplace'.
21921
21922 * fileio.c: Remove unused code.
21923
21924 2001-10-22 Miles Bader <miles@gnu.org>
21925
21926 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
21927 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
21928 Remove `DOC_STRINGS_IN_COMMENTS' cases.
21929
21930 2001-10-21 Jason Rumney <jasonr@gnu.org>
21931
21932 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
21933
21934 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
21935
21936 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
21937 (Finsert_string): Avoid the multi-line string literals warning.
21938
21939 2001-10-22 Miles Bader <miles@gnu.org>
21940
21941 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
21942 (Fdocumentation): Don't use it.
21943 (syms_of_doc): Don't initialize it.
21944
21945 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
21946 * print.c (Fwith_output_to_temp_buffer): Likewise.
21947 * window.c (Fsave_window_excursion): Likewise.
21948 * editfns.c (Fsave_excursion, Fsave_current_buffer)
21949 (Fsave_restriction): Likewise.
21950 * eval.c (Frun_hooks, Frun_hook_with_args)
21951 (Frun_hook_with_args_until_failure)
21952 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
21953 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
21954 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
21955 (Funwind_protect, Fcondition_case): Likewise.
21956 * coding.c (Ffind_operation_coding_system): Likewise.
21957 * keyboard.c (Ftrack_mouse): Likewise.
21958
21959 2001-10-21 Miles Bader <miles@gnu.org>
21960
21961 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
21962 (Fmake_hash_table): Add usage: string to doc string.
21963 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
21964 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
21965 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
21966 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
21967 (Fml_prefix_argument_loop): Likewise.
21968
21969 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21970
21971 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
21972
21973 * sysdep.c (init_sys_modes): Change doc-string comments to `new
21974 style' [w/`doc:' keyword].
21975
21976 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
21977 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
21978 comments to `new style' [w/`doc:' keyword].
21979
21980 2001-10-21 Jason Rumney <jasonr@gnu.org>
21981
21982 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
21983
21984 * w32term.c (remember_mouse_glyph): New function.
21985 (w32_mouse_position): Use it.
21986 (note_mouse_movement): If the mouse moved off the glyph, remember
21987 its new position.
21988
21989 * w32term.h (struct w32_output): Correct spelling of x_compatible.
21990 (w32_display_info): Add mouse_face_overlay.
21991
21992 * w32term.c (notice_overwritten_cursor): Renamed from
21993 note_overwritten_text_cursor. Rewritten to take glyph widths into
21994 account.
21995 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
21996 (fast_find_string_pos): New function.
21997 (fast_find_position): Return the correct vpos. Add parameter
21998 STOP. In the final row, stop before glyphs having STOP as object.
21999 Don't consider glyphs that are not from a buffer.
22000 (fast_find_position) [0]: Add a presumably more correct version
22001 for after 21.1.
22002 (expose_window_tree, expose_frame): Don't compute intersections here.
22003 (expose_window): Do it here instead.
22004 (expose_window_tree, expose_window, expose_line): Return 1 when
22005 overwriting mouse-face.
22006 (expose_window): If W is the window currently being updated, mark
22007 the frame garbaged.
22008 (expose_frame): If mouse-face was overwritten, redo it.
22009 (x_use_underline_position_properties): New variable.
22010 (syms_of_xterm): DEFVAR_BOOL it.
22011 (x_draw_glyph_string): Add comment to use it in future.
22012 (x_draw_glyph_string): Restore clipping after drawing box.
22013 Fix a computation of the underline position.
22014 (w32_get_glyph_string_clip_rect): Minor cleanup.
22015 (x_fill_stretch_glyph_string): Remove an assertion.
22016 (x_produce_glyphs): Don't convert multibyte characters
22017 to unibyte characters in unibyte buffers.
22018 (cursor_in_mouse_face_p): New function.
22019 (x_draw_stretch_glyph_string): Use it to choose a different GC
22020 when drawing a cursor within highlighted text. Don't draw
22021 background again if it has already been drawn.
22022 (x_draw_glyph_string_box): Don't draw a full-width
22023 box just because the glyph row's full_width_p flag is set.
22024 (x_draw_glyphs): Fix computation of rightmost x for
22025 full-width rows.
22026 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
22027 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
22028 change bottom shadow accordingly. Some cleanup.
22029 (x_update_window_end): Handle overwritten mouse face
22030 also for tool bar windows.
22031 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
22032 DRAW is DRAW_IMAGE_RAISED.
22033 (clear_mouse_face): Return 1 if text with mouse face was
22034 actually redrawn. Make the function static.
22035 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
22036 optimize away highlighting if we pass over that same overlay again.
22037 (note_mouse_highlight): Call mouse_face_overlay_overlaps
22038 to detect a case where we have to highlight a different region
22039 despite not having left the currently highlighted region.
22040 Set mouse_face_overlay in the x_display_info. Avoid changing the
22041 mouse pointer shape when show_mouse_face has already done it, or
22042 there is no need. Handle mouse-face and help-echo in strings.
22043 (glyph_rect): New function.
22044 (w32_mouse_position): Use it to raise the threshold for mouse
22045 movement event generation.
22046 (w32_initialize_display_info): Initialize the x_display_info's
22047 mouse_face_overlay.
22048 (w32_set_vertical_scroll_bar): Don't clear a zero height
22049 or width area.
22050 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
22051 a widget to zero height.
22052
22053 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
22054 Protect unibyte strings created by replacing their multibyte
22055 equivalents in menu_items.
22056 (w32_menu_show): Don't overwrite an item's name with its key
22057 description in case the description is a multibyte string.
22058 (single_submenu): Some cleanup.
22059
22060 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
22061 (postprocess_image): New function.
22062 (lookup_image): Call it for all image types except PostScript.
22063 (x_kill_gs_process): Call postprocess_image.
22064 (tiff_error_handler, tiff_warning_handler): New functions.
22065 (tiff_load): Install them as handlers.
22066 (x_kill_gs_process): Recognize if someone has cleared the image
22067 cache under us.
22068 (valid_image_p): Protect better against invalid image
22069 specifications. Previous code could signal an error.
22070 (Fx_hide_tip, Fshow_tip): Doc fix.
22071 (Fv_max_tooltip_size): New variable.
22072 (syns_of_xfns): DEFVAR_LISP it.
22073 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
22074 window buffer to *tip* right after creating the frame. Set frame's
22075 window_width. Use a maximum tooltip size specified by
22076 Vx_max_tooltip_size, if that has valid contents.
22077 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
22078 Make sure the tooltip is completely visible.
22079 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
22080 (Fx_create_frame): Adjust the frame's height for presence
22081 of the tool bar before calling x_figure_window_size.
22082 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
22083 when the window gets smaller.
22084 (x_set_foreground_color): Set frame's cursor_pixel.
22085 (x_set_foreground_color, x_set_background_color): Cleaned up.
22086 (x_set_font): Handle case of x_new_fontset returning the same name
22087 as before, although there was a change in fontsets.
22088
22089 2001-10-21 Miles Bader <miles@gnu.org>
22090
22091 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
22092 (Flogxor): Add usage: string to doc string.
22093 * charset.c (Fstring): Likewise.
22094 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
22095 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
22096
22097 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22098
22099 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
22100
22101 * alloc.c: Reindent DEFUNs with doc: keywords.
22102
22103 * abbrev.c (Finsert_abbrev_table_description): Reindent.
22104
22105 * frame.c: Change doc-string comments to `new style' [w/`doc:'
22106 keyword].
22107
22108 See ChangeLog.9 for earlier changes.
22109
22110 ;; Local Variables:
22111 ;; coding: iso-2022-7bit
22112 ;; End:
22113
22114 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
22115 Copying and distribution of this file, with or without modification,
22116 are permitted provided the copyright notice and this notice are preserved.
22117
22118 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4