+1999-11-10 XEmacs Build Bot <builds@cvs.xemacs.org>
+
+ * XEmacs 21.2.20 is released
+
+1999-11-04 Martin Buchholz <martin@xemacs.org>
+
+ * mule-ccl.c (ccl_driver): Warning suppression
+
+1999-11-01 SL Baur <steve@miho.m17n.org>
+
+ * emacs.c (main_1): Guard call to reinit_vars_of_debug when not
+ building a debugged XEmacs.
+
+1999-10-28 Andreas Jaeger <aj@suse.de>
+
+ * src/emacs.c (main_1): Don't set the malloc hooks if using
+ DOUG_LEA_MALLOC.
+
+1999-10-30 Olivier Galibert <galibert@pobox.com>
+
+ * alloc.c (pdump_dump_rtables): Don't forget to dump the last
+ registered type.
+ (pdump): Ditto.
+
+1999-10-25 Olivier Galibert <galibert@pobox.com>
+
+ * emacs.c (main_1): Call reinit_vars_of_scrollbar_x.
+
+ * symsinit.h: Declare reinit_vars_of_scrollbar_x.
+
+1999-10-25 Martin Buchholz <martin@xemacs.org>
+
+ * redisplay.h (CLASS_RESET_CHANGED_FLAGS):
+ (GLOBAL_RESET_CHANGED_FLAGS):
+ (CLASS_REDISPLAY_FLAGS_CHANGEDP):
+ (RESET_CHANGED_SET_FLAGS):
+ Fix C++ compile errors/warnings.
+ These macros were just a tad too clever.
+
+ * process-unix.c (unix_open_network_stream):
+ * objects-x.c (allocate_nearest_color):
+ * mule-charset.c (vars_of_mule_charset):
+ * fileio.c (Ffile_truename):
+ * file-coding.c (vars_of_file_coding):
+ Fix compile errors/warnings.
+
+ * alloc.c (xstrdup): Use fact that memcpy returns its first arg.
+ (allocate_lisp_storage): Simplify.
+
+1999-10-24 Olivier Galibert <galibert@pobox.com>
+
+ * conslots.h: Add defines with first and last slot names.
+ * bufslots.h: Add defines with first and last slot names.
+
+ * buffer.c (common_init_complex_vars_of_buffer): Renamed from
+ reinit_complex_vars_of_buffer
+ (reinit_complex_vars_of_buffer): Reset the slots to the dumped
+ value.
+ (complex_vars_of_buffer): Dump the slots values.
+
+ * console.c (common_init_complex_vars_of_console): Renamed from
+ reinit_complex_vars_of_console
+ (reinit_complex_vars_of_console): Reset the slots to the dumped
+ value.
+ (complex_vars_of_console): Dump the slots values.
+
+ * alloc.c: Rename reloc_table to pdump_reloc_table, rt_list to
+ pdump_rt_list and move them at the beginning of the file.
+ (gc_sweep): Unmark pdumped objects after the sweep phase.
+ (pdump_dump_rtables): Change a bare 256 to
+ last_lrecord_type_index_assigned. Add a separator between the
+ adresses or lrecords and the ones of C structs in the dump file.
+ (pdump_load): Cope with the new separator and the renamings. Stop
+ looking for the hash tables list after it has been found (duh!).
+
+1999-10-24 Robert Bihlmeyer <robbe@orcus.priv.at>
+
+ * sound.c: support HAVE_ESD_SOUND
+
+ * miscplay.c:
+ * miscplay.h:
+ * linuxplay.c: Move large part of linuxplay to generalized file
+ miscplay. Make it platform independent.
+
+ * esd.c: New file
+
+1999-10-24 Adrian Aichner <aichner@ecf.teradyne.com>
+
+ * lisp.h (Dynarr_declare): Fix boo-boo.
+
+1999-10-24 Olivier Galibert <galibert@pobox.com>
+
+ * process-unix.c (allocate_pty): Fix HAVE_GETPT.
+ * process.h: Ditto.
+
+1999-10-24 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * redisplay.c (start_with_line_at_pixpos): Remove assert(cur_elt
+ >=0). Handle the cur_elt == 0 case.
+
+1999-10-24 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * unexelf.c: Merge Martin's c++ fixes back in
+
+1999-10-20 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * unexelf.c (unexec): Only copy the global offset
+ table from memory on sgi machines.
+
+1999-08-13 Alexandre Oliva <oliva@dcc.unicamp.br>, Vin Shelton <acs@xemacs.org>
+
+ * unexelf.c: Enable GNU/Linux/alpha to build with gcc 2.95 by
+ adding support for an sbss section. Get IRIX 5.2 to build using
+ unexelf.c.
+
+ * m/iris4d.h: Use unexelf.o for unexec.
+
+ * m/iris5d.h: Use unexelf.o for unexec.
+
+1999-10-24 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * unexelf.c: Revert to 21.1 version
+
+1999-08-28 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * window.c (Fwindow_truncated_p): New function.
+
+1999-08-25 Jonathan Marten <jonathan.marten@uk.sun.com>
+
+ * window.c (window_truncation_on): Always return 0 for minibuffer
+ windows, to enable auto scrolling.
+
+1999-10-24 Neal Becker <nbecker@fred.net>
+ * process.h: Unix98 PTY support
+
+1999-10-17 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * fileio.c (Ffile_truename): Do proper mule decoding on
+ the argument to xrealpath()
+
+1999-08-19 Stephen Tse <stephent@sfu.ca>
+
+ * process-unix.c (unix_open_network_stream): Add udp network
+ support; rename variable Qtcpip to Qtcp, parameter family to
+ protocol for consistency with Qudp.
+
+ * process-nt.c (nt_open_network_stream): Rename variable Qtcpip to
+ Qtcp, parameter family to protocol for consistency with Qudp.
+
+ * process.c (global_variables): Add a new variable Qudp for udp
+ network support; rename variable Qtcpip to Qtcp for consistency
+ with Qudp.
+ (Fopen_network_stream_internal): Rename parameter FAMILY to
+ PROTOCOL for consistency; fix a minor typo and add an explanation
+ in docstring for udp programming.
+ (Fopen_multicast_group_internal): Fix a minor typo in docstring.
+ (syms_of_process): Add a new variable Qudp for udp network
+ support; rename variable Qtcpip to Qtcp for consistency with Qudp.
+
+ * process.h (extern_variables): Add a new variable Qudp for udp
+ network support; rename variable Qtcpip to Qtcp for consistency
+ with Qudp.
+
+ * procimpl.h: Add a new variable Qudp for udp network support;
+ rename variable Qtcpip to Qtcp for consistency with Qudp.
+ (struct process_methods): Rename parameter family to protocol.
+
+
+1999-10-24 Olivier Galibert <galibert@pobox.com>
+
+ * alloc.c (pdump_make_hash): Divide pointers by 8 for a better hash.
+
+1999-10-23 Olivier Galibert <galibert@pobox.com>
+
+ * lrecord.h (struct lrecord_header): Removed dumped flags.
+
+ * dynarr.c: Use DUMPEDP instead of dumped flag.
+
+ * lisp.h (DUMPEDP): Added. Removed dumped flag from dynarr.
+
+ * alloc.c: Removed hash_next linked list pointer.
+
+ * *.c *.h: Removed markobj and mark_object parameters, removed GC_
+ and XGC macros.
+
+1999-10-14 Andy Piper <andy@xemacs.org>
+
+ * redisplay-x.c (x_output_shadows): fix dodgy maths for border
+ calculations.
+
+ * gutter.c (output_gutter): be more accurate about the area to be
+ cleared since X seems to manage to do the clear after drawing the
+ border.
+
+ * redisplay.h (RESET_CHANGED_FLAGS): new macro for setting
+ redisplay flags as a group.
+ (RESET_CHANGED_SET_FLAGS): ditto.
+ (CLASS_RESET_CHANGED_FLAGS): ditto.
+ (GLOBAL_RESET_CHANGED_FLAGS): ditto.
+ (REDISPLAY_FLAGS_CHANGEDP): new macro for testing redisplay flags
+ as a group.
+ (CLASS_REDISPLAY_FLAGS_CHANGEDP): ditto.
+ (GLOBAL_REDISPLAY_FLAGS_CHANGEDP): ditto.
+
+ * redisplay.c (redisplay_frame): use CLASS_RESET_CHANGED_FLAGS
+ instead of setting flags individually.
+ (redisplay_device): ditto CLASS_REDISPLAY_FLAGS_CHANGEDP.
+ (redisplay_device): ditto.
+ (redisplay_device): ditto CLASS_RESET_CHANGED_FLAGS.
+ (redisplay_without_hooks): ditto GLOBAL_REDISPLAY_FLAGS_CHANGEDP.
+ (redisplay_without_hooks): ditto CLASS_REDISPLAY_FLAGS_CHANGEDP.
+ (redisplay_without_hooks): ditto.
+ (redisplay_without_hooks): ditto GLOBAL_RESET_CHANGED_FLAGS.
+
+ * redisplay-x.c (x_output_string): unmap subwindows in the area.
+ (x_output_blank): ditto.
+
+ * redisplay-output.c (redisplay_output_display_block): don't unmap
+ subwindows in case layout optimization can avoid it.
+ (redisplay_output_subwindow): unmap subwindows in the area.
+ (redisplay_output_layout): optimize the output of layouts - only
+ output glyphs that have changed if nothing else of redisplay
+ significance has occurred.
+ (redisplay_output_pixmap): change args to
+ redisplay_clear_clipped_region.
+ (redisplay_clear_clipped_region): allow the clipped region to be
+ cleared of all subwindows except the one passed in.
+
+ * redisplay-msw.c (mswindows_output_blank): unmap subwindows in
+ the area.
+ (mswindows_output_cursor): ditto.
+ (mswindows_output_string): ditto.
+
+ * gutter.c (calculate_gutter_size): if the window buffer is nil
+ then don't continue.
+ (update_frame_gutters): be more lenient about when we actually
+ update the gutter. Layout optimization makes this
+ non-costly. Cache redisplay flags that we want to temporarily
+ ignore.
+
+ * glyphs.c (Fglyph_animated_timeout_handler): handle image
+ specific timeouts rather than iterating over the instance cache.
+ (glyph_animated_timeout_mapper): deleted.
+ (add_glyph_animated_timeout): use a weak list to hold onto the
+ image so that it can be GC'ed.
+ (disable_glyph_animated_timeout): disable a specific timeout.
+ (vars_of_glyphs): disable-animated-pixmaps is a new boolean for
+ controlling whether pixmaps are animated or not.
+
+ * glyphs-msw.c (mswindows_finalize_image_instance): make sure the
+ image timeout gets disabled when the image gets freed.
+
+ * glyphs-eimage.c (gif_instantiate): remove meaningless
+ comment. Cope with timeouts specified in the gif extension block.
+
+ * event-msw.c (vars_of_event_mswindows): new variable
+ mswindows-meta-activates-menu.
+ (mswindows_wnd_proc): only goto defproc with VK_MENU if the user
+ wants it.
+
+ * glyphs-x.c (x_finalize_image_instance): delete mask first so
+ that we can compare with image.
+
+1999-10-14 Jonathan Harris <jhar@tardis.ed.ac.uk>
+
+ * event-msw.c (mswindows_key_to_emacs_keysym):
+ Recognise keypad keys as different from normal keys.
+
+1999-10-14 Didier Verna <didier@xemacs.org>
+
+ * glyphs-x.c (x_finalize_image_instance): avoid freeing null pixmaps.
+
+1999-10-10 Olivier Galibert <galibert@pobox.com>
+
+ * symbols.c (init_symbols_once_early): dump Vquit_flag.
+
+ * symsinit.h: Updated.
+
+ * ntproc.c (vars_of_ntproc): Use defsymbol.
+
+ * emacs.c (main_1): Updated reinit calls.
+
+ * lisp.h: Removed Fpurecopy and pure_put declarations.
+ * fns.c: Removed pure_put.
+
+ * eval.c (Fdefvar): pure_put -> Fput
+ (Fdefconst): Ditto.
+ * frame-x.c (init_x_prop_symbols): Ditto.
+ * symbols.c (deferror): Ditto.
+
+ * alloc.c (Fmake_byte_code): Remove Fpurecopy call.
+ * buffer.c (vars_of_buffer): Ditto.
+ * bytecode.c (Ffetch_bytecode): Ditto.
+ (optimize_compiled_function): Ditto.
+ * emacs.c (vars_of_emacs): Ditto.
+ * emodules.c (vars_of_module): Ditto.
+ * eval.c (define_function): Ditto.
+ (Fautoload): Ditto.
+ * frame.c (vars_of_frame): Ditto.
+ * intl.c (Fset_domain): Ditto.
+ * lread.c (load_force_doc_string_unwind): Ditto.
+ * menubar.c (vars_of_menubar): Ditto.
+ * minibuf.c (reinit_complex_vars_of_minibuf): Ditto.
+
+ * debug.c (reinit_vars_of_debug): Extracted.
+ * device-x.c (reinit_vars_of_device_x): Ditto.
+ * emodules.c (reinit_vars_of_module): Ditto.
+ * font-lock.c (reinit_vars_of_font_lock): Ditto.
+ * glyphs-widget.c (reinit_vars_of_glyphs_widget): Ditto.
+ * glyphs.c (reinit_vars_of_glyphs): Ditto.
+ * gui-x.c (reinit_vars_of_gui_x): Ditto.
+ * insdel.c (reinit_vars_of_insdel): Ditto.
+ * menubar-x.c (reinit_vars_of_menubar_x): Ditto.
+ * minibuf.c (reinit_complex_vars_of_minibuf): Ditto.
+ * mule-wnnfns.c (reinit_vars_of_mule_wnn): Ditto.
+ * print.c (reinit_vars_of_print): Ditto.
+ * redisplay.c (reinit_vars_of_redisplay): Ditto.
+ * select-x.c (reinit_vars_of_xselect): Ditto.
+ * undo.c (reinit_vars_of_undo): Ditto.
+
+1999-10-10 Olivier Galibert <galibert@pobox.com>
+
+ * symsinit.h: Updated declarations, see other ChangeLog entries.
+
+ * redisplay.c (init_redisplay): Ensure proper reinitialisation.
+
+ * lrecord.h (XD_DYNARR_DESC): Introduce XD_INT_RESET and use it.
+
+ * glyphs.c: Add the ii_keyword_entry and related descriptions.
+ Fix the image_instantiator_methods one.
+
+ * file-coding.c: Plonk all data that needs to be dumped in a
+ dynamically allocated structure.
+
+ * extents.c (reinit_vars_of_extents): Extracted from
+ vars_of_extents.
+
+ * event-stream.c (vars_of_event_stream): Don't staticpro when
+ pdump_wire is enough.
+
+ * event-msw.c (reinit_vars_of_event_mswindows): Extracted from
+ vars_of_event_mswindows.
+
+ * event-Xt.c (reinit_vars_of_event_Xt): Extracted from
+ vars_of_event_Xt.
+
+ * eval.c (vars_of_eval): Don't staticpro when pdump_wire is enough.
+
+ * emacs.c (main_1): Added some reinit calls.
+
+ * device-x.c (reinit_console_type_create_device_x): Extracted from
+ console_type_create_device_x.
+
+ * console.h: Declare the console_type_entry_dynarr description.
+
+ * console.c: Unstatic the console_type_entry_dynarr description.
+
+ * alloc.c: Removed some dubious comments. Handle XD_INT_RESET.
+
+1999-10-07 Olivier Galibert <galibert@pobox.com>
+
+ * symsinit.h: Updated declarations, see other ChangeLog entries.
+
+ * minibuf.c (reinit_complex_vars_of_minibuf): Extracted from
+ complex_vars_of_minibuf.
+
+ * lrecord.h: Removed XD_PARENT_INDIRECT (unused and
+ unimplemented), added XD_LO_LINK.
+
+ * lisp.h (pdump_wire_list): Add declaration.
+
+ * glyphs.h (INITIALIZE_DEVICE_IIFORMAT): Fix bug found by Andy.
+ (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT): Fix stupid bug.
+ (REINITIALIZE_IMAGE_INSTANTIATOR_FORMAT): Remove, useless once the
+ stupid bug fixed.
+
+ * glyphs.c (reinit_image_instantiator_format_create): Remove.
+
+ * glyphs-x.c (reinit_image_instantiator_format_create_glyphs_x):
+ Remove.
+
+ * glyphs-widget.c
+ (reinit_image_instantiator_format_create_glyphs_widget): Remove.
+
+ * glyphs-msw.c
+ (reinit_image_instantiator_format_create_glyphs_mswindows):
+ Remove.
+
+ * glyphs-eimage.c
+ (reinit_image_instantiator_format_create_glyphs_eimage): Remove.
+
+ * frame.c (Fmake_frame): Don't reset the face cache when using the
+ stream device.
+
+ * file-coding.c: Dumped the_codesys_prop_dynarr and added all
+ relevant descriptions.
+
+ * events.c (reinit_vars_of_events): Extracted from vars_of_events.
+
+ * eval.c: The subr is _not_ a lcrecord.
+
+ * emacs.c (main_1): Call vars_of_specifier early before any
+ specifier creation (e.g in vars_of_glyphs, at least). Remove the
+ useless reinit_image_instantiator_format*. Add
+ reinit_vars_of_events and reinit_complex_vars_of_minibuf. Add
+ calls to lstream_type_create* and process_type_create*.
+
+ * elhash.c: Dump Vall_weak_hash_tables correctly.
+
+ * data.c: Dump Vall_weak_lists correctly.
+
+ * console.c: Fix description.
+
+ * console-stream.c (init_console_stream): Do initializations
+ correctly in the pdump case.
+
+ * chartab.c: Fix description. Dump Vall_syntax_tables correctly.
+ (Fcopy_char_table): Link into Vall_syntax_tables.
+
+ * alloc.c (pdump_wire_list): Added.
+ (Fgarbage_collect): Fix loop in stats couting missing the last
+ lrecord type.
+ (pdump_register_sub): Added XD_LO_LINK.
+ (pdump_dump_data): Ditto. Fixed XD_LO_RESET_NIL forgttting the
+ counter.
+ (pdump_reloc_one): Ditto.
+ (pdump_scan_by_alignement): Use last_lrecord_type_index_assigned
+ instead of 256.
+ (pdump_dump_wired): Added lists.
+ (pdump): Use last_lrecord_type_index_assigned instead of 256.
+ Dump last_lrecord_type_index_assigned value. Fix minor bugs.
+
+1999-10-07 Andy Piper <andy@xemacs.org>
+
+ * glyphs-msw.c (mswindows_finalize_image_instance): zero out
+ bitmap slices.
+
+ * glyphs-x.c (x_finalize_image_instance): fix FMW problem.
+
+1999-10-06 Andy Piper <andy@xemacs.org>
+
+ * elhash.c (resize_hash_table): Correct reference to lrecord_header.
+
+1999-10-06 Damon Lipparelli <lipp@primus.com>
+
+ * elhash.h: forward declare Lisp_Hash_Table.
+
+1999-10-06 Andy Piper <andy@xemacs.org>
+
+ * glyphs.c (Fset_image_instance_property): mark glyphs as dirty
+ after setting an image instance property.
+
+1999-10-05 Andy Piper <andy@xemacs.org>
+
+ * gutter.c (update_frame_gutters): output gutters if
+ windows_changed is set. This is the only way of catching changes
+ in selected window which obviously can affect the specifiers.
+
+ * redisplay.c: new state flags, subwindows_state_changed and
+ subwindows_state_changed set.
+ (redisplay_window): use them.
+ (redisplay_device): ditto.
+ (redisplay_without_hooks): ditto.
+ (redisplay_frame): ditto. Reset subwindow cachels if
+ subwindows_changed is set.
+ (redisplay_window): call mark_glyph_cachels_as_clean after
+ redisplaying.
+
+ * redisplay-x.c (x_output_x_pixmap): select correct
+ pixmap image for display depending on the currently selected
+ slice.
+
+ * redisplay-output.c (compare_runes): check dirtiness when
+ checking RUNE_DGLYPH runes.
+ (compare_display_blocks): relax invalidation of display blocks
+ since we can now detect whether individual glyphs have changed or
+ not.
+
+ * redisplay-msw.c (mswindows_output_dibitmap): select correct
+ bitmap image for display depending on the currently selected
+ slice.
+
+ * glyphs.h (struct Lisp_Image_Instance): add a dirty flag.
+ (IMAGE_INSTANCE_DIRTYP): new macro.
+ (XIMAGE_INSTANCE_DIRTYP): ditto.
+ (MARK_IMAGE_INSTANCE_CHANGED): ditto.
+ (GLYPH_DIRTYP): ditto.
+ (XGLYPH_DIRTYP): ditto.
+ (MARK_GLYPH_CHANGED): ditto.
+ (GLYPH_CACHEL_DIRTYP): ditto.
+ (struct glyph_cachel): add a dirty flag.
+
+ * glyphs.c (update_frame_subwindows): Don't update on
+ glyphs_changed.
+ (glyph_animated_timeout_mapper): new function. Map over the
+ instance cache lookinng for animated images to update.
+ (Fglyph_animated_timeout_handler): new function. Lisp callback for
+ handling animated image timeout events.
+ (disable_glyph_animated_timeout): new function. Add the animated
+ image timeout.
+ (disable_glyph_animated_timeout): new function. Remove the
+ animated image timeout.
+ (syms_of_glyphs): initialize Qglyph_animated_timeout_handler and
+ friends.
+ (vars_of_glyphs): initialize Vglyph_animated_ticker.
+ (image_instance_equal): add the currently displayed slice.
+ (image_instance_hash): ditto.
+ (allocate_glyph): initialize dirty flag.
+ (glyph_width): rename glyph -> glyph_or_image.
+ (glyph_height_internal): ditto.
+ (glyph_dirty_p): new function. Determine whether the image
+ instance in the domain and/or glyph is dirty.
+ (set_glyph_dirty_p): set the dirtiness.
+ (update_glyph_cachel_data): take dirtiness into account. Pass the
+ image instance we are interested in to glyph_width and friends.
+ (get_glyph_cachel_index): make non-static. Always call
+ update_glyph_cachel_data.
+ (mark_glyph_cachels_as_not_updated): meaningless formatting
+ change.
+ (mark_glyph_cachels_as_clean): new function. Clean dirtiness from
+ glyph cachels.
+
+ * glyphs-x.h (struct x_image_instance_data): change
+ pixmap to a list of pixmaps.
+ (IMAGE_INSTANCE_X_PIXMAP_SLICE): new macro.
+ (IMAGE_INSTANCE_X_PIXMAP_SLICES): ditto.
+ (XIMAGE_INSTANCE_X_PIXMAP_SLICE): ditto.
+ (XIMAGE_INSTANCE_X_PIXMAP_SLICES): ditto.
+
+ * glyphs-x.c (x_finalize_image_instance): make sure multi pixmap
+ images get deleted properly.
+ (init_image_instance_from_x_image): add slices paramater and use
+ it to initialize x_image_instance_data correctly.
+ (image_instance_add_x_image): new function. Add new pixmaps to our
+ set of instantiated pixmaps for an image. Used by animated images.
+ (x_init_image_instance_from_eimage): add a slices
+ parameter. Instantiate all images from the eimage.
+ (x_xpm_instantiate): update use of
+ init_image_instance_from_x_image.
+ (init_image_instance_from_xbm_inline): ditto.
+ (x_initialize_pixmap_image_instance): add slices paramater and use
+ it to allocate x_image_instance_data correctly.
+
+ * glyphs-msw.h (struct mswindows_image_instance_data): change
+ bitmap to a list of bitmaps.
+ (IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE): new macro.
+ (IMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES): ditto.
+ (XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICE): ditto.
+ (XIMAGE_INSTANCE_MSWINDOWS_BITMAP_SLICES): ditto.
+
+ * glyphs-msw.c (init_image_instance_from_dibitmap): add slices
+ paramater and use it to initialize mswindows_image_instance_data
+ correctly.
+ (image_instance_add_dibitmap): new function. Add new bitmaps to
+ our set of instantiated bitmaps for an image. Used by animated
+ images.
+ (mswindows_init_image_instance_from_eimage): add a slices
+ parameter. Instantiate all images from the eimage.
+ (mswindows_xpm_instantiate): update use of
+ init_image_instance_from_dibitmap.
+ (bmp_instantiate): ditto.
+ (init_image_instance_from_xbm_inline): ditto.
+ (mswindows_finalize_image_instance): make sure all the bitmap
+ slices get deleted.
+ (mswindows_initialize_dibitmap_image_instance): add slices
+ paramater and use it to allocate mswindows_image_instance_data
+ correctly.
+
+ * glyphs-eimage.c (jpeg_instantiate): give extra paramter to
+ init_image_instance_from_eimage.
+ (png_instantiate): ditto.
+ (tiff_instantiate): ditto.
+ (gif_instantiate): allocate bitmaps for all gif slices not just
+ the first one.
+
+ * device.h (struct device): add subwindows_state_changed flag.
+ (MARK_DEVICE_SUBWINDOWS_STATE_CHANGED): new macro.
+ (MARK_DEVICE_FRAMES_GLYPHS_CHANGED): ditto.
+
+ * console.h (struct console_methods): add a slice parameter to
+ init_image_instance_from_eimage_method.
+
+ * redisplay.c (create_string_text_block): Allow buffer to be nil
+ without crashing.
+
+1999-09-24 Andy Piper <andy@xemacs.org>
+
+ * glyphs-x.c: only include gui-x.h if we are building with
+ widgets.
+
+ * gui-x.c (vars_of_gui_x): only set popup_up_p if we have popups.
+
+1999-09-28 Lee Kindness <lkindness@csl.co.uk>
+
+ * objects-x.c (allocate_nearest_color): will return 0 (failure)
+ when the colormap is full and the color it has computed to be the
+ 'nearest' has been allocated read/write.
+
+1999-10-02 Olivier Galibert <galibert@pobox.com>
+
+ * search.c (reinit_vars_of_search): Reinit the search cache
+ correctly.
+
+ * elhash.h: Make the description visible. Declare
+ resize_hash_table.
+
+ * elhash.c (resize_hash_table): Extracted from enlarge_hash_table
+ to generalize the hash table reorganization.
+ (reorganize_hash_table): Added.
+ (enlarge_hash_table): Uses resize_has_table.
+
+ * casetab.c (complex_vars_of_casetab): staticpro the mule mirror
+ tables.
+
+ * alloc.c: Add correct management of blocks of structures.
+ Reorganize hash tables at reload since the hash values can change
+ with the pointers.
+
+1999-10-01 Olivier Galibert <galibert@pobox.com>
+
+ * lisp.h: Add pdump_wire declaration
+
+ * elhash.c (vars_of_elhash): Wire Vall_weak_hash_tables.
+ * symbols.c (init_symbols_once_early): Wire Qnil and Qunbound.
+
+ * alloc.c (pdump_wire): Added..
+ (pdump_load): Support it.
+ (pdump): Support it
+
+ * glyphs-msw.c
+ (reinit_image_instantiator_format_create_glyphs_mswindows): Fix
+ macro calls.
+
+1999-09-28 Olivier Galibert <galibert@pobox.com>
+
+ * symsinit.h: Added lots of prototypes.
+
+ * symeval.h: Added defsymbol_nodump declaration.
+
+ * symbols.c (find_symbol_value): Lame attempt at making the
+ startup go further.
+ (defsymbol_nodump): Added.
+
+ * mule-charset.c: Collapsed global lisp objects arrays in one
+ dumpable structure.
+
+ * lrecord.h: Added some flags.
+
+ * lisp.h: Added dumped flag to dynarrs. Added dumpstruct
+ declaration.
+
+ * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM): Don't
+ staticpro dynamic variables.
+
+ * glyphs.c (reinit_specifier_type_create_image): Added.
+ (image_instantiator_format_create): Dump image instantiator format
+ dynarr.
+ (reinit_image_instantiator_format_create): Added.
+
+ * emacs.c (main_1): Added reinits calls.
+
+ * dynarr.c: Protect dumped dynarrays from going berzek in free or
+ realloc.
+
+ * specifier.h (INITIALIZE_SPECIFIER_TYPE): Don't staticpro dynamic
+ variables.
+ * specifier.c (specifier_type_create): Dump the specifier type
+ dynarr.
+ (reinit_specifier_type_create): Added.
+ * console.h (INITIALIZE_CONSOLE_TYPE): Don't staticpro dynamic
+ variables.
+ * console.c (console_type_create): Dump the console type dynarr.
+ (reinit_vars_of_console): Extracted from vars_of_console.
+ (reinit_complex_vars_of_console): Extracted from
+ complex_vars_of_console
+ * window.c (reinit_vars_of_window): Extracted from vars_of_window.
+ * toolbar.c (reinit_specifier_type_create_toolbar): Added.
+ * search.c (reinit_vars_of_search): Extracted from vars_of_search.
+ * objects.c (reinit_specifier_type_create_objects): Added.
+ (reinit_vars_of_objects): Extracted from vars_of_objects.
+ * lstream.c (reinit_vars_of_lstream): Extracted from
+ vars_of_lstream.
+ * lread.c (reinit_vars_of_lread): Extracted from vars_of_lread.
+ * gutter.c (reinit_specifier_type_create_gutter): Added.
+ * glyphs-x.c (reinit_image_instantiator_format_create_glyphs_x):
+ Added.
+ * glyphs-widget.c
+ (reinit_image_instantiator_format_create_glyphs_widget): Added
+ * glyphs-msw.c
+ (reinit_image_instantiator_format_create_glyphs_mswindows): Added.
+ * glyphs-eimage.c
+ (reinit_image_instantiator_format_create_glyphs_eimage): Added.
+ * event-stream.c (reinit_vars_of_event_stream): Extracted from
+ vars_of_event_stream
+ * eval.c (reinit_vars_of_eval): Extracted from vars_of_eval.
+ * device.c (reinit_vars_of_device): Extracted from vars_of_device.
+ * console-x.c (reinit_console_type_create_x): Added.
+ * console-tty.c (reinit_console_type_create_tty): Added
+ * console-stream.c (reinit_console_type_create_stream): Added.
+ (init_console_stream): If PDUMP, always reinitialise basic
+ devices.
+ * console-msw.c (reinit_console_type_create_mswindows): Added.
+ * buffer.c (reinit_vars_of_buffer): Extracted from
+ init_vars_of_buffer.
+ (reinit_complex_vars_of_buffer): Extracted from
+ complex_vars_of_buffer
+
+ * alloc.c: Further with the portable dumping, the revenge.
+ (dumpstruct): Added.
+ (reinit_alloc_once_early): Extracted from init_alloc_once_early.
+
+ * specifier.c (sizeof_specifier): Correct size computation.
+ (make_specifier_internal): Ditto.
+
+1999-09-27 Olivier Galibert <galibert@pobox.com>
+
+ * alloc.c: Further with the portable dumping.
+
+1999-09-27 Martin Buchholz <martin@xemacs.org>
+
+ * glyphs-x.c (update_widget_face): Remove bogus cast
+
+ * data.c (sign_extent_lisp):
+ * data.c (check_int_range):
+ * data.c (Faref):
+ * data.c (Faset):
+ * data.c (number_char_or_marker_to_int):
+ * data.c (number_char_or_marker_to_double):
+ * data.c (Frem):
+ * data.c (Fmod):
+ * extents.c (print_extent_1):
+ * fns.c (print_bit_vector):
+ * fns.c (Flength):
+ * fns.c (Fsafe_length):
+ * fns.c (copy_list):
+ * fns.c (Fsubseq):
+ * fns.c (Felt):
+ * fns.c (Flast):
+ * fns.c (Fnbutlast):
+ * insdel.h:
+ * marker.c (print_marker):
+ * syntax.h:
+ * bytecode.c (bytecode_arithcompare):
+ * bytecode.c (bytecode_arithop):
+ * lisp.h:
+ * lisp.h (EXTERNAL_LIST_LOOP_DELETE_IF):
+ * lisp.h (TRUE_LIST_P):
+ * lisp.h (CHECK_TRUE_LIST):
+ * lisp.h (bit_vector_length):
+ * lisp.h (GCPRO4): Make consistent.
+ * lisp.h (NGCPRO4): Make consistent.
+ * lisp.h (NNGCPRO4): Make consistent.
+ * alloc.c (Fmake_list):
+ * alloc.c (Fmake_string):
+ Use proper 64-bit types, e.g. EMACS_INT or size_t instead of int.
+ This should make all arithmetic 64-bit clean.
+
+ Use %ld with (long) casts in print statements of types with sizes
+ possibly larger than int.
+
+ Following functions had mismatched prototypes!!:
+ do_marker_adjustment(), fixup_internal_substring(), scan_lists(),
+ char_quoted(), make_string_from_buffer(),
+ make_string_from_buffer_no_extents()
+
+ The types of Bufpos, Bytind, Memind, Bytecount, Charcount,
+ Extcount are all now EMACS_INT. I hope to see the day when I can
+ create a buffer with more than INT_MAX characters, without having
+ XEmacs slow down to a crawl. I also hope to be able to create a
+ list with more than INT_MAX cons cells.
+
+ * redisplay.c (decode_mode_spec):
+ The %p and %P specs in the mode line were not correct for buffers
+ larger than MAX_INT/100! The %p spec was off by .5% even for
+ small buffers!
+
+1999-09-27 Martin Buchholz <martin@xemacs.org>
+
+ * cmdloop.c (num_input_keys):
+ * print.c (debug_temp):
+ * emacs.c (Vinfo_directory):
+ Delete unused variables
+
+ * console-x.h (x_interline_space): Mark as unimplemented.
+ * redisplay-x.c (x_interline_space): Mark as unimplemented.
+
+ * event-Xt.c (pending_timeouts):
+ * linuxplay.c (linuxplay_sndbuf):
+ * profile.c (QS*):
+ * search.c (searchbufs):
+ * specifier.c (specifier_type_entry_dynarr):
+ * undo.c (pending_boundary):
+ * event-stream.c (the_low_level_timeout_blocktype):
+ * extents.c (gap_array_marker_freelist):
+ * extents.c (extent_list_marker_freelist):
+ * print.c (being_printed):
+ * print.c (alternate_do_pointer):
+ * alloc.c (first_string_chars_block):
+ * alloc.c (current_string_chars_block):
+ * emacs.c (initial_argv):
+ * emacs.c (initial_argc):
+ * eval.c (lisp_eval_depth):
+ * free-hook.c (pointer_table):
+ * free-hook.c (free_queue):
+ * free-hook.c (current_free):
+ * free-hook.c (strict_free_check):
+ * redisplay.c (formatted_string_emchar_dynarr):
+ * redisplay.c (formatted_string_display_line):
+ * redisplay.c (formatted_string_extent_dynarr):
+ * redisplay.c (formatted_string_extent_start_dynarr):
+ * redisplay.c (formatted_string_extent_end_dynarr):
+ * redisplay.c (updating_line_start_cache):
+ * redisplay.c (last_display_warning_tick):
+ * redisplay.c (display_warning_tick):
+ * redisplay.c (internal_cache):
+ * window.c (Vwindow_configuration_free_list):
+ Make static.
+
+ * redisplay.c (Vinitial_window_system): Make CONST.
+
+1999-09-24 Martin Buchholz <martin@xemacs.org>
+
+ * redisplay-tty.c (term_get_fkeys_1): Minor aesthetic improvements.
+
+ * doprnt.c (get_doprnt_args): Use int, not short, with va_arg.
+
+1999-09-24 Andy Piper <andy@xemacs.org>
+
+ * redisplay-output.c (output_display_line): only clear the borders
+ if we are not displaying the gutter.
+
+1999-09-24 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * frame-x.c (x_any_window_to_frame): Let Xt find the widget and
+ then use x_any_widget_or_parent_to_frame().
+ (x_find_frame_for_window): remove special cases.
+
+1999-09-24 Andy Piper <andy@xemacs.org>
+
+ * scrollbar-x.c (x_window_is_scrollbar): deleted.
+ * scrollbar-x.h: ditto.
+
+1999-09-23 Martin Buchholz <martin@xemacs.org>
+
+ * alloc.c (this_marks_a_marked_record): Remove.
+
+ * buffer.c (mark_buffer):
+ * buffer.c (nuke_all_buffer_slots):
+ * console.c (mark_console):
+ * console.c (nuke_all_console_slots):
+ * frame.c (mark_frame):
+ * frame.c (nuke_all_frame_slots):
+ Treat MARKED_SLOT() macros consistently.
+
+ * device.h (error_check_device_type):
+ * faces.c (face_getprop):
+ * fileio.c (DRIVE_LETTER):
+ * filelock.c (lock_file_1):
+ * frame-x.c (x_create_widgets):
+ * frame.h (error_check_frame_type):
+ * keymap.c (print_keymap):
+ * keymap.c (Fkey_description):
+ * keymap.c (where_is_recursive_mapper):
+ * mule-charset.h (CHARSET_LEADING_BYTE):
+ * objects-msw.c (mswindows_color_instance_hash):
+ * objects.c (color_instance_equal):
+ * objects.h (struct color_specifier):
+ * objects.h (struct font_specifier):
+ * objects.h (struct face_boolean_specifier):
+ * opaque.h (get_opaque_ptr):
+ * opaque.h (set_opaque_ptr):
+ * process-unix.c (set_socket_nonblocking_maybe):
+ * specifier.h (SPECIFIER_TYPE_P):
+ * symbols.c (store_symval_forwarding):
+ * syssignal.h (EMACS_KILLPG):
+ * terminfo.c (emacs_tparam):
+ * glyphs.c (glyph_putprop):
+ * glyphs.c (glyph_remprop):
+ * glyphs.c (Fimage_instance_subwindow_id):
+ * window.c (mark_window):
+ * window.c (mark_window_config):
+ * window.c (Fset_window_configuration):
+ * window.c (save_window_save):
+ * eval.c (Fuser_variable_p):
+ * eval.c (Fcommand_execute):
+ * eval.c (Feval):
+ * eval.c (Ffuncall):
+ * lisp.h (XPNTR):
+ * lisp.h (INT_OR_FLOATP):
+ * lisp.h (GC_INT_OR_FLOATP):
+ * lisp.h (XFLOATINT):
+ * lisp.h (IS_ANY_SEP):
+ * mule-ccl.c (Fccl_execute):
+ * mule-ccl.c (Fccl_execute_on_string):
+ * redisplay-x.c (x_output_string):
+ Remove redundant extra parentheses.
+
+1999-09-22 Martin Buchholz <martin@xemacs.org>
+
+ * chartab.c (word_boundary_p): Add prototype for warning avoidance.
+ * eval.c (PRIMITIVE_FUNCALL): ANSIfy
+ * free-hook.c (fun_ptr): ANSIfy
+ * getloadavg.c: Remove declaration for errno.
+ * gui.c (allocate_gui_item): ANSIfy
+ * gui.h (allocate_gui_item): ANSIfy
+ * mule-ccl.c (resolve_symbol_ccl_program): Make static
+ * realpath.c: Remove K&R support.
+ * redisplay-x.c (x_output_display_block): Don't shadow previous local
+ * glyphs-widget.c (layout_instantiate): Don't shadow previous local
+ * gutter.c (get_gutter_coords): Make static.
+ * lread.c (locate_file_map_suffixes): Make static.
+ * ralloc.c (relinquish): ANSIfy
+ * redisplay.c:
+ * lisp.h:
+ Move prototypes from redisplay.c to lisp.h
+
+1999-09-22 Martin Buchholz <martin@xemacs.org>
+
+ * glyphs-x.c (x_widget_set_property):
+ - Remove unnecessary initialization.
+ - Use char*, not Bufbyte *, with GET_C_STRING_OS_DATA_ALLOCA
+ * glyphs-x.c (x_widget_instantiate):
+ - Use char*, not Bufbyte *, with GET_C_STRING_OS_DATA_ALLOCA
+ * unexelf.c (unexec):
+ Add cast for C++ compilability.
+ * redisplay.h:
+ Fix a typo.
+ * ralloc.c (r_alloc_reinit):
+ SET_FUN_PTR was broken wrt ANSI aliasing!
+ To compensate, use __typeof__ when using gcc, else live with
+ possible (but rare) warnings.
+ * ralloc.c (init_ralloc):
+ Ditto
+ * ralloc.c: Use the real dlmalloc prototype for __morecore.
+ * lread.c (locate_file_map_suffixes):
+ * input-method-xlib.c (XIM_init_frame):
+ - Xlib functions should use XPointer, not XtPointer.
+ * input-method-xlib.c (XIM_delete_frame):
+ - Xlib functions should use XPointer, not XtPointer.
+ * input-method-xlib.c (IMDestroyCallback):
+ - Simplify.
+ - XFRAME (obj) can never be NULL, so don't test for it.
+ * gutter.h:
+ Add GUTTER_POS_LOOP for iterating over all gutter_pos'es
+ * gutter.c (SET_GUTTER_WAS_VISIBLE_FLAG):
+ Run c-backslash-region on macro body.
+ * gutter.c (gutter_was_visible):
+ Remove redundant parens - this is not a macro.
+ * gutter.c (redraw_exposed_gutters):
+ Use GUTTER_POS_LOOP.
+ * gutter.c (gutter_specs_changed):
+ Use GUTTER_POS_LOOP.
+ * gutter.c (gutter_geometry_changed_in_window):
+ Use GUTTER_POS_LOOP.
+ * gutter.c (update_frame_gutters):
+ Use GUTTER_POS_LOOP.
+ * gutter.c (init_frame_gutters):
+ Use GUTTER_POS_LOOP.
+ * file-coding.c (determine_real_coding_system):
+ Fix C++ compile error.
+ * emodules.c (find_make_module):
+ Cast return value from xrealloc
+ * emacs.c (Fkill_emacs):
+ Use __typeof__, when available.
+ * emacs.c (voodoo_free_hook):
+ Use __typeof__, when available.
+ (Unfortunately, the type of __free_hook is glibc-version-dependent)
+ * dired.c (user_cache): Use Bufbyte *, not char *
+ * dired.c (Fuser_name_all_completions): Ditto.
+
+1999-09-22 Andy Piper <andy@xemacs.org>
+
+ * redisplay.c (redisplay_frame): reset the gutter display lines
+ when we reset the subwindows.
+
+ * gutter.c (reset_gutter_display_lines): new function.
+
+ * window.c (Flast_nonminibuf_window): new function equivalent to
+ FRAME_LAST_NONMINIBUF_WINDOW ().
+ (syms_of_window): declare it.
+
+ * redisplay.c (create_string_text_block): don't add bogus eol
+ markers to gutter display lines.
+
+ * glyphs.c (reset_subwindow_cachels): make sure we unmap
+ subwindows using unmap_subwindow so that expose events get
+ registered correctly.
+
+ * window.c (window_scroll): use Vwindow_pixel_scroll_increment to
+ determine how much to scroll the window.
+ (vars_of_window): Vwindow_pixel_scroll_increment is a new
+ variable.
+
+1999-09-20 Robert Pluim <rpluim@nortelnetworks.com>
+
+ * glyphs-x.c (update_widget_face): Guard fontList declaration for
+ non-motif uses.
+
+1999-09-20 Andy Piper <andy@xemacs.org>
+
+ * glyphs-msw.c (mswindows_update_subwindow): update faces.
+
+1999-09-19 Andy Piper <andy@xemacs.org>
+
+ * glyphs.c (update_frame_subwindows): update if faces have
+ changed.
+
+ * glyphs-x.c (x_widget_instantiate): create the clip widget using
+ lwlib rather than directly.
+ (x_finalize_image_instance): delete the clip widget using lwlib.
+ (x_update_subwindow): update widget faces.
+ (update_widget_face): new function for updating the face
+ properties of a widget.
+ (x_widget_set_property): update widget faces.
+
+ * lwlib-Xlw.c (xlw_create_clip_window): new function. We need to
+ manage the clip widgets using lwlib so that we can delete them in
+ a safe manner.
+
+1999-09-16 Martin Buchholz <martin@xemacs.org>
+
+ * lisp-union.h:
+ * lisp-disunion.h:
+ Define new, potentially faster INT arithmetic macros
+ INT_PLUS, INT_MINUS, INT_PLUS1, INT_MINUS1
+ * bytecode.c (execute_optimized_function):
+ Use new macros.
+ Fix metering code
+ * bytecode.c (bytecode_negate):
+ Optimize for integer case.
+
+1999-08-29 Andreas Jaeger <aj@arthur.rhein-neckar.de>
+
+ * m/mips.h: Support for mips-linux: Add !linux around places
+ that are not valid for linux, define TEXT_START, DATA_START,
+ DATA_SEG_BITS.
+
+1999-09-16 Andy Piper <andy@xemacs.org>
+
+ * redisplay-output.c (redisplay_output_subwindow): clip subwindows
+ that don't completely fit on-screen rather than just unmapping
+ them.
+
+ * glyphs.h: change signature of map_subwindow.
+
+ * glyphs.c (map_subwindow): add display_glyph_area to the
+ signature. make sure the mapped area saved in the subwindow_cachel
+ reflects this.
+ (Fforce_subwindow_map): make a no-op. I don't think this does
+ anything useful.
+
+ * glyphs-x.h (struct x_subwindow_data): save the Display rather
+ than the Screen. Add a clipwindow and clipwidget handle.
+ (IMAGE_INSTANCE_X_CLIPWINDOW): new accessor.
+ (IMAGE_INSTANCE_X_CLIPWIDGET): ditto.
+ (XIMAGE_INSTANCE_X_CLIPWIDGET): ditto.
+ (XIMAGE_INSTANCE_X_CLIPWINDOW): ditto.
+
+ * glyphs-x.c (x_finalize_image_instance): destroy the clipwidget
+ as well as the widget itself.
+ (x_unmap_subwindow): unmap the clipwindow and clipwidget rather
+ than the widgets and subwindows themselves. move the widget inside
+ the clipwidget.
+ (x_subwindow_instantiate): hold onto the Display rather than the
+ Screen. allocate a clipwindow to put the subwindow inside.
+ (x_resize_subwindow): use saved Display directly.
+ (x_widget_instantiate): allocate a clipwidget of type EmacsManager
+ to put widgets inside.
+
+ * glyphs-widget.c: remove group stuff.
+
+ * glyphs-msw.h (struct mswindows_subwindow_data): new structure to
+ hold the clipwindow.
+ (IMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW): new accessor.
+ (XIMAGE_INSTANCE_MSWINDOWS_CLIPWINDOW): ditto.
+
+ * glyphs-msw.c: remove group stuff.
+ (mswindows_finalize_image_instance): destroy clipwindow as well as
+ the widget itself.
+ (mswindows_unmap_subwindow): unmap the clipwindow rather than the
+ widget.
+ (mswindows_map_subwindow): ditto. move the widget within the
+ clipwindow.
+ (mswindows_subwindow_instantiate): allocate and initialize
+ mswindows_subwindow_data. allocate a clipwindow with the subwindow
+ as a child.
+ (mswindows_widget_instantiate): ditto.
+ (mswindows_control_wnd_proc): new function that allows us to
+ propagate events from the widget to the main windows control loop.
+
+ * device-msw.c (mswindows_init_device): register new widget clip window
+ class.
+
+ * console.h (struct console_methods): add display_glyph_area to
+ map_window.
+
+ * console-msw.h: declare new window class and wnd proc for
+ widgets.
+
+1999-09-14 Martin Buchholz <martin@xemacs.org>
+
+ * general.c:
+ * eldap.c:
+ Move symbols used only by eldap.c into eldap.c as statics.
+
+1999-09-09 Martin Buchholz <martin@xemacs.org>
+
+ * window.c (syms_of_window):
+ * symbols.c (syms_of_symbols):
+ * redisplay.c (syms_of_redisplay):
+ * print.c (syms_of_print):
+ * lisp.h:
+ * intl.c (syms_of_intl):
+ * general.c (syms_of_general):
+ * frame.c (syms_of_frame):
+ * fileio.c (syms_of_fileio):
+ * file-coding.h:
+ * file-coding.c (syms_of_file_coding):
+ * extents.c (syms_of_extents):
+ * event-stream.c (syms_of_event_stream):
+ * event-stream.c (Fnext_event):
+ * device.c (syms_of_device):
+ * data.c (syms_of_data):
+ * casetab.c (syms_of_casetab):
+ * casetab.c (check_case_table):
+ * callint.c (syms_of_callint):
+ * buffer.c (syms_of_buffer):
+ Delete unused C symbols:
+ Qbuffer_file_name, Qbuffer_undo_list, Quser_variable_p,
+ Qcurrent_prefix_arg, Qtranslate_table, Qkeywordp,
+ Qnumber_or_marker_p, Qcons, Qkeyword, Qignore, Qdelete_device,
+ Qcommand_execute, Qglyph_invisible,
+ Qbuffer_file_coding_system, Qfile_name_handler_alist,
+ Qframe_x_p, Qframe_tty_p, Qblack, Qkeyboard, Qmenubar, Qpath,
+ Qvector, Qwhite, Qcase, Qdomain, Qalternate_debugging_output,
+ Qprint_escape_newlines, Qprint_readably, Qfloat_output_format,
+ Qwindow_scroll_functions, Qfboundp, Qscroll_up, Qscroll_down
+
+ Rename symbols as required by the CHECK_RECORD macro:
+ - Qcase_table_p to Qcase_tablep
+ - Qcoding_system_p to Qcoding_systemp
+
+ * debug.h:
+ * debug.c (syms_of_debug):
+ Make debug.c's internal Lisp_Objects static.
+
+ * events.c (vars_of_events):
+ * events.c (syms_of_events):
+ Use regular old defsymbol instead of KEYSYM + staticpro().
+
+ * select-x.c (CHECK_CUTBUFFER):
+ Rewrite in accordance with coding standards.
+
+ * keymap.c (syms_of_keymap):
+ Use SPC in the same way as RET, TAB, etc.
+
+1999-08-27 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * xemacs-20/src/menubar-x.c (make_dummy_xbutton_event): Don't add
+ offset twice if HAVE_WMCOMMAND is defined.
+
+1999-09-13 Mike McEwan <mike@lotusland.demon.co.uk>
+
+ * redisplay-x.c (x_output_vertical_divider): make sure
+ shadow_thickness is positive.
+
+1999-09-10 Julian Back <jback@rudd.compulink.co.uk>
+
+ * process-nt.c (nt_create_process): fixup to cope with
+ Vprocess_environment.
+
+1999-09-02 Andy Piper <andy@xemacs.org>
+
+ * redisplay-output.c (redisplay_output_layout): call output
+ routines with clear_clip false. output layout borders with text
+ correctly.
+
+ * redisplay-msw.c (mswindows_output_blank): call output routines
+ with clear_clip true.
+ (mswindows_output_string): ditto.
+ (mswindows_output_display_block): ditto.
+
+ * redisplay-x.c (x_output_display_block): call output routines
+ with clear_clip true.
+
+ * redisplay.h: fix output routines for clear_clip parameter.
+
+ * redisplay-output.c (redisplay_output_layout): cope with glyphs
+ in the border.
+
+ * glyphs-widget.c (layout_instantiate): deal with border glyphs.
+ (check_valid_glyph_or_instantiator): renamed from
+ check_valid_glyph_or_image.
+ (check_valid_border): allow glyphs or their instantiators.
+ (check_valid_glyph_or_instantiator_list): renamed from
+ check_valid_glyph_or_image_list,
+ (glyph_instantiator_to_glyph): new function. make sure a glyph is
+ a glyph and not an instantiator.
+ (substitute_keyword_value): new function. replace a keyword value
+ with a new one.
+
+1999-09-01 Andy Piper <andy@xemacs.org>
+
+ * glyphs.c (string_set_property): new function to set the data of
+ a string.
+ (image_instantiator_format_create): use it.
+
+1999-09-07 Hrvoje Niksic <hniksic@srce.hr>
+
+ * fns.c (Fmapc): Rename back to Fmapc_internal.
+
+1999-07-30 Gleb Arshinov <gleb@cs.stanford.edu>
+
+ * ntheap.h: CONST (semantically constant) name field of file_data
+ struct
+
+ * unexnt.c (open_output_file): match function definition with
+ function declaration
+
+ * editfns.c: #include "sysfile.h" for getcwd() prototype
+
+ * gif_io.c: #include "sysfile.h" for close() prototype
+
+1999-09-02 Martin Buchholz <martin@xemacs.org>
+
+ * elhash.c:
+ * elhash.h:
+ Change the :type keyword to :weakness, for compatibility with the
+ GNU Emacs 20.5 hash table implementation.
+ Keep (but don't document) the :type keyword for compatibility.
+ Obsolete function hash-table-type
+ General cleanup.
+ Define function sxhash for compatibility with Common Lisp and GNU Emacs.
+
+1999-09-01 Martin Buchholz <martin@xemacs.org>
+
+ * floatfns.c (arith_error):
+ * floatfns.c (range_error):
+ * floatfns.c (range_error2):
+ * floatfns.c (domain_error):
+ * floatfns.c (domain_error2):
+ * lrecord.h (LRECORDP):
+ * console-x.h (X_ERROR_OCCURRED):
+ * console-x.h (HANDLING_X_ERROR):
+ * chartab.c (CATEGORYP):
+ * buffer.h (XCHAR_OR_CHAR_INT):
+ Remove redundant and confusing parentheses.
+
+ * redisplay-output.c (redisplay_clear_to_window_end):
+ Remove redundant initialization.
+
+ * redisplay.h:
+ * redisplay-msw.c:
+ * redisplay-x.c:
+ Move declarations of bevel_modeline() into redisplay.h.
+
+1999-08-30 Olivier Galibert <galibert@pobox.com>
+
+ * lisp.h: Add staticpro_nodump for undumped staticpro-ing.
+ * alloc.c: Add staticpro_nodump for undumped staticpro-ing. Add
+ alignment information for dumped data. Enhance
+ descriptions. Phase out Vterminal_* variables while
+ dumping.
+ * lrecord.h: Add chained descriptions and automagically-reset
+ lisp_objects to the description system.
+
+ * console-stream.h: Declare the Vterminal_* variables.
+
+ * buffer.c: Don't dump Vbuffer_alist, Vbuffer_defaults and
+ Vbuffer_local_symbols.
+ * console.c: Don't dump Vconsole_list, Vconsole_defaults and
+ Vconsole_local_symbols.
+ * eval.c: Don't dump Qunbound_suspended_errors_tag.
+ * lread.c: Don't dump Vread_buffer_stream.
+ * lstream.c: Don't dump Vlstream_free_list[].
+ * search.c: Don't dump last_thing_searched.
+ * window.c: Don't dump minibuf_window and
+ Vwindow_configuration_free_list[].
+
+ * faces.c: Add face description.
+ * fns.c: Add bit_vector description.
+ * glyphs.c: Add image specifier description.
+ * objects.c: Add color, face and face boolean specifiers descriptions.
+ * opaque.c: Add opaque description. Don't dump Vopaque_ptr_free_list.
+ * rangetab.c: Add range table description.
+ * specifier.c: Add specifier and specifier methods description.
+ * specifier.h: Add specifier extra description support.
+
+ * symbols.c: Fix symbol_value_buffer_local_description.
+
+ * gdbinit (Lisp): Add opaque_ptr, remove opaque_list.
+
+1999-09-02 Hrvoje Niksic <hniksic@srce.hr>
+
+ * extents.c (extent_remprop): Get extent's plist address
+ correctly.
+
+1999-08-31 Andy Piper <andy@xemacs.org>
+
+ * xmu.h: define Xmu/Converters.h things.
+
+1999-08-31 Andy Piper <andy@xemacs.org>
+
+ * opaque.c (equal_opaque_ptr): define.
+ (hash_opaque_ptr): define.
+
+ * xmu.h: define Xmu/Misc.h things.
+
+1999-08-17 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * file-coding.c (determine_real_coding_system): Treat `coding:'
+ cookie.
+
+1999-08-16 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * file-coding.c (struct decoding_stream): New member `counter'.
+ (reset_decoding_stream): Initialize `counter'.
+ (decode_coding_ucs4): Use `counter'.
+ (decode_coding_utf8): Likewise.
+
+1999-08-31 Andy Piper <andy@xemacs.org>
+
+ * redisplay-output.c (redisplay_normalize_glyph_area): make sure
+ the clip offset doesn't exceed the height we have available to
+ show.
+
+ * window.h (struct window): add top_yoffset and left_xoffset for
+ pixel scrolling.
+ (WINDOW_TEXT_TOP_CLIP): new macro.
+
+ * window.c (window_scroll): add behaviour for pixel-scrolling of
+ tall lines.
+
+ * redisplay.h (struct display_line): add top_clip.
+ (DISPLAY_LINE_HEIGHT): adjust for top_clip.
+ (DISPLAY_LINE_YPOS): ditto.
+
+ * redisplay.c (position_redisplay_data_type): add
+ start_col_xoffset to prepare for pixel-based h-scrolling.
+ (WINDOW_SCROLLED): new macro.
+ (next_tab_position): use it.
+ (add_glyph_rune): use new hscoll vars.
+ (create_text_block): ditto.
+ (generate_displayable_area): adjust off-by-one error.
+ (regenerate_window): take top_clip into account.
+ (regenerate_window_extents_only_changed): ditto.
+ (regenerate_window_incrementally): ditto.
+
+ * redisplay-x.c (x_output_display_block): use DISPLAY_LINE_YPOS,
+ DISPLAY_LINE_HEIGHT and DISPLAY_LINE_YEND macros.
+ (x_output_string): ditto.
+ (x_output_blank): ditto.
+ (x_output_hline): ditto.
+ (x_output_eol_cursor): ditto.
+
+ * redisplay-output.c (output_display_line): allow for
+ top_clip. use DISPLAY_LINE_YPOS, DISPLAY_LINE_HEIGHT and
+ DISPLAY_LINE_YEND macros.
+ (redisplay_output_layout): output strings in layouts correctly.
+ (redisplay_clear_clipped_region): allow for top_clip.
+ (redisplay_calculate_display_boxes): ditto.
+
+ * redisplay-msw.c (mswindows_output_blank): use DISPLAY_LINE_YPOS,
+ DISPLAY_LINE_HEIGHT and DISPLAY_LINE_YEND macros.
+ (mswindows_output_cursor): ditto.
+ (mswindows_output_string): ditto.
+ (mswindows_redraw_exposed_window): ditto.
+ (mswindows_output_display_block): ditto.
+
+ * gutter.c: new specifier type gutter-size.
+ (gutter_size_validate): validate gutter-size specifier.
+ (Fgutter_size_specifier_p): predicate for gutter-size.
+ (Fredisplay_gutter_area): allow the gutter area to be redisplayed
+ under user contol, like Fredisplay_echo_area.
+ (syms_of_gutter): add new functions.
+ (specifier_type_create_gutter): add new specifier.
+ (specifier_vars_of_gutter): change specifier types of *-height to
+ gutter-size.
+
+ * glyphs.c (glyph_width): make work with image instances.
+
+ * console.h (struct console_methods): change api of output_string.
+
+ * glyphs-x.c (x_map_subwindow): move before mapping as reported by
+ Stephen J. Turnbull <turnbull@sk.tsukuba.ac.jp>
+
+1999-08-30 Andy Piper <andy@xemacs.org>
+
+ * glyphs-x.c (x_finalize_image_instance): X_MASK -> PIXMAP_MASK
+ for assignment.
+ (init_image_instance_from_x_image): ditto.
+ (x_xpm_instantiate): ditto.
+ (x_colorize_image_instance): ditto. Reported by Richard Cognot
+ <cognot@ensg.u-nancy.fr>
+
+1999-08-29 Andy Piper <andy@xemacs.org>
+
+ * glyphs-x.c (x_widget_instantiate): move font initialisation so
+ that it doesn't get saved in the user defined args.
+ (x_tab_control_instantiate): Set the fg color of the tab's
+ children.
+ (x_tab_control_set_property): ditto.
+
+1999-08-27 Damon Lipparelli <lipp@primus.com>
+
+ * events.h (XTIMEOUT): must preface Lisp_Timeout with ``struct''
+ (XSETTIMEOUT): fixup typo
+
+1999-08-11 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * syntax.c (scan_words): Unified Mule and Non-mule scanning.
+ Word boundary search looks back instead of forward so that it
+ doesn't peek over the limit.
+
+1999-08-20 Olivier Galibert <galibert@pobox.com>
+
+ * config.h.in: Add PDUMP define.
+ * emacs.c (Fdump_emacs): Hackish, call pdump() if configured in.
+
+ * lrecord.h: Enhance description system.
+ * alloc.c: Fix vector and string description. Add portable
+ dumper enumeration fonctions.
+
+ * symbols.c: Fix symbols description. Add symbol_value_forward
+ description.
+ * eval.c: Add subr description.
+ * elhash.c (CLEAR_HENTRY): Clean value pointer too. Fix hash
+ table description.
+ (remhash_1): CLEAR_HENTRY evaluates the parameter two times now.
+
+1999-08-20 Olivier Galibert <galibert@pobox.com>
+
+ * opaque.c: Kill opaque lists, make Lisp_Opaque_Ptr a lrecord of
+ its own.
+ * opaque.h: Ditto.
+
+ * eval.c (eval_in_buffer_trapping_errors):
+ (run_hook_trapping_errors):
+ (safe_run_hook_trapping_errors):
+ (call0_trapping_errors):
+ (call1_trapping_errors):
+ (call2_trapping_errors): OPAQUEP -> OPAQUE_PTRP. make_opaque_ptr
+ now takes a non-const void *.
+
+1999-08-20 Olivier Galibert <galibert@pobox.com>
+
+ * opaque.c: Remove make_opaque_long.
+
+ * opaque.h: Remove everything opaque_long related.
+
+ * eval.c (vars_of_eval): Make Qunbound_suspended_errors_tag an
+ opaque_ptr.
+
+ * emacs.c (main_1): Remove make_opaque_long from comment.
+
+1999-08-20 Olivier Galibert <galibert@pobox.com>
+
+ * event-stream.c (mark_timeout):
+ (print_timeout):
+ (event_stream_generate_wakeup):
+ (event_stream_resignal_wakeup):
+ (event_stream_disable_wakeup):
+ (event_stream_wakeup_pending_p):
+ (vars_of_event_stream): Lisp_Timeout is now a lrecord.
+
+ * events.h (struct Lisp_Timeout): Added.
+
+1999-08-24 Andy Piper <andy@xemacs.org>
+
+ * console-x.h: declare new pixmap signatures.
+
+1999-08-23 Andy Piper <andy@xemacs.org>
+
+ * glyphs-x.c (x_update_subwindow): make sure the widget size is
+ maintained after an update.
+
+ * event-Xt.c (emacs_Xt_handle_magic_event): use
+ find_matching_subwindow to check whether the exposure is totally
+ inside a subwindow, if it is then ignore it.
+
+ * glyphs.c (find_matching_subwindow): new function.
+
+ * toolbar-x.c (x_draw_blank_toolbar_button): use new
+ x_output_shadows signature.
+ (x_output_toolbar_button): use new x_output_x_pixmap signature.
+
+ * redisplay.h (struct display_box): new structure.
+ (struct display_glyph_area): ditto.
+ declare new display_box functions.
+
+ * redisplay-x.c (x_output_pixmap): update for new display
+ box stuff.
+ (x_bevel_area): update to allow multiple edge styles and border
+ segments.
+ (x_output_display_block): update for new display_box stuff and
+ signatures.
+ (x_clear_region): ditto.
+ (x_output_x_pixmap): ditto. adjust offsets rather than clip.
+ (console_type_create_redisplay_x): declare new console methods.
+ (x_output_vertical_divider): update for new bevel_area signature.
+ (x_output_shadows): update to allow selective drawing of edges.
+
+ * redisplay-tty.c (tty_output_display_block): do nothing for
+ layouts.
+
+ * redisplay-output.c (redisplay_output_subwindow): convert to use
+ display_box structure, this allows us to put subwindows anywhere
+ with any offset, useful for layout glyphs.
+ (redisplay_output_layout): new function. output a layout and its
+ sub-glyphs.
+ (redisplay_output_pixmap): new modular function combining generic
+ parts of the X and mswindows versions. convert to use display_box
+ structures.
+ (redisplay_clear_clipped_region): new function. clear the area a
+ glyph is going into.
+ (redisplay_normalize_glyph_area): new function. calculate the
+ bounds of a display_glyph_area given a display_box.
+ (redisplay_normalize_display_box): new function. shrink a
+ display_box to enclose a display_glyph_area.
+ (redisplay_display_boxes_in_window_p): check whether the input
+ display_box and display_glyph_area are actually in a window.
+ (redisplay_calculate_display_boxes): calculate display boxes based
+ on conventional display_line metrics.
+ (bevel_modeline): update for new bevel_area signature.
+
+ * redisplay-msw.c (mswindows_output_blank): update for new
+ display_box stuff.
+ (mswindows_output_string): ditto.
+ (mswindows_output_dibitmap): ditto.
+ (mswindows_output_dibitmap_region): ditto.
+ (mswindows_output_pixmap): ditto.
+ (mswindows_bevel_area): update to allow multiple edge styles and
+ border segments.
+ (mswindows_output_display_block): update for new display_box stuff
+ and signatures.
+ (mswindows_clear_region): ditto.
+ (console_type_create_redisplay_mswindows): declare new console methods.
+
+ * lisp.h (edge_style): new enum.
+ declare display_box and display_glyph_area.
+
+ * gutter.c (output_gutter): update for new bevel_area signature.
+
+ * glyphs.h (image_instance_type): add layout.
+ (IMAGE_LAYOUT_MASK): ditto.
+ (LAYOUT_IMAGE_INSTANCEP): new macro.
+ (CHECK_LAYOUT_IMAGE_INSTANCE): ditto.
+ (struct Lisp_Image_Instance): add offsets for layout and the
+ layout type itself. move mask here also.
+ (IMAGE_INSTANCE_LAYOUT_CHILDREN): new macro.
+ (IMAGE_INSTANCE_LAYOUT_BORDER): ditto.
+ (XIMAGE_INSTANCE_LAYOUT_CHILDREN): ditto.
+ (XIMAGE_INSTANCE_LAYOUT_BORDER): ditto.
+
+ * glyphs.c (mark_image_instance): update for layouts.
+ (print_image_instance): ditto.
+ (image_instance_equal): ditto.
+ (image_instance_hash): ditto.
+ (allocate_image_instance): initialise offsets for layout.
+ (decode_image_instance_type): update for layouts.
+ (encode_image_instance_type): ditto.
+ (Fimage_instance_height): ditto.
+ (Fimage_instance_width): ditto.
+ (allocate_glyph): ditto.
+ (glyph_width): allow image instances as an argument. update for layouts.
+ (glyph_height_internal): ditto.
+ (syms_of_glyphs): add layout symbols.
+
+ * glyphs-x.h (struct x_image_instance_data): remove mask entry.
+ (IMAGE_INSTANCE_X_MASK): update.
+
+ * glyphs-x.c (x_label_instantiate): new function. instantiate a
+ label.
+ (image_instantiator_format_create_glyphs_x): initialise new layout
+ glyph type.
+
+ * glyphs-widget.c: new layout type.
+ (check_valid_orientation): new keyword checker for layouts.
+ (check_valid_justification): ditto.
+ (check_valid_border): ditto.
+ (check_valid_glyph_or_image_list): ditto.
+ (layout_possible_dest_types): new function for layout glyph type.
+ (layout_normalize): ditto.
+ (layout_instantiate): ditto.
+ (syms_of_glyphs_widget): new keywords for layout.
+ (image_instantiator_format_create_glyphs_widget): initialise the
+ layout glyph type.
+
+ * glyphs-msw.h (struct mswindows_image_instance_data): remove mask
+ argument.
+ (IMAGE_INSTANCE_MSWINDOWS_MASK): update.
+
+ * glyphs-msw.c: declare layout format.
+ (image_instantiator_format_create_glyphs_mswindows): initialise it.
+
+ * general.c: new symbols for layouts.
+
+ * console.h (struct console_methods): new console methods for
+ outputting pixmaps and strings.
+
+1999-08-23 Didier Verna <verna@inf.enst.fr>
+
+ * sound.c: revert the renaming of `bell_volume' to `Vbell_volume'
+ and `bell_inhibit_time' to `Vbell_inhibit_time'.
+
+1999-08-18 Andy Piper <andy@xemacs.org>
+
+ * redisplay-output.c (redisplay_output_subwindow): disable
+ clipping attempt.
+
+1999-08-17 Andy Piper <andy@xemacs.org>
+
+ * gutter.c (redraw_exposed_gutter): handle degenerate case of no
+ area to expose or no gutter to display.
+
+1999-08-16 Charles G Waldman <cgw@fnal.gov>
+
+ * sound.c: rename `bell_volume' to `Vbell_volume' and
+ `bell_inhibit_time' to `Vbell_inhibit_time'.
+
+1999-08-13 Charles G Waldman <cgw@fnal.gov>
+
+ * sound.c: (bell-inhibit-time): New variable.
+ (ding): Use it.
+ (sound-alist): Fix docstring.
+
+1999-08-17 Andy Piper <andy@xemacs.org>
+
+ * gui-x.c (button_item_to_widget_value): xstrdup name so that
+ deleting it is ok.
+
+1999-08-16 Jeff Miller <jmiller@smart.net>
+
+ * syntax.c (scan_words): make compile.
+
+1999-08-16 Andy Piper <andy@xemacs.org>
+
+ * redisplay-output.c (redisplay_output_subwindow): try and be more
+ relaxed about clipping possibilities.
+
+ * glyphs-x.c (x_tab_control_set_property): free_widget_value_tree
+ rather than just the widget_value.
+ (x_update_subwindow): ditto.
+ (x_widget_instantiate): ditto.
+
+ * gutter.c (output_gutter): shrink current display lines if
+ required.
+
+1999-08-15 Andy Piper <andy@xemacs.org>
+
+ * redisplay.h: declare free_display_lines.
+
+ * redisplay.c (free_display_lines): make non-static.
+
+ * gutter.c (free_frame_gutters): use free_display_lines instead of
+ Dynarr_free.
+ (calculate_gutter_size): ditto.
+
+1999-08-12 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * eval.c (run_hook_with_args_in_buffer): GCPRO globals.
+
+1999-08-14 Andy Piper <andy@xemacs.org>
+
+ * glyphs.c (update_subwindow_cachel): make it less brittle.
+
+1999-08-04 Mike Woolley <mike@bulsara.com>
+
+ * scrollbar-msw.c (mswindows_handle_mousewheel_event): Fixed
+ problem in wheelmouse code occurring when the horizontal scrollbar
+ is enabled but not visible.
+
+1999-08-08 Andy Piper <andyp@beasys.com>
+
+ * toolbar-msw.c (mswindows_redraw_frame_toolbars): new function.
+ (console_type_create_toolbar_mswindows): use it.
+
+ * glyphs.c (Fset_image_instance_property): fiddly reorganisation.
+
+ * redisplay-output.c (redisplay_output_display_block): unmap
+ subwindows in the block area before outputting the block.
+
+ * event-msw.c (mswindows_wnd_proc): check the update rect before
+ painting and disable expose registration while painting.
+
+ * glyphs.c (register_ignored_expose): check
+ hold_ignored_expose_registration before registering expose events.
+
+ * redisplay.c (redisplay_frame): reset the subwindow cache before
+ displaying the gutter.
+
+ * glyphs-msw.c (mswindows_map_subwindow): move the window before
+ mapping.
+
+ * gutter.c (update_frame_gutters): check for glyphs_changed as if
+ it is the subwindow cache will have been reset.
+
+1999-08-06 Andy Piper <andyp@beasys.com>
+
+ * gui-x.c (button_item_to_widget_value): cope with strings.
+
+ * glyphs.h: declare global widget functions.
+ (IIFORMAT_HAS_SHARED_DEVMETHOD): new macro.
+
+ * glyphs-x.c (x_combo_box_instantiate): do generic initialization
+ here. remove dead code.
+ (image_instantiator_format_create_glyphs_x): enable combo boxes
+ for Motif 2.0.
+
+ * glyphs-widget.c (widget_instantiate_1): make non-static.
+ (tree_view_instantiate): renamed from combo_box_instantiate.
+ (image_instantiator_format_create_glyphs_widget): use new/changed methods.
+
+ * glyphs-msw.c (mswindows_combo_box_instantiate): do generic
+ initialization here.
+
+ * lwlib-Xm.c (xm_update_combo_box): new function.
+ (xm_update_one_widget): call it.
+ (xm_update_one_value): deal with combo boxes as well as lists.
+ (xm_create_combo_box): create a drop-down combo box.
+
+ * toolbar-msw.c (mswindows_output_toolbar): call
+ mswindows_move_toolbar.
+
+1999-08-05 Andy Piper <andyp@beasys.com>
+
+ * window.c (Fcurrent_pixel_column): new function. use display
+ lines to calculate pixel position of point.
+ * window.c (syms_of_window): declare it.
+
+1999-08-05 Andy Piper <andy@xemacs.org>
+
+ * glyphs.c (check_for_ignored_expose): ignore exposures wholly
+ contained in our ignore list.
+
+ * buffer.c (Frecord_buffer): add call to record-buffer-hook.
+ (syms_of_buffer): declare record-buffer-hook.
+
+ * s/mingw32.h: define mousewheel things.
+
+1999-08-04 Mike Woolley <mike@bulsara.com>
+
+ * windowsnt.h (_WIN32_WINNT): enable for win95
+
+ * s/cygwin32.h: define mousewheel things.
+
+ * scrollbar-msw.h: declare mousewheel handler.
+
+ * scrollbar-msw.c (mswindows_handle_mousewheel_event): new function.
+
+1999-08-04 Andy Piper <andy@xemacs.org>
+
+ * gui-x.c (gui_items_to_widget_values): remove unused variable.
+ (gui_items_to_widget_values_1): ditto.
+
+ * gui-x.h: unconditionally define since it is used everywhere.
+
+1999-08-04 Andy Piper <andy@xemacs.org>
+
+ * glyphs-x.c (x_finalize_image_instance): only free pixels if we
+ have that type of image.
+
+1999-07-30 Andy Piper <andy@xemacs.org>
+
+ * redisplay-output.c (redisplay_unmap_subwindows): add comparison
+ subwindow to not unmap if required.
+ (redisplay_unmap_subwindows_maybe): comparison is Qnil.
+ (redisplay_unmap_subwindows_except_us): new function.
+ (redisplay_output_subwindow): use it to unmap windows in the area
+ we are displaying into.
+
+ * glyphs.c (update_subwindow_cachel_data): always update as we
+ only ever get called when an update is required.
+ (update_subwindow_cachel): new function. sync a subwindow with its
+ cachel.
+ (Fresize_subwindow): use it.
+ (register_ignored_expose): make sure we set the tail correctly.
+
+1999-07-28 Andy Piper <andy@xemacs.org>
+
+ * redisplay-output.c (redisplay_clear_bottom_of_window): remove
+ unneeded device.
+
+ * gutter.c (redraw_exposed_gutter): unmap subwindows from the
+ whole gutter.
+
+ * gui.h: declare parse_gui_item_tree_list and
+ parse_gui_item_tree_children.
+
+ * gui.c (parse_gui_item_tree_item): new function for parsing item
+ lists into gui-item trees.
+ (parse_gui_item_tree_children): ditto.
+ (parse_gui_item_tree_list): ditto.
+
+ * gui-x.h: declare gui_items_to_widget_values.
+
+ * gui-x.c (gui_items_to_widget_values_1): new function for
+ recursively parsing gui-items into widget_values.
+ (gui_item_children_to_widget_values): ditto.
+ (gui_items_to_widget_values): ditto.
+ (sanity_check_lwlib): add widgets macrolets.
+
+ * glyphs.h (IMAGE_INSTANCE_WIDGET_ITEMS): rename from *ITEM.
+ (XIMAGE_INSTANCE_WIDGET_ITEMS): ditto.
+ (IMAGE_INSTANCE_WIDGET_ITEM): rename from *SINGLE_ITEM.
+ (XIMAGE_INSTANCE_WIDGET_ITEM): ditto.
+ (struct expose_ignore): new structure for storing ignorable expose
+ events.
+
+ * glyphs.c (valid_image_instantiator_format_p): fix so that using
+ a console-type as a locale works.
+ (mark_image_instance): ITEM->ITEMS.
+ (image_instance_equal): ditto.
+ (image_instance_hash): ditto.
+ (struct expose_ignore_blocktype): new blocktype.
+ (check_for_ignored_expose): new function. checks frame exposure
+ list for events to ignore.
+ (register_ignored_expose): new function. registers an expose event
+ as ignorable.
+ (unmap_subwindow): register the expose event as ignorable.
+ (vars_of_glyphs): initialise the exposure blocktype.
+
+ * glyphs-x.c (x_finalize_image_instance): use lw_destroy_widget.
+ (x_update_subwindow): modify all widgets using widget_value tree
+ rather than just a single widget value.
+ (x_widget_instantiate): LWLIB_USES_MOTIF -> LWLIB_WIDGETS_MOTIF.
+ make sure widgets don't resize themselves.
+ (x_tab_control_instantiate): new function. use lwlib tab functions.
+ (x_tab_control_set_property): new function.
+ (image_instantiator_format_create_glyphs_x): add tab_control.
+
+ * glyphs-widget.c (widget_text_to_pixel_conversion): calculate
+ slightly more sensibly.
+ (initialize_widget_image_instance): ITEM->ITEMS.
+ (widget_instantiate_1): parse gui items generically into the ITEMS
+ entry.
+
+ * glyphs-msw.c (mswindows_update_subwindow): replace
+ SINGLE_ITEM->ITEM.
+ (mswindows_register_widget_instance): ditto.
+ (add_tree_item): modify to use new pre-initialised gui-item
+ structure.
+ (add_tab_item): ditto.
+ (mswindows_tab_control_instantiate): ditto.
+ (mswindows_tab_control_set_property): ditto.
+ (image_instantiator_format_create_glyphs_mswindows): predicate
+ existance of widgets on HAVE_WIDGETS.
+
+ * frame.h (struct frame): add subwindow_exposures variables.
+
+ * frame.c (allocate_frame_core): reset subwindow_exposures links.
+
+ * event-msw.c (mswindows_wnd_proc): check for ignored
+ expose events before redrawing.
+
+ * event-Xt.c (emacs_Xt_handle_magic_event): check for ignored
+ expose events before redrawing.
+
+1999-07-30 SL Baur <steve@xemacs.org>
+
+ * scrollbar-x.c: should include EmacsFrame.h.
+ From Jeff Miller <jmiller@smart.net>
+
+1999-07-30 XEmacs Build Bot <builds@cvs.xemacs.org>
+
+ * XEmacs 21.2.19 is released
+
+1999-07-27 Jeff Miller <jmiller@smart.net>
+
+ * add a "#ifdef HAVE_MENUBARS" wrapper to gui.c around
+ menubar_show_keybindings.
+
+1999-07-23 SL Baur <steve@miho>
+
+ * mule-charset.c (syms_of_mule_charset): Delete duplicated
+ definition of Qccl_program.
+
+ * mule-ccl.h: Make a global declaration of it here.
+
+1999-07-20 Bob Weiner <weiner@beopen.com>
+
+ * s/sco7.h: Added from rr@sco.com.
+
+1999-06-25 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * mule-ccl.c (ccl_driver): Fix `CCL_WriteMultibyteChar2'.
+
+1999-06-24 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * file-coding.c (mule_decode): Setup `str->ccl.last_block'.
+ (mule_encode): Likewise.
+
+ * mule-ccl.c (Qccl_program): New variable.
+ (CCL_SUSPEND): New macro.
+ (CCL_INVALID_CMD): New macro.
+ (CCL_READ_CHAR): Don't regard as invalid command while processing
+ the last block even if input is empty; use
+ `CCL_STAT_SUSPEND_BY_SRC' instead of `CCL_STAT_SUSPEND'.
+ (vars_of_mule_ccl): Setup `Qccl_program' and `Qccl_program_idx'.
+
+ * mule-ccl.h (CCL_STAT_SUCCESS): Moved from mule-ccl.c.
+ (CCL_STAT_SUSPEND_BY_SRC): Imported from Emacs 20.3.10.
+ (CCL_STAT_SUSPEND_BY_DST): Likewise.
+ (CCL_STAT_INVALID_CMD): Moved from mule-ccl.c; change value from 2.
+ (CCL_STAT_QUIT): Moved from mule-ccl.c; change value from 3.
+
+1999-05-04 Ken'ichi Handa <handa@gnu.org>
+
+ * mule-ccl.h (struct ccl_program): New member stack_idx.
+
+ * mule-ccl.c (ccl_prog_stack_struct): Declare it as static.
+ (ccl_driver): Setup stack_idx and ccl_prog correctly. Update them
+ before returing.
+ (setup_ccl_program): Initialize ccl->stack_idx to 0.
+
+1998-10-12 Kenichi Handa <handa@etl.go.jp>
+
+ * mule-ccl.c (CCL_DECODE_SJIS, CCL_ENCODE_SJIS): Swap the
+ definitions.
+
+1998-08-18 Kenichi Handa <handa@etl.go.jp>
+
+ * mule-ccl.c (CCL_READ_CHAR): If eof is encounterd while
+ processing the last block, don't just finish but processes eol
+ block of the current CCL program.
+ (ccl_driver): Add a new jump label ccl_repeat for the above
+ change.
+
+1998-04-15 Kenichi Handa <handa@etl.go.jp>
+
+ * mule-ccl.c: Typo in comments fixed.
+ (Qccl_program_idx): New variables.
+ (CCL_ReadMultibyteChar2): Macro name changed from
+ CCL_ReadMultibyteCharacter.
+ (CCL_WriteMultibyteChar2): Macro name changed from
+ CCL_WriteMultibyteChar2.
+ (ccl_driver): Adjusted for the above changes.
+ (resolve_symbol_ccl_program): New function.
+ (Fccl_execute): The arg CCL-PROGRAM can be a symbol of CCL
+ program. If CCL-PRGRAM is a vector, convert symbols in it to ID
+ numbers by resolve_symbol_ccl_program.
+ (Fccl_execute_on_string): Likewise.
+ (Fregister_ccl_program): If the arg CCL-PRGRAM is a vector,
+ convert symbols in it to ID numbers by resolve_symbol_ccl_program.
+
+1998-01-21 Kenichi Handa <handa@etl.go.jp>
+
+ * mule-ccl.h: (struct ccl_program): New member private_state.
+
+ * mule-ccl.c
+ (CCL_Call): Fix the comment.
+ (CCL_ReadMultibyteCharacter, CCL_WriteMultibyteCharacter): New
+ macros for CCL Commands.
+ (EXCMD): New macro.
+ (ccl_driver): New case lable `CCL_Extention'.
+ (setup_ccl_program): Initialize the member `private_state' of CCL.
+
+1999-07-08 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * keymap.c (copy_keymap_internal): Inherit the default binding.
+
+1999-07-14 Kazuyuki IENAGA <kazz@imasy.or.jp>
+
+ * event-Xt.c (handle_focus_event_1): Re-enable Motif/XIM to get
+ focus the event (XIM_focus_event).
+ (emacs_Xt_handle_magic_event): No side effect on Motif/XIM because
+ XIM_SetGeometry does nothing in input_method_motif.c, but re-unify
+ the interface for future use (XIM_SetGeometry).
+ * redisplay-x.c (x_output_string): Re-enable Motif/XIM to set spot
+ location (XIM_SetSpotLocation).
+ (x_output_eol_cursor): Ditto.
+
+1999-07-17 Gunnar Evermann <ge204@eng.cam.ac.uk>
+
+ * gdbinit (pobj): change lrecord_foo to &lrecord_foo to match
+ Olivier's change to lrecord.h of 1999-04-22
+
+1999-07-20 Robert Pluim <rpluim@bigfoot.com>
+
+ * gutter.c (redraw_exposed_gutter): Change type of pos from
+ enum toolbar_pos -> enum gutter_pos, since former is only defined
+ if toolbar support is.
+
+1999-07-19 Andy Piper <andy@xemacs.org>
+
+ * glyphs-x.c (x_resize_subwindow): cope with widgets as well as
+ subwindows.
+
+ * gutter.c (gutter_validate): new function for the gutter specifier.
+ (specifier_type_create_gutter): declare specifier validator.
+
+ * buffer.h (INC_CHARBYTIND): add for no error checking version.
+
+1999-07-18 Andy Piper <andy@xemacs.org>
+
+ * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
+
+ * glyphs-msw.c (console_type_create_glyphs_mswindows): add
+ resize_subwindow.
+ (mswindows_resize_subwindow): new function.
+
+ * gutter.c (redraw_exposed_gutter): only reset the
+ current_display_lines if non-zero.
+ (Fgutter_pixel_height): new function.
+ (Fgutter_pixel_width): new function.
+
+ * event-msw.c (mswindows_wnd_proc): set the mask of the parameter
+ we want to retrive from the tab control.
+
+1999-07-17 Andy Piper <andy@xemacs.org>
+
+ * window.c (change_window_height): mark gutters changed when we're
+ done.
+
+ * gutter.c (specifier_vars_of_gutter): make defaults more
+ sensible.
+
+ * gutter.h (WINDOW_REAL_GUTTER_BORDER_WIDTH): adjust to be 0 for 0
+ height gutter.
+ (DEFAULT_GUTTER_WIDTH): change.
+ (DEFAULT_GUTTER_BORDER_WIDTH): change.
+
+1999-07-18 Andy Piper <andy@xemacs.org>
+
+ * redisplay.c (add_emchar_rune): use XSTRING_DATA not string_data.
+
+1999-07-16 Andy Piper <andy@xemacs.org>
+
+ * frame.c (Fmake_frame): call init_frame_gutters().
+
+ * redisplay.c (add_emchar_rune): use string functions if we are
+ working with a string.
+ (position_redisplay_data_type): add string element.
+
+1999-07-15 Andy Piper <andy@xemacs.org>
+
+ * winslots.h: add real_gutter_size slots to hold the actual gutter
+ size. This is important for autodetected sizes.
+
+ * gutter.c (calculate_gutter_size): calculate size for gutters
+ that have 'autodetect size.
+
+ * redisplay-msw.c (mswindows_output_vertical_divider): adjust
+ extent of divider for gutters.
+
+ * redisplay-x.c (x_output_vertical_divider): adjust extent of
+ divider for gutters.
+
+ * scrollbar.c (update_scrollbar_instance): adjust scrollbar
+ position to take into account the gutters.
+
+ * redisplay.c (generate_modeline): adjust modeline position to
+ take into account the gutters.
+
+1999-07-14 Andy Piper <andy@xemacs.org>
+
+ * gutter.c (frame_topmost_window): new function.
+ (frame_bottommost_window): ditto.
+ (frame_leftmost_window): ditto.
+ (frame_rightmost_window): ditto.
+
+1999-07-13 Andy Piper <andy@xemacs.org>
+
+ * redisplay.c (calculate_display_line_boundaries): use text
+ boundaries so that gutters get handled properly.
+
+1999-07-12 Andy Piper <andy@xemacs.org>
+
+ * glyphs-x.c (x_widget_instantiate): set the font Motif-style if
+ we're using Motif.
+
+ * redisplay-output.c (redisplay_clear_to_window_end): generalised
+ from redisplay-x.c
+
+ * redisplay-x.c (redisplay_clear_to_window_end): moved to
+ redisplay.c
+
+ * redisplay-msw.c (redisplay_clear_to_window_end): deleted.
+
+ * gutter.c: new file - implements gutters. All new functions are
+ semantically equivalent to the toolbar functions.
+ (gutter_was_visible): new function.
+ (get_gutter_coords): ditto.
+ (output_gutter): ditto.
+ (clear_gutter): ditto.
+ (update_frame_gutters): ditto.
+ (redraw_exposed_gutter): ditto.
+ (redraw_exposed_gutters): ditto.
+ (free_frame_gutters): ditto.
+ (init_frame_gutters): ditto.
+ (decode_gutter_position): ditto.
+ (Fset_default_gutter_position): ditto.
+ (Fset_default_gutter_position): ditto.
+ (Fdefault_gutter_position): ditto.
+ (gutter_after_change): ditto.
+ (Fgutter_specifier_p): ditto.
+ (recompute_overlaying_specifier): ditto.
+ (gutter_specs_changed): ditto.
+ (default_gutter_specs_changed): ditto.
+ (gutter_geometry_changed_in_window): ditto.
+ (default_gutter_size_changed_in_window): ditto.
+ (default_gutter_border_width_changed_in_window): ditto.
+ (default_gutter_visible_p_changed_in_window): ditto.
+ (syms_of_gutter): ditto.
+ (vars_of_gutter): ditto.
+ (specifier_type_create_gutter): ditto.
+ (specifier_vars_of_gutter): ditto.
+
+ * gutter.h: new file. Contains gutter constants and sizing macros
+ similar to those for the toolbar.
+
+ * winslots.h: add gutter variables.
+
+ * window.h: declare window_is_* functions.
+
+ * window.c (window_is_lowest): make non-static.
+ (window_is_highest): ditto.
+ (window_top_toolbar_height): deleted.
+ (window_bottom_toolbar_height): deleted.
+ (window_left_toolbar_width): deleted.
+ (window_right_toolbar_width): deleted.
+ (window_top_gutter_height): add gutter sizing.
+ (window_bottom_gutter_height): ditto.
+ (window_left_gutter_width): ditto.
+ (window_right_gutter_width): ditto.
+
+ * symsinit.h: declarations for gutters vars etc.
+
+ * search.c (bi_find_next_emchar_in_string): new function.
+
+ * scrollbar.c (update_scrollbar_instance): remove reference to
+ window_bottom_toolbar_height which did nothing.
+
+ * redisplay.h (struct display_line): add face indices for
+ overriding defaults in output_display_line.
+ Add gutter_changed flags and declarations.
+
+ * redisplay.c (create_string_text_block): new function, similar to
+ create_text_block but for strings. Display tables etc are used
+ from the currently selected window.
+ (generate_string_display_line): ditto. Similar to
+ generate_display_line.
+ (generate_displayable_area): generate display lines for a given
+ area on a frame. Input is the string, with associated extents, to
+ display.
+ (redisplay_frame): add gutter_changed check.
+ (redisplay_device): ditto.
+ (redisplay_without_hooks): ditto.
+
+ * redisplay-x.c (bevel_modeline): moved to redisplay.c.
+ (x_redraw_exposed_area): redraw exposed gutters.
+ (x_bevel_area): new redisplay device method.
+ (x_type_create_redisplay_mswindows): add bevel_area device method.
+ (x_output_display_block): fiddly Martin-style cleanup.
+ (x_output_vertical_divider): use bevel_area.
+
+ * redisplay-output.c (output_display_line): check display_lines
+ for face information before using defaults.
+ (bevel_modeline): new function, calls bevel_area with appropriate
+ values.
+
+ * redisplay-msw.c (bevel_modeline): moved to redisplay.c.
+ (mswindows_redraw_exposed_area): redraw exposed gutters.
+ (mswindows_bevel_area): new redisplay device method.
+ (console_type_create_redisplay_mswindows): add bevel_area device
+ method.
+
+ * indent.c (string_column_at_point): add column_at_point but for
+ strings.
+
+ * glyphs-x.c (image_instantiator_format_create_glyphs_x): only
+ instantiate widgets that we have a toolkit for.
+
+ * general.c: add Qgutter.
+
+ * frame.h (struct frame): add display lines for gutters and
+ visibility flags.
+
+ * frame.c (set_frame_selected_window): mark gutters changed.
+
+ * emacs.c (main_1): add gutter initialisation.
+
+ * device.h (struct device): add gutter_changed flag and macros to
+ manipulate it.
+
+ * console.h (struct console_methods): new bevel area redisplay
+ method.
+
+ * buffer.h (REAL_INC_CHARBYTIND): new macro for strings as
+ REAL_INC_BYTIND is for buffers.
+ (INC_CHARPTR): ditto.
+
+ * Makefile.in.in (objs): add gutter.o
+
+1999-07-13 XEmacs Build Bot <builds@cvs.xemacs.org>
+
+ * XEmacs 21.2.18 is released
+
+1999-07-08 SL Baur <steve@mule.m17n.org>
+
+ * event-Xt.c (handle_focus_event_1): Guard FRAME_X_XIC with
+ XIM_XLIB.
+ (emacs_Xt_handle_magic_event): Ditto.
+ * redisplay-x.c (x_output_string): Ditto.
+ (x_output_eol_cursor): Ditto.
+
+1999-06-30 Kazuyuki IENAGA <kazz@imasy.or.jp>
+
+ * event-Xt.c, input-method-xlib.c, redisplay-x.c: Avoid the
+ problem that when XIM is destroyed or missed with some reason,
+ xemacs will die. Now xim=xlib waits the XIM will be ready and
+ endures the case of XIM end up.
+
+1999-07-03 Gunnar Evermann <ge204@eng.cam.ac.uk>
+
+ * tooltalk.c (init_tooltalk): save signal actions for SIGQUIT,
+ SIGINT and SIGCHLD before calling tt_open and restore the
+ afterwards. This fixes e.g. the zombie subprocesses on Solaris
+
+1999-07-06 SL Baur <steve@xemacs.org>
+
+ * s/linux.h: gcc-2.8 changes for powerpc
+ From Justin Vallon <vallon@mindspring.com>
+
+1999-07-05 Didier Verna <verna@inf.enst.fr>
+
+ * indent.c: new symbol Qcoerce.
+ (Fmove_to_column): use it + doc string update.
+
+1999-07-04 Andy Piper <andy@xemacs.org>
+
+ * console.c: undo earlier Fprovide changes.
+ * fns.c: ditto.
+ * console.h: ditto.
+
+ * console-tty.c (image_instantiator_format_create_glyphs_tty): new
+ function. validate appropriate image formats for tty.
+
+ * glyphs.h (INITIALIZE_IMAGE_INSTANTIATOR_FORMAT_NO_SYM):
+ initialize consoles parameter.
+ (struct image_instantiator_methods): add consoles parameter.
+ (IIFORMAT_VALID_CONSOLE): new function. validate the format on the
+ console.
+ (INITIALIZE_DEVICE_IIFORMAT): validate the format on the given
+ console.
+
+ * glyphs-msw.c: declare instantiators for later use.
+ (image_instantiator_format_create_glyphs_mswindows): validate xpm
+ and friends on the mswindows console.
+ * glyphs-x.c: ditto.
+
+ * glyphs.c (valid_image_instantiator_format_p): disallow glyphs
+ that have not been registered on the supplied device.
+ (Fvalid_image_instantiator_format_p): add locale argument.
+ (instantiate_image_instantiator): valid image instantiator on the
+ device.
+
+ * symsinit.h: add image_instantiator_format_create_glyphs_tty()
+ declaration.
+
+ * emacs.c (main_1): add call to
+ image_instantiator_format_create_glyphs_tty().
+
+1999-06-29 Olivier Galibert <galibert@pobox.com>
+
+ * lisp.h: Add #include <stddef.h>.
+
+ * sysdep.c: Remove #include <stddef.h>.
+ * symbols.c: Remove #include <stddef.h>.
+ * sheap.c: Remove #include <stddef.h>.
+ * opaque.c: Remove #include <stddef.h>.
+ * nt.c: Remove #include <stddef.h>.
+ * mule-charset.c: Remove #include <stddef.h>.
+ * marker.c: Remove #include <stddef.h>.
+ * file-coding.c: Remove #include <stddef.h>.
+ * extents.c: Remove #include <stddef.h>.
+ * elhash.c: Remove #include <stddef.h>.
+ * data.c: Remove #include <stddef.h>.
+ * chartab.c: Remove #include <stddef.h>.
+ * bytecode.c: Remove #include <stddef.h>.
+ * alloc.c: Remove #include <stddef.h>. Fix vector description
+
+1999-06-30 SL Baur <steve@miho.m17n.org>
+
+ * editfns.c: Document "%s" format spec.
+ Suggested by Bob Weiner <weiner@altrasoft.com>
+
+1999-06-29 Andy Piper <andy@xemacs.org>
+
+ * event-msw.c: fix definition booboo.
+
+1999-06-28 Andy Piper <andy@xemacs.org>
+
+ * glyphs-x.c: change tree -> tree-view, progress ->
+ progress_gauge, edit -> edit-field, tab -> tab-control, combo ->
+ combo-box.
+ (complex_vars_of_glyphs_x): provide-on-console the implemented
+ widget types.
+
+ * glyphs-msw.c: ditto.
+ (complex_vars_of_glyphs_mswindows): ditto.
+
+ * lisp.h: add Fprovide_on_console.
+
+ * fns.c (Ffeaturep): add extra optional console argument.
+ (Fprovide_on_console): like Fprovide but provides only on the
+ specified console-type.
+ (Frequire): check console-features as well as global features.
+
+ * console.c (Fconsole_features): new function. return features for
+ this console.
+ (syms_of_console): add Fconsole_features.
+
+ * console.h (CONMETH_FEATURES): new function for accessing features.
+ (CONSOLE_FEATURES): ditto.
+ (struct console_methods): add features slot.
+ (INITIALIZE_CONSOLE_TYPE): initialize features slot.
+
+1999-06-28 Andy Piper <andy@xemacs.org>
+
+ * event-Xt.c (handle_focus_event_1): conditionally compile for
+ X11R5.
+
+ * s/cygwin32.h: fix me website address.
+
+ * event-msw.c: add NMHDR for pre b20 cygwin builds.
+
+ * gui-x.c (button_item_to_widget_value): only add callback if it
+ is non-nil.
+
+ * glyphs-x.c: add progress, edit and combo instantiators.
+ (x_widget_set_property): new function. uses lwlib to set widget
+ values.
+ (x_widget_property): new function. uses lwlib to get widget
+ values.
+ (x_button_instantiate): support images in buttons.
+ (x_button_property): new function. use lwlib to get the selected
+ state.
+ (x_progress_instantiate): new function for instantiating progress
+ gauges.
+ (x_progress_set_property): new function. sets the progress gauge
+ position.
+ (x_edit_instantiate): new function. for instantiating edit fields.
+ (x_combo_instantiate): new function. for instantiating combo
+ boxes.
+ (image_instantiator_format_create_glyphs_x): add new device ii
+ formats.
+
+ * glyphs-msw.c (mswindows_tab_instantiate): remove redundant var.
+
+ * console.h (CONSOLE_FEATURES): new features accesor.
+
+ * conslots.h (MARKED_SLOT): add features entry.
+
+1999-06-25 Andy Piper <andy@xemacs.org>
+
+ * menubar-x.c (menu_item_descriptor_to_widget_value_1): use new
+ gui functions.
+
+ * menubar-msw.c: move MAX_MENUITEM_LENGTH to gui.h
+
+ * gui.h (struct Lisp_Gui_Item): add accelerator.
+
+ * gui.c (gui_item_add_keyval_pair): deal with accelerators.
+ (gui_item_init): ditto.
+ (gui_add_item_keywords_to_plist): ditto.
+ (mark_gui_item): ditto.
+ (gui_item_hash): ditto.
+ (gui_item_accelerator): new function.
+ (gui_name_accelerator): new function stolen from gui-x.c
+
+ * gui-x.c (popup_selection_callback): always define. mark
+ subwindows changed after calling a callback.
+ (menu_name_to_accelerator): deleted.
+ (button_item_to_widget_value): forward gui_item things to gui_item
+ functions.
+
+ * glyphs-x.h (struct x_subwindow_data): add data for widgets. add
+ appropriate accesors.
+
+ * glyphs-x.c: declare new glyph formats.
+ (x_finalize_image_instance): unmanage and destroy widgets if they
+ exist.
+ (x_unmap_subwindow): handle widgets specially.
+ (x_map_subwindow): ditto. offset display of widgets by offset of
+ text widget within container.
+ (x_update_subwindow): new function. call lw_modify_all_widgets
+ when we are a widget.
+ (x_widget_instantiate): new function for generically creating
+ widgets-glyphs. toolkit specifics forwarded to lwlib.
+ (x_button_instantiate): new function for instantiating
+ widgets-glyph buttons.
+ (console_type_create_glyphs_x): register update_subwindow.
+ (image_instantiator_format_create_glyphs_x): register widget and
+ button types.
+
+ * event-msw.c (mswindows_wnd_proc): remove redundant variable.
+
+ * event-Xt.c (x_event_to_emacs_event): call handle_focus_event_1
+ when we get a button press in case we do not have the focus.
+ (handle_focus_event_1): set the keyboard focus to the text widget
+ if we do not have it.
+
+ * dialog-x.c (dbox_descriptor_to_widget_value): use new gui_item
+ functions.
+
+1999-06-24 SL Baur <steve@miho.m17n.org>
+
+ * syntax.c (scan_words): Restore non-Mule code.
+ (word_constituent_p): Restore.
+
+1999-06-23 Olivier Galibert <galibert@pobox.com>
+
+ * config.h.in: Add missing #undef *_USER_DEFINED.
+
+1999-06-23 SL Baur <steve@miho.m17n.org>
+
+ * lisp.h (set_bit_vector_bit): Force promotion to unsigned long
+ int (fixes a 64-bit problem).
+
+ * chartab.c (word_boundary_p): Use EQ not == for lisp_object
+ comparison.
+
+1999-03-23 Michael Sperber [Mr. Preprocessor] <sperber@informatik.uni-tuebingen.de>
+
+ * paths.h.in (PATH_DOC): Made doc-directory configurable.
+
+1999-06-22 Olivier Galibert <galibert@pobox.com>
+
+ * lrecord.h: Added basic external description system.
+
+ * symbols.c: Added symbol, symbol-value-buffer-local,
+ symbol-value-lisp-magic and symbol-value-varalias description.
+ * mule-charset.c: Added charset description.
+ * marker.c: Added marker description.
+ * keymap.c: Added keymap description.
+ * glyphs.c: Added glyph description.
+ * floatfns.c: Added float description.
+ * file-coding.c: Added coding-system description.
+ * extents.c: Added extent description.
+ * elhash.c: Added hash-table description.
+ * data.c: Added weak-list desciption.
+ * chartab.c: Added char-table-entry and char-table description.
+ * bytecode.c: Added compiled-function description.
+ * alloc.c: Added cons, vector and string description.
+
+1999-06-22 Olivier Galibert <galibert@pobox.com>
+
+ * lrecord.h (struct lrecord_header): Reduced size to 4 bytes.
+ Updated everything to the removal of the "flags" substructure.
+
+ * lisp.h (subr_lheader_initializer): Updated.
+ * symeval.h (symbol_value_forward_lheader_initializer): Updated.
+
+1999-06-20 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * syntax.c (word_constituent_p): Deleted.
+ (scan_words): Use `WORD_BOUNDARY_P'.
+
+ * chartab.c (Vword_combining_categories): New variable.
+ (Vword_separating_categories): Likewise.
+ (CATEGORYP): New macro.
+ (CATEGORY_SET): Likewise.
+ (CATEGORY_MEMBER): Likewise.
+ (word_boundary_p): New function.
+ (complex_vars_of_chartab): Set up new variable
+ `word-combining-categories' and `word-separating-categories'.
+
+1999-06-18 Olivier Galibert <galibert@pobox.com>
+
+ * lrecord.h: Added description as a placehold in the lrecord
+ implementation structures. Added the parameter to all constructor
+ defines.
+
+ * alloc.c: Added placeholders.
+ * buffer.c: Ditto.
+ * bytecode.c: Ditto.
+ * chartab.c: Ditto.
+ * console.c: Ditto.
+ * data.c: Ditto.
+ * database.c: Ditto.
+ * device.c: Ditto.
+ * eldap.c: Ditto.
+ * elhash.c: Ditto.
+ * eval.c: Ditto.
+ * event-stream.c: Ditto.
+ * events.c: Ditto.
+ * extents.c: Ditto.
+ * faces.c: Ditto.
+ * file-coding.c: Ditto.
+ * floatfns.c: Ditto.
+ * fns.c: Ditto.
+ * frame.c: Ditto.
+ * glyphs.c: Ditto.
+ * gui-x.c: Ditto.
+ * keymap.c: Ditto.
+ * lstream.c: Ditto.
+ * marker.c: Ditto.
+ * mule-charset.c: Ditto.
+ * objects.c: Ditto.
+ * opaque.c: Ditto.
+ * process.c: Ditto.
+ * rangetab.c: Ditto.
+ * specifier.c: Ditto.
+ * symbols.c: Ditto.
+ * toolbar.c: Ditto.
+ * tooltalk.c: Ditto.
+ * window.c: Ditto.
+
+1999-06-22 XEmacs Build Bot <builds@cvs.xemacs.org>
+
+ * XEmacs 21.2.17 is released
+
+1999-06-13 Oscar Figueiredo <oscar@xemacs.org>
+
+ * config.h.in (HAVE_LDAP_SET_OPTION): New define
+ (HAVE_LDAP_GET_LDERRNO): Ditto
+ (HAVE_LDAP_RESULT2ERROR): Ditto
+ (HAVE_LDAP_PARSE_RESULT): Ditto
+ (HAVE_UMICH_LDAP): Removed
+ (HAVE_NS_LDAP): Removed
+
+ * eldap.h (struct Lisp_LDAP): Removed the `livep' member as
+ suggested by Olivier Galibert
+ (CHECK_LIVE_LDAP): Test on `ld' instead of `livep'
+
+ * eldap.c: Take the removal of `livep' into account in all the
+ necessary functions
+ (signal_ldap_error): Take two additional parameters
+ Added new finer compilation conditions in order to use
+ ldap_parse_result or ldap_result2error if available
+ (Fldap_open): Conform to this new API
+ (Fldap_search_internal): Ditto
+
+1999-06-17 SL Baur <steve@miho.m17n.org>
+
+ * data.c (struct int_or_double): Should use EMACS_INT not int.
+
+1999-06-16 Norbert Koch <n.koch@eai-delta.de>
+
+ * redisplay-msw.c: Run 'ccl_driver' with 'CCL_MODE_ENCODING' as in
+ redisplay-x.c
+
+1999-06-12 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * redisplay-x.c (separate_textual_runs): Run `ccl_driver' with
+ `CCL_MODE_ENCODING'.
+
+ * file-coding.c (mule_decode): Run `ccl_driver' with
+ `CCL_MODE_DECODING'.
+ (mule_encode): Run `ccl_driver' with `CCL_MODE_ENCODING'.
+
+ * mule-ccl.c (CCL_WRITE_CHAR): Refer `conversion_mode'.
+ (ccl_driver): Add new argument `conversion_mode'.
+ (Fccl_execute): Run `ccl_driver' with `CCL_MODE_ENCODING'.
+ (Fccl_execute_on_string): Likewise [perhaps it is better to add
+ new optional argument].
+
+ * mule-ccl.h (CCL_MODE_ENCODING): New macro.
+ (CCL_MODE_DECODING): New macro.
+ (ccl_driver): Add new argument `conversion_mode'.
+
+1999-06-15 SL Baur <steve@miho.m17n.org>
+
+ * mule-charset.c (Fsplit_char): New subr.
+ (Fchar_octet): delete.
+ (syms_of_mule_charset): DEFSUBR it.
+
+1999-06-13 Andy Piper <andy@xemacs.org>
+
+ * menubar.h: update declarations involving gui_items.
+
+ * lisp.h: declare Lisp_Gui_Item.
+
+ * glyphs.h (struct Lisp_Image_Instance): update type of gui_item.
+
+ * glyphs.c (mark_image_instance): modify for new lisp-based gui_items.
+ (print_image_instance): ditto.
+ (image_instance_equal): ditto.
+ (image_instance_hash): ditto.
+
+ * event-msw.c (mswindows_need_event): assert badly_p status.
+ (mswindows_wnd_proc): modify WM_NOTIFY handling to cope with
+ callbacks in tree-view and tab-control widgets.
+ (emacs_mswindows_next_event): modify use of
+ mswindows_dequeue_dispatch_event.
+
+ * dialog-msw.c (mswindows_popup_dialog_box): modify for new
+ lisp-based gui_items.
+
+ * glyphs-msw.c (mswindows_update_subwindow): update use of
+ gui_items.
+ (mswindows_register_gui_item): new function.
+ (mswindows_register_gui_item): fix to use lisp gui_items.
+ (mswindows_widget_instantiate): ditto.
+ (mswindows_button_instantiate): ditto.
+ (add_tree_item): new function to recursively add tree view
+ elements.
+ (add_tree_item_list): ditto.
+ (mswindows_tree_instantiate): new function. instantiate tree view
+ controls.
+ (add_tab_item): new function to add tabs to a tab control.
+ (mswindows_tab_instantiate): new function. instantiate tab
+ controls.
+ (image_instantiator_format_create_glyphs_mswindows): add tree view
+ and tab controls.
+ (vars_of_glyphs_mswindows): ditto.
+
+ * glyphs-widget.c (check_valid_item_list_1): allow nested lists in
+ item lists.
+ (check_valid_item_list): ditto.
+ (initialize_widget_image_instance): fix to use new lisp gui_item.
+ (widget_instantiate_1): allow the setting of default textwidth in
+ characters.
+ (widget_instantiate): change to use new widget_instantiate_1
+ signature.
+ (combo_instantiate): ditto.
+ (static_instantiate): ditto.
+ (tab_instantiate): new function for tab widgets.
+ (image_instantiator_format_create_glyphs_widget): add tab and tree
+ view widgets.
+
+ * menubar-msw.c (displayable_menu_item): convert to use lisp
+ gui_items.
+ (populate_menu_add_item): ditto.
+ (populate_or_checksum_helper): ditto.
+
+ * menubar.c (menu_parse_submenu_keywords): convert to use lisp
+ gui_items.
+ (Fmenu_find_real_submenu): ditto.
+
+ * gui.h (struct Lisp_Gui_Item): make gui_item a lisp oebjct.
+
+ * gui.c (gui_item_add_keyval_pair): gui_items are now lisp
+ objects, convert functions that use them accordingly.
+ (gui_item_init): ditto.
+ (gui_item_active_p): ditto.
+ (gui_item_selected_p): ditto.
+ (gui_item_included_p): ditto.
+ (gui_item_display_flush_left): ditto.
+ (gui_item_display_flush_right): ditto.
+ (mark_gui_item): ditto.
+ (allocate_gui_item): new function to create a gui_item.
+ (make_gui_item_from_keywords_internal): ditto. create and return a
+ gui_item as well as setting keywords.
+ (gui_parse_item_keywords): ditto.
+ (gui_parse_item_keywords_no_errors): ditto.
+ (gui_add_item_keywords_to_plist): new function, not yet used.
+ (gui_item_hash): new function.
+ (gui_item_id_hash): use gui_item_hash.
+ (gui_item_equal): new function.
+ (print_gui_item): new function.
+
+1999-06-11 XEmacs Build Bot <builds@cvs.xemacs.org>
+
+ * XEmacs 21.2.16 is released
+
+1999-06-10 Andy Piper <andy@xemacs.org>
+
+ * select-msw.c (mswindows_own_selection): only set the clipboard
+ if asked.
+ (mswindows_get_foreign_selection): only get the clipboard if
+ asked.
+ (mswindows_disown_selection): only disown the clipboard if asked.
+
+1999-06-03 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * file-coding.c (coding_system_from_mask): Use `raw-text' instead
+ of `no-conversion'.
+ (complex_vars_of_mule_coding): Use `raw-text' as the coding-system
+ of coding-category `no-conversion'.
+
+1999-06-03 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * file-coding.c (Qraw_text): New variable.
+ (syms_of_mule_coding): Add new symbol `raw-text'.
+ (complex_vars_of_mule_coding): Add new coding-system `raw-text';
+ define coding-system `binary' independently; define coding-system
+ `no-conversion' as an alias for `raw-text'.
+
+ * file-coding.h (Qraw_text): New variable.
+
+1999-06-08 SL Baur <steve@xemacs.org>
+
+ * s/decosf4-0.h: Explicitly #undef SYSTEM_MALLOC.
+
+1999-06-06 Hrvoje Niksic <hniksic@srce.hr>
+
+ * fns.c (MIME_LINE_LENGTH): Default to 72, as in mimencode and
+ base64.el.
+ (base64_decode_1): Signal errors instead of returning -1.
+
+1999-06-07 Hrvoje Niksic <hniksic@srce.hr>
+
+ * mule-charset.c (Fmake_char): Update docstring.
+
+1999-06-07 Hrvoje Niksic <hniksic@srce.hr>
+
+ * fns.c (Fstring_lessp): Actually increment the Bufbyte pointers.
+
+1999-06-05 Hrvoje Niksic <hniksic@srce.hr>
+
+ * fns.c (base64_decode_1): Allow and ignore any non-base64
+ characters in input.
+
+1999-05-27 Olivier Galibert <galibert@pobox.com>
+
+ * emacs.c (Fdump_emacs): Add clear_message() lost with the removal
+ of report_pure_usage().
+
+1999-06-04 Hrvoje Niksic <hniksic@srce.hr>
+
+ * fns.c (Fstring_lessp): Remove O(n^2) under Mule.
+
+1999-06-04 XEmacs Build Bot <builds@cvs.xemacs.org>
+
+ * XEmacs 21.2.15 is released
+
+1999-06-01 Hirokazu FUKUI <fukui@atesoft.advantest.co.jp>
+
+ * frame.c (Fset_mouse_position):
+ (Fset_mouse_pixel_position):
+ * window.c (Fsplit_window):
+ (Fmove_to_window_line):
+ Fix crash when invoking functions with an already-deleted window
+ argument.
+
+ * indent.c (vertical_motion_1):
+ (vmotion_pixels):
+ (Fvertical_motion_pixels):
+ * window.c (Fwindow_displayed_text_pixel_height):
+ Fix error message when invoking functions with an already-deleted
+ window argument.
+
+1999-06-01 Jan Vroonhof <vroonhof@math.ethz.ch>
+
+ * sysdep.c (request_sigio_on_device): Guard against glibc
+ 2.1's stub streams implementation.
+
+1999-06-03 SL Baur <steve@xemacs.org>
+
+ * config.h.in:
+ * emacs.c: Implement x.y.z version numbers
+ From Jan Vroonhof <vroonhof@math.ethz.ch>
+
+1999-05-20 MORIOKA Tomohiko <tomo@etl.go.jp>
+
+ * mule-charset.c (complex_vars_of_mule_charset): Registry of
+ japanese-jisx0208-1978 should not match with "jisx0208.1983" nor
+ "jisc6226.1983".
+
+1999-06-03 SL Baur <steve@xemacs.org>
+
+ * frame-x.c:
+ * device-x.c: rename session option to wmcommand.
+ From Oliver Graf <ograf@rhein-zeitung.de>
+
+1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
+
+ * fns.c (Fsubstring): Don't traverse the same region twice with
+ charcount_to_bytecount().
+
+1999-06-03 SL Baur <steve@steve1.m17n.org>
+
+ * m/alpha.h (SYSTEM_MALLOC): Fix indented preprocessor directive
+ garbage.
+
+ * s/decosf4-0.h: Defining ORDINARY_LINK here is redundant (and it
+ doesn't really work as is implied by the commentary).
+ Don't define SYSTEM_MALLOC so the old GNU malloc can be used.
+
+1999-06-02 SL Baur <steve@steve1.m17n.org>
+
+ * symsinit.h: Declare vars_of_ntproc.
+ * emacs.c (main_1): Call it.
+
+ * ntproc.c (syms_of_ntproc): Move variable initializations from
+ here ...
+ (vars_of_ntproc): ... to here [new function].
+
+ * file-coding.c (syms_of_file_coding): Rename.
+ (vars_of_file_coding): Ditto.
+ (complex_vars_of_file_coding): Ditto.
+
+ * symsinit.h: Rename *_mule_coding to *_file_coding.
+
+ * emacs.c (main_1): Call them by the proper name.
+
+ * device-msw.c (syms_of_device_mswindows): Move variable
+ initializations from here ...
+ (vars_of_device_mswindows): ... to here.
+
+ * chartab.c (vars_of_chartab): New function.
+
+ * symsinit.h: New function, vars_of_chartab.
+
+ * emacs.c (main_1): Call it.
+
+ * mule-canna.c (syms_of_mule_canna): Move CANNA initialization ...
+ (vars_of_mule_canna): ... to here.
+
+ * mule-ccl.c (vars_of_mule_ccl): New function. Move variable
+ initializations out of syms_of_mule_ccl.
+
+ * symsinit.h: Declare new function vars_of_mule_ccl.
+
+ * emacs.c (main_1): Call it.
+
+1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
+
+ * fns.c (base64_decode_1): Ignore whitespace.
+
+1999-05-27 Hrvoje Niksic <hniksic@srce.hr>
+
+ * mule-charset.c (Fmake_char): Strip the eighth bit off ARG1 and
+ ARG2.
+
+1999-05-21 Andy Piper <andy@xemacs.org>
+
+ * xselect.c: deleted.
+
+ * symsinit.h: declare select initialisation.
+
+ * select.h: new file. declare commonly used select functions and
+ variables.
+
+ * select.c: new file. generalised from xselect.c.
+ (clean_local_selection_data): moved from xselect.c.
+ (get_local_selection): ditto. device specific pieces called via a
+ devmeth.
+ (handle_selection_clear): ditto.
+ (Fown_selection_internal): renamed and generalised from
+ Fx_own_selection_internal. moved from xselect.c.
+ (Fdisown_selection_internal): ditto.
+ (Fselection_owner_p): ditto.
+ (Fselection_exists_p): ditto.
+ (Fget_selection_internal): ditto.
+ (syms_of_select): new function. QXXXX values moved from xselect.c
+ (vars_of_select): new function. selection_converter_alist,
+ lost_selection_hooks moved and renamed from xselect.c
+
+ * select-x.c: renamed from xselect.c.
+ (x_own_selection): converted to device specific. non-X-specific
+ bits moved to select.c.
+ (x_get_foreign_selection): ditto.
+ (x_disown_selection): ditto.
+ (x_selection_exists_p): ditto.
+ (console_type_create_select_x): new function.
+
+ * select-msw.c (mswindows_own_selection): new device method to set
+ the clipboard when we 'own' the selection.
+ (mswindows_get_foreign_selection): new device method to get the
+ clipboard.
+ (mswindows_disown_selection): new device method to delete the
+ selection when we 'disown' it.
+ (console_type_create_select_mswindows): new function.
+
+ * emacs.c (main_1): add select to things to initialise.
+
+ * console.h (struct console_methods): new console methods for
+ selection.
+
+ * Makefile.in.in (x_objs): xselect.c renamed to select-x.c
+
+1999-05-20 Hrvoje Niksic <hniksic@srce.hr>
+
+ * print.c (long_to_string): Install a faster version.
+
+1999-05-16 Andy Piper <andy@xemacs.org>
+
+ * ntproc.c (syms_of_ntproc): default
+ win32-start-process-share-console to t.
+
+1999-05-14 Hrvoje Niksic <hniksic@srce.hr>
+
+ * config.h.in: Do it here.
+
+ * bytecode.c: Don't define ERROR_CHECK_TYPECHECK here.
+
+1999-05-14 Andy Piper <andy@xemacs.org>
+
+ * toolbar-msw.c (mswindows_output_toolbar): hash on something
+ hashable.
+