+2000-02-17 Gerd Moellmann <gerd@gnu.org>
+
+ * alloc.c (enum mem_type): Compile unconditionally.
+
+2000-02-17 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * xfaces.c (tty_defined_color): Don't return faulire indication
+ for unspecified-fg and unspecified-bg pseudo-colors.
+
+2000-02-17 Gerd Moellmann <gerd@gnu.org>
+
+ * alloc.c (mark_object): Don't mark symbol names in pure space.
+ (gc_sweep): Don't unmark symbol names in pure space.
+
+ * lisp.h (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
+ (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
+ [GC_MARK_STACK]: New defines.
+ (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, UNGCPRO)
+ [GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS]: Define as no-ops.
+
+ * emacs.c (main) [GC_MARK_STACK]: Initialize stack_base.
+
+ * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use
+ allocate_buffer instead of xmalloc.
+
+ * alloc.c (toplevel): Include setjmp.h.
+ (PURE_POINTER_P): New define.
+ (enum mem_type) [GC_MARK_STACK]: New enumeration.
+ (Vdead) [GC_MARK_STACK]: New variable.
+ (lisp_malloc): Add parameter TYPE, call mem_insert if
+ GC_MARK_STACK is defined.
+ (allocate_buffer): New function.
+ (lisp_free) [GC_MARK_STACK]: Call mem_delete.
+ (free_float) [GC_MARK_STACK]: Set type to Vdead.
+ (free_cons) [GC_MARK_STACK]: Set car to Vdead.
+ (stack_base, mem_root, mem_z) [GC_MARK_STACK]: New variables.
+ (MEM_NIL) [GC_MARK_STACK]: New define.
+ (struct mem_node) [GC_MARK_STACK]: New structure.
+ (mem_init, mem_find, mem_insert, mem_delete, mem_insert_fixup)
+ (mem_delete_fixup, mem_rotate_left, mem_rotate_right)
+ (live_string_p, live_cons_p, live_symbol_p, live_float_p)
+ (live_misc_p, live_vector_p, live_buffer_p, mark_memory)
+ (mark_stack) [GC_MARK_STACK]: New functions.
+ (Fgarbage_collect) [GC_MARK_STACK]: Call mark_stack.
+ (clear_marks): Removed.
+ (gc_sweep): Set free conses' car, free floats' type, free
+ symbols' function to Vdead. Use lisp_free to free buffers.
+ (init_alloc_once): Initialize Vdead.
+ (survives_gc_p): Return non-zero for pure objects.
+
+ * alloc.c: Add comments throughout the file.
+
+ * atimer.c (stop_other_atimers): Don't call cancel_atimer because
+ that unblocks alarms.
+
+ * alloc.c, bytecode.c, data.c, dispnew.c, ecrt0.c, editfns.c,
+ emacs.c, floatfns.c, fns.c, lread.c, print.c, config.in, lisp.h,
+ Makefile.in: Remove `LISP_FLOAT_TYPE' and `standalone'.
+
+ * frame.c (make_frame): Set frame initiallly to `garbaged'.
+
+2000-02-17 Kenichi Handa <handa@etl.go.jp>
+
+ * xdisp.c (decode_mode_spec_coding): Delete superfluous code to
+ avoid infinite error signaling. Allocate sufficient memory for
+ eol_str in the case that eoltype is Lisp_Int.
+
+2000-02-17 Stefan Monnier <monnier@cs.yale.edu>
+
+ * syntax.c (Fforward_comment): Undo the previous change, since cc-mode
+ depends on the previous behavior.
+
+2000-02-16 Gerd Moellmann <gerd@gnu.org>
+
+ * sysdep.c (vfork) [!HAVE_VFORK]: Removed.
+
+2000-02-15 Gerd Moellmann <gerd@gnu.org>
+
+ * s/freebsd.h (BROKEN_PTY_READ_AFTER_EAGAIN): Define.
+
+ * process.c (send_process) [BROKEN_PTY_READ_AFTER_EAGAIN]:
+ Workaround for FreeBSD bug. Clear output queue after EAGAIN in
+ write(2).
+
+2000-02-15 Richard M. Stallman <rms@gnu.org>
+
+ * data.c (set_internal): Don't make variable buffer-local
+ if within a let-binding for the same buffer.
+ (let_shadows_buffer_binding_p): New function.
+
+ * eval.c (specbind): For buffer-local value,
+ record the current buffer also.
+ (unbind_to): Cope with that change.
+
+2000-02-15 Gerd Moellmann <gerd@gnu.org>
+
+ * window.c (Fsave_window_excursion): Doc fix.
+
+2000-02-15 Stefan Monnier <monnier@cs.yale.edu>
+
+ * syntax.c (back_comment): Make sure we only consider comment-starters
+ of the relevant style and return -1 in case of a failure to find the
+ beginning of the comment.
+ (Fforward_comment): If back_comment fails, go back to the position just
+ after the comment-end.
+ (scan_lists): Add comment describing a very minor bug.
+
+2000-02-14 Stefan Monnier <monnier@cs.yale.edu>
+
+ * minibuf.c (Ftry_completion, Fall_completions): Add a reference to
+ `completion-regexp-list' in the docstring.
+
+2000-02-14 Dave Love <fx@gnu.org>
+
+ * xfaces.c (tty_defined_color): Declare color_idx unsigned long.
+
+2000-02-14 Stefan Monnier <monnier@cs.yale.edu>
+
+ * regex.h (RE_SYNTAX_EMACS): Add RE_CHAR_CLASSES and RE_INTERVALS
+ to Emacs' syntax. Also fix the comment about set/not-set meanings
+ since Emacs syntax is not the value 0 any more.
+ * search.c (compile_pattern_1): Remove RE_CHAR_CLASSES from the syntax
+ since it's now part of RE_SYNTAX_EMACS.
+
+2000-02-12 Dave Love <fx@gnu.org>
+
+ * frame.h (SELECTED_FRAME): Use NULL, not 0 to avoid warnings on
+ Alpha.
+
+2000-02-12 Gerd Moellmann <gerd@gnu.org>
+
+ * xdisp.c (syms_of_xdisp): Doc fix for scroll-conservatively.
+
+2000-02-12 Dave Love <fx@gnu.org>
+
+ * s/aix3-2.h, s/osf-1.h: Define C_DEBUG_SWITCH for non-gcc.
+
+ * s/ux4800.h, s/umips.h, s/umax.h, s/sol2.h, s/sco5.h, s/rtu.h:
+ * s/ptx4.h, s/umax.h, s/dgux.h, s/bsd4-2.h, s/bsd4-3.h:
+ * s/hpux.h: Don't define HAVE_VFORK.
+
+ * s/gnu-linux.h: Don't define HAVE_VFORK or HAVE_SYS_SIGLIST.
+
+ * s/nextstep.h: Don't define HAVE_ALLOCA.
+
+ * config.in: Add vfork bits.
+
+2000-02-12 Gerd Moellmann <gerd@gnu.org>
+
+ * process.c (Fopen_network_stream) [POLL_FOR_INPUT]: Register
+ unwind function to undo the effect of stopping atimers.
+
+ * keyboard.c (bind_polling_period): Stop all timers except
+ poll_timer.
+
+ * atimer.c (stopped_atimers): New variable.
+ (stop_other_atimers, run_all_atimers, unwind_stop_other_atimers):
+ New functions.
+
+ * atimer.h (stop_other_atimers, run_all_atimers)
+ (unwind_stop_other_atimers): Add function prototypes.
+
+ * s/hpux10.h (HAVE_XRMSETDATABASE): Define if not already defined.
+
+2000-02-11 Ken Raeburn <raeburn@gnu.org>
+
+ * Makefile.in (LIBX): Link in tiff library before jpeg, since tiff
+ library may depend on jpeg.
+ (atimer.o): Depends on atimer.c.
+
+2000-02-11 Kenichi Handa <handa@etl.go.jp>
+
+ * insdel.c (del_range_1): Call update_compositions.
+ (del_range_both): Call update_compositions just once..
+
+2000-02-10 Dave Love <fx@gnu.org>
+
+ * xfns.c (create_frame_xic): Fix initialization of automatic
+ aggregates for pcc.
+
+2000-02-09 Kenichi Handa <handa@etl.go.jp>
+
+ * ccl.c (CCL_MAKE_CHAR): New macro.
+ (ccl_driver) <CCL_TranslateCharacter>: Check the validity of
+ registers by CCL_MAKE_CHAR before calling translate_char.
+ <CCL_TranslateCharacterConstTbl> Likewise.
+
+2000-02-08 Dave Love <fx@gnu.org>
+
+ * lread.c (__EXTENSIONS__): Define.
+
+2000-02-08 Gerd Moellmann <gerd@gnu.org>
+
+ * puresize.h (BASE_PURESIZE): Increase to 650000.
+
+2000-02-07 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * msdos.c (XMenuActivate): Turn off the cursor after displaying
+ the help message.
+
+2000-02-07 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * s/msdos.h (INTERNAL_TERMINAL): Add capabilities se, so, us, ue,
+ md, mh, mb, mr, and me to the fake termcap entry.
+
+2000-02-06 Ken Raeburn <raeburn@gnu.org>
+
+ * sound.c (sound_cleanup): Don't call device close routine if the
+ function pointer is null.
+
+2000-02-06 Andrew Innes <andrewi@gnu.org>
+
+ * dispextern.h: Change HAVE_X_WINDOWS to HAVE_WINDOW_SYSTEM,
+ around image definitions and prototypes.
+ (gamma_correct) [WINDOWSNT]: New prototype.
+
+ * w32term.c (x_make_frame_visible): Replace call to
+ input_poll_signal with poll_for_input.
+
+ * window.c [WINDOWSNT]: Include w32term.h.
+
+ * xdisp.c [WINDOWSNT]: Include w32term.h.
+
+ * makefile.nt: Add dependencies on w32gui.h.
+ (OBJ1): Include atimer.obj.
+ ($(BLD)\atimer.obj): New dependency rule.
+
+ * w32.c (sigmask): New function (does nothing).
+ (sigunblock): Ditto.
+
+ * frame.c [WINDOWSNT]: Include w32term.h.
+
+ * w32gui.h (struct W32FontStruct): Add ascent and descent slots.
+
+ * lread.c (syms_of_lread): Fix literal newlines.
+
+ * emacs.c (USAGE): Split into USAGE1 and USAGE2, to work-around
+ the string constant limit (2048 bytes) in MSVC.
+ (main): Ditto.
+
+2000-02-05 INOUE Seiichiro <inoue@ainet.or.jp>
+
+ * xterm.c (x_display_and_set_cursor) [HAVE_X_I18N]: Set pre-edit
+ area.
+ (x_display_cursor) [HAVE_X_I18N]: Don't set it here.
+ (XTread_socket) [HAVE_X_I18N]: <KeyPress, KeyRelease>: Don't
+ dispatch the event.
+
+2000-02-04 Dave Love <fx@gnu.org>
+
+ * fileio.c: Remove some unused vars.
+ (_GNU_SOURCE): Define (for euidaccess).
+
+ * lread.c (_XOPEN_SOURCE): Declare (for ftello).
+
+ * minibuf.c (read_minibuf_noninteractive): Remove undeclared
+ gcpro1, gcpro2.
+ (read_minibuf): Deal with allow_props correctly.
+
+2000-02-03 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Enlarge to 60000.
+
+2000-02-03 Ken Raeburn <raeburn@gnu.org>
+
+ * search.c (compile_pattern): If a cache entry has a nil regexp,
+ fill in that entry instead of clobbering a previously cached
+ string regexp.
+
+2000-02-02 Ken Raeburn <raeburn@gnu.org>
+
+ * puresize.h (BASE_PURESIZE): Increase to 610000.
+
+2000-02-02 Gerd Moellmann <gerd@gnu.org>
+
+ * frame.c (Fframe_parameters): Add GCPRO because tty_color_name
+ can GC.
+
+2000-02-02 Kenichi Handa <handa@etl.go.jp>
+
+ * ccl.c (ccl_driver) <CCL_WriteExprRegister>: Set jump_address
+ instead of incrementing ic directly.
+ <CCL_WriteExprConst> Likewise.
+ <ccl_set_expr>: Set ic to jump_address.
+
+ * fileio.c (e_write): Fix the handling of
+ CODING_FINISH_INSUFFICIENT_SRC.
+
+2000-02-01 Dave Love <fx@gnu.org>
+
+ * editfns.c (Fpropertize): Doc fix.
+
+ * process.c (Fstart_process): Doc fix.
+
+ * eval.c: Fix various doc strings not to duplicate information
+ from help-manyarg-func-alist.
+
+ * window.c (Fset_window_margins): Don't make interactive. Doc
+ fix.
+
+ * doc.c (Vhelp_manyarg_func_alist): New variable.
+ (Fdocumentation): Use it.
+ (syms_of_doc): Define it.
+
+2000-01-31 Gerd Moellmann <gerd@gnu.org>
+
+ * xterm.c (xim_open_dpy): Remove unused local variable.
+
+ * emacs.c (USAGE): Use term `display options' instead of `X
+ options'.
+
+ * xdisp.c (Ftrace_to_stderr) [GLYPH_DEBUG]: New function.
+ (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
+
+ * fns.c (sweep_weak_table): New function.
+ (sweep_weak_hash_tables): Use it. Keep on marking until there
+ is no more change.
+
+2000-01-30 Gerd Moellmann <gerd@gnu.org>
+
+ * xterm.c (x_delete_display): Update next_noop_dpyinfo to ensure
+ that XTread_socket does not crash by trying to call XNoOp on a
+ closed display.
+
+2000-01-30 Jason Rumney <jasonr@gnu.org>
+
+ * w32inevt.c (get_frame, w32_console_mouse_position, mouse_moved_to):
+ Change selected_frame to SELECTED_FRAME ().
+ (w32_console_mouse_position): Remove #ifndef MULE from around
+ `insist' parameter.
+
+ * makefile.nt: Remove dosfns.obj.
+
+ * term.c (term_init) [WINDOWSNT]: Initialize TN_max_colors.
+
+ * w32fns.c (w32_defined_color): Check for valid frame before
+ applying gamma correction. Eliminate dependency on frame elsewhere.
+ (w32_load_system_font): Switch FIXED_PITCH and VARIABLE_PITCH.
+ (w32_to_x_font): Use resx and resy not height_in and width_in.
+ (x_to_w32_font): Doc fix.
+ (xlfd_strip_height): New function to strip and return font height.
+ (w32_font_match): Compare height separately from rest of xlfd
+ spec, using xlfd_strip_height.
+
+ * w32term.c (w32_term_init): Swap resx and height_in, resy and
+ width_in. Use w32_defined_color in place of defined_color.
+
+ * w32faces.c: Merge more of DOS and X specifics in preparation for
+ merge with xfaces.c.
+ (defined_color): Remove FIXME comment.
+ (tty_color_name): Provide w32-specific function.
+ (realize_tty_face): Handle FACE_TTY_DEFAULT*_COLOR specially.
+
+ * w32console.c (turn_on_face, turn_off_face): Removed.
+ (w32_face_attributes): New function.
+ (Global_variables): Reduce scope where possible.
+ (clear_frame, ins_del_lines, scroll_line): Use char_attr_normal as
+ fill attribute.
+ (hl_mode): Don't modify text attributes.
+ (write_glyphs): Don't do anything if len <= 0. Use
+ w32_face_attributes to get attributes for drawing. Write
+ terminating codes using char_attr_normal.
+ (reset_terminal_modes, set_terminal_modes): Turn off highlight.
+ (update_begin, update_end): Likewise.
+ (vga_stdcolor_name): New function.
+ (initialize_w32_display): Remove char_attr_reverse and char_attr.
+ (Fset_screen_color): Remove char_attr_reverse.
+
+2000-01-29 Gerd Moellmann <gerd@gnu.org>
+
+ * xfns.c (xic_set_preeditarea): Take window parameter and
+ window-relative pixel-positions.
+
+ * xterm.c (x_display_cursor): Set XIC pre-edit area only if window
+ is its frame's selected window.
+ (xim_instantiate_callback): Likewise.
+
+ * xfns.c (x_create_im): Removed.
+ (DEFAULT_STYLE, DEFAULT_FONT): Removed.
+ (supported_xim_styles): Renamed from supported_styles.
+ (best_xim_style): Renamed from best_style.
+ (create_frame_xic): Renamed from xic_create_frame.
+ (free_frame_xic): Renamed from xic_destroy_frame.
+
+2000-01-29 INOUE Seiichiro <inoue@ainet.or.jp>
+
+ * xterm.c (XTread_socket) [HAVE_X_I18N]: If event is for none of
+ our frames, call XFilterEvent with 2nd parameter `None'.
+ (XTread_socket) <KeyPress> [HAVE_X_I18N]: Handle XmbLookupString
+ returning XBufferOverflow.
+ (XTread_socket) <ConfigureNotify> [HAVE_X_I18N]: Set XIC status
+ area.
+ (x_display_cursor) [HAVE_X_I18N]: Set XIC pre-edit area.
+ (x_new_fontset) [HAVE_X_I18N]: Create XIC status area fontset.
+ (xim_destroy_callback, xim_open_dpy, xim_instantiate_callback)
+ (xim_initialize, xim_close)
+ [HAVE_X_I18N && HAVE_X11R6]: New functions.
+ (x_destroy_window) [HAVE_X_I18N]: Call xic_destroy_frame.
+ (x_term_init) [HAVE_X_I18N]: Call xim_initialize.
+ (x_delete_display) [HAVE_X_I18N]: Call xim_close.
+
+ * xterm.h (struct x_display_info) [HAVE_X_I18N]: Add members `xim'
+ and `xim_styles'.
+ (struct x_output) [HAVE_X_I18N]: Remove member `xim', add
+ `xic_style' and `xic_xfs'.
+ (FRAME_MENUBAR_HEIGHT, FRAME_X_XIM, FRAME_X_XIM_STYLES)
+ (FRAME_XIC_STYLE, FRAME_XIC_FONTSET): New macros.
+ (FRAME_XIM): Removed.
+
+ * xfns.c (supported_styles): New variable.
+ (DEFAULT_STYLE, DEFAULT_FONT): New macros
+ (xic_create_xfontset, best_style, xic_create_frame)
+ (xic_destroy_frame, xic_set_preeditarea, xic_set_statusarea)
+ (xic_set_xfontset): New functions.
+
+2000-01-28 Dave Love <fx@gnu.org>
+
+ * s/irix6-5.h: Revert last change after change to irix5-0.h.
+
+ * m/iris4d.h (C_SWITCH_MACHINE): Don't use -G0.
+
+2000-01-28 Gerd Moellmann <gerd@gnu.org>
+
+ * buffer.c (Fother_buffer): Don't call Fset_buffer_major_mode
+ for *scratch* if it already existed.
+
+ * emacs.c (USAGE): New macro.
+ (main): Use it to display usage information.
+
+2000-01-27 Eli Zaretskii <eliz@is.elta.co.il>
+
+ Support for the menu-help feature:
+
+ * msdos.h: Change prototypes of XMenuAddSelection and
+ XMenuActivate.
+
+ * msdos.c (IT_clear_end_of_line): Print the extent of the cleared
+ part of the line to the termscript file.
+ (IT_clear_to_end): Clear the entire line, not just its beginning.
+ (menu_help_message, prev_menu_help_message): New variables.
+ (IT_menu_make_room): Make room for the help_text member.
+ (IT_menu_display): New argument disp_help; all callers changed.
+ If disp_help is non-zero, store the help text of the active menu
+ item in menu_help_message.
+ (XMenuAddPane): Initialize the help_text member to NULL.
+ (XMenuAddSelection): New argument help_text. Store it in the
+ XMenu structure.
+ (XMenuActivate): New argument help_callback. If the value of
+ menu_help_message has changed since the last time, display the
+ menu help message text while waiting for the mouse to move. Clear
+ the echo area before exiting.
+ (XMenuDestroy): Free the help_text member.
+
+2000-01-27 Gerd Moellmann <gerd@gnu.org>
+
+ * xmenu.c (xmenu_show) [!USE_X_TOOLKIT]: Pass help to
+ XMenuAddSelection. Pass help callback to XMenuActivate.
+ (menu_help_callback) [!USE_X_TOOLKIT]: New function.
+
+2000-01-27 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * atimer.c (start_atimer) [!HAVE_SETITIMER]: Use EMACS_SET_SECS
+ and EMACS_SET_USECS.
+
+2000-01-26 Dave Love <fx@gnu.org>
+
+ * editfns.c (Fchar_after, Fchar_before): Doc fix.
+
+ * bytecode.c (Fbyte_code): Use {BEFORE,AFTER}_POTENTIAL_GC where
+ an error may be signalled.
+
+2000-01-26 Gerd Moellmann <gerd@gnu.org>
+
+ * s/irix6-5.h [__GNUC__ && __GNUC_MINOR__ >= 95]: Undef
+ LD_SWITCH_SYSTEM inherited from irix5-0.h.
+
+ * bytecode.c (Fbyte_code) [BYTE_CODE_SAFE]: Fix typo.
+
+2000-01-25 Gerd Moellmann <gerd@gnu.org>
+
+ * charset.c (Fstring): If there is a multibyte char among
+ the args, always return a multibyte string.
+
+2000-01-25 Gerd Moellmann <gerd@gnu.org>
+
+ * sysdep.c (sys_select): Turn atimers off and on instead of
+ recording and restoring old alarm handler
+
+ * process.c (toplevel): Include atimer.h.
+ (create_process_1): Rewritten.
+ (create_process): Use atimers instead of alarm.
+ (wait_reading_process_input) [hpux]: Turn atimers off instead
+ of turning off SIGALRM.
+ (wait_reading_process_input): Turn off atimers instead off
+ calling stop_polling.
+
+ * emacs.c (main): Call init_atimer.
+
+ * keyboard.c (toplevel): Include systime.h and atimer.h.
+ (polling_for_input): Removed because unused.
+ (input_poll_signal) [POLL_FOR_INPUT]: Removed.
+ (poll_timer): New variable.
+ (poll_for_input, poll_for_input_1): New functions.
+ (start_polling, stop_polling): Rewritten.
+
+ * keyboard.h (polling_for_input): Removed.
+
+ * atimer.h, atimer.c: New files.
+
+ * Makefile.in (obj): Add atimer.o.
+ (atimer.o): New target.
+
+ * blockinput.h (pending_atimers): Add extern declaration.
+ (UNBLOCK_INPUT): Rewritten. Handle pending atimers.
+
+ * lisp.h (popup_activated_flag): Add extern declaration.
+
+ * xmenu.c (popup_activated_flag): Make externally visible.
+ (popup_activate_callback) [USE_MOTIF]: Increment
+ popup_activated_flag.
+ (popup_deactivate_callback) [USE_MOTIF]: Decrement it.
+
+ * xterm.c (toplevel): Include atimer.h.
+ (toolkit_scroll_bar_interaction): New variable.
+ (Fxt_process_timeouts): Removed.
+ (x_process_timeouts): New function.
+ (xt_action_hook): Clear toolkit_scroll_bar_interaction.
+ (x_send_scroll_bar_event): Set toolkit_scroll_bar_interaction.
+ (x_make_frame_visible): Call poll_for_input_1 instead of
+ input_poll_signal. Don't call alarm.
+ (x_initialize): Install timer calling x_process_timeouts.
+
+2000-01-24 Dave Love <fx@gnu.org>
+
+ * s/irix5-0.h: Don't set LD_SWITCH_SYSTEM -- we use unexelf now.
+ Don't use -cckr -- apparently not now necessary.
+
+2000-01-24 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * msdos.c (IT_menu_display): Truncate long menu lines at the right
+ screen boundary.
+
+2000-01-23 Jason Rumney <jasonr@gnu.org>
+
+ * w32fns.c (w32_defined_color): Apply gamma correction before
+ trying to map to the palette.
+ (w32_wnd_proc) [WM_ERASE_BACKGROUND]: Pass device context of frame
+ to w32_clear_rect.
+
+ * w32term.c (w32_fill_rect): Do not try to deal with NULL hdc
+ here. Callers changed to always pass real device context.
+ (w32_draw_bitmap): Likewise.
+ (w32_get_glyph_overhangs): Likewise.
+ (w32_draw_box_rect): Make use of s->hdc rather than getting a new
+ one.
+ (w32_set_vertical_scroll_bar): Pass correct HWND parameters to
+ pfnSetScrollInfo and SetScrollRange.
+ (x_get_char_face_and_encoding): Don't turn iso8859-1 characters
+ back into MULE characters after decoding them.
+ (x_get_glyph_face_and_encoding): Likewise.
+ (w32_per_char_metric): Use GetCharExtentPoint32W as fallback when
+ GetCharABCWidthsW fails, since this is defined on Windows 9x.
+ (x_produce_glyphs): Calculate per char metrics for a character
+ that we know exists in default font when font_not_found_p is true.
+
+2000-01-22 Jason Rumney <jasonr@gnu.org>
+
+ * makefile.nt (intervals.obj, composite.obj): New modules.
+ (composite.h): Added as dependency where appropriate.
+
+ * w32gui.h (XGCValue): New struct for emulating X GCs.
+
+ * w32term.h (XCharStruct): New struct for emulating X.
+
+ * w32console.c (turn_on_face, turn_off_face): New functions.
+ (change_line_highlight): New prototype for new redisplay.
+ (write_glyphs): Support multibyte text. Support faces.
+
+ * w32faces.c: Complete rewrite for new redisplay based on new
+ xfaces.c.
+
+ * w32fns.c: Use SELECTED_FRAME macro in place of selected_frame
+ throughout. struct frame * in place of FRAME_PTR.
+ Skeleton support for images, toolbars, tooltips from xfns.c.
+ (Fx_create_frame): Use system default for default scroll bar
+ width.
+ (w32_get_arg): Renamed from x_get_arg.
+ (Fx_file_dialog): New function.
+ (w32_list_fonts): Check cache before asking system.
+ (Vw32_enable_synthesized_fonts): New variable.
+ (Vw32_enable_italics): Obsolete, removed.
+
+ * w32inevt.c (get_frame, w32_console_mouse_position, mouse_moved_to):
+ Use SELECTED_FRAME macro.
+
+ * w32menu.c: Add skeleton support for help strings on menus.
+ (add_menu_item): Native checkbox and radio support added, but not
+ yet enabled due to bugs.
+ (push_menu_item): Add parameters type, selection and help.
+ Callers updated.
+ Formatting changes to reduce unnecessary diffs with xmenu.c.
+
+ * w32select.c (Fw32_set_clipboard_data): Update call to
+ find_charset_in_str.
+
+ * w32term.c: Complete rewrite for new redisplay based on new
+ xterm.c with necessary sections merged back in from old w32term.c.
+
+2000-01-21 Richard M. Stallman <rms@gnu.org>
+
+ * data.c (set_internal): Further fix in same criterion.
+
+2000-01-20 Richard M. Stallman <rms@gnu.org>
+
+ * data.c (set_internal): Fix the criteria for whether
+ to swap out the old cached binding.
+
+2000-01-19 Dave Love <fx@gnu.org>
+
+ * lread.c: (syms_of_lread) [user-init-file]: Doc change.
+
+2000-01-18 Kenichi Handa <handa@etl.go.jp>
+
+ * regex.c (re_compile_fastmap): While checking a range table for
+ `charset', skip flag bits for a character class correctly.
+