+2000-02-29 Gerd Moellmann <gerd@gnu.org>
+
+ * atimer.c (start_atimer): Don't abort when timers are stopped.
+ (append_atimer_lists): New function.
+ (cancel_atimer, stop_other_atimers, run_all_atimers): Handle
+ arbitrary lists of stopped and running atimers.
+
+ * atimer.c (cancel_atimer): Handle canceling an atimer when
+ some timers are stopped.
+
+ * xfns.c (cancel_busy_cursor): Set busy_cursor_atimer to null
+ after canceling it.
+
+ * fns.c (maybe_resize_hash_table): Handle case of new size
+ coming out as being the same as old size.
+
+2000-02-27 Jason Rumney <jasonr@gnu.org>
+
+ * makefile.nt: Add atimer.h to dependencies.
+ * w32.c (init_environment): Set Vw32_num_mouse_buttons here.
+ * w32console.c: Only disable window system features for dispextern.h
+ (initialize_w32_display): Build a display info for the console.
+ * w32faces.c (tty_defined_color): Apply xfaces.c change from 02-17.
+ * w32fns.c (w32_wnd_proc) [WM_LBUTTON_DOWN, WM_RBUTTON_DOWN,
+ WM_LBUTTON_UP, WM_RBUTTON_UP]: Do not treat 4 or more button mice
+ as 2 button mice.
+ * w32gui.h (struct W32FontStruct): Revert last change after change
+ to xdisp.c.
+ * w32menu.c (single_submenu): Set up help string.
+ [!HAVE_MULTILINGUAL_MENU]: Don't overwrite item_name with descrip.
+ (w32_dialog_show): Set up help string.
+ * w32term.c (w32_display_info_for_display): Remove unused function.
+ (w32_draw_bitmap): Use pre-built bitmaps.
+ (w32_initialize_display_info): New function to initialize parts of
+ display info that are common to both GUI and console frames.
+ (w32_term_init): Use w32_initialize_display_info. Do not set
+ Vw32_num_mouse_buttons here, as it is not called for console
+ frames. Build bitmaps for indicating truncated lines etc.
+ (x_delete_display): Destroy pre-built bitmaps.
+ * xdisp.c (handle_single_display_prop): Use FONT_HEIGHT macro.
+ (echo_area_display): Change HAVE_X_WINDOWS to HAVE_WINDOW_SYSTEM.
+
+2000-02-27 Dave Love <fx@gnu.org>
+
+ * lisp.h: Add a bunch of prototypes.
+
+2000-02-26 Kenichi Handa <handa@etl.go.jp>
+
+ * keyboard.c (read_char): Set `usec' correctly.
+
+2000-02-25 Miyashita Hisashi <himi@bird.scphys.kyoto-u.ac.jp>
+
+ * ccl.c (ccl_driver) [CCL_MapMultiple]: When the mapped value is
+ `lambda', set reg[RRR] to the map index.
+ (ccl_driver) [CCL_MapSingle]: When the mapped value is found, set
+ reg[RRR] to 0. Otherwise, set it to -1.
+
+2000-02-25 Gerd Moellmann <gerd@gnu.org>
+
+ * emacs.c (main): Remove code snipped commented out with `//'.
+
+2000-02-25 Richard M. Stallman <rms@caffeine.ai.mit.edu>
+
+ * fileio.c (Ffile_symlink_p): If result starts with a `/'
+ and contains a `:', prepend `/:'.
+
+ * window.c (select_window_1): If selected_window is nil,
+ don't "swap out" the buffer's point.
+ (Fset_window_configuration): Set selected_window to nil
+ before calling Fselect_window.
+ (unshow_buffer): Don't set point in buffer from window's point
+ if another more recently selected window also shows the buffer.
+
+2000-02-25 Gerd Moellmann <gerd@gnu.org>
+
+ * keyboard.c (recursive_edit_1): Cancel busy-cursor.
+
+ * xfns.c (inhibit_busy_cursor, busy_count): Removed.
+ (Fx_show_busy_cursor, Fx_hide_busy_cursor): Removed.
+ (busy_cursor_atimer, busy_cursor_shown_p, Vbusy_cursor_delay): New
+ variables.
+ (DEFAULT_BUSY_CURSOR_DELAY): New define.
+ (start_busy_cursor, cancel_busy_cursor, show_busy_cursor)
+ (hide_busy_cursor): New functions.
+ (syms_of_xfns): DEFVAR_LISP Vbusy_cursor_delay.
+
+ * minibuf.c (read_minibuf): Cancel busy-cursor.
+
+ * keyboard.c (command_loop_1): Call start_busy_cursor before
+ Fcommand_execute and cancel_busy_cursor after it.
+ (timer_check): Remove busy-cursor code.
+ (Fread_key_sequence, Fread_key_sequence_vector): Start/cancel busy
+ cursor timer.
+
+ * process.c (wait_reading_process_input): Remove busy-cursor code.
+
+ * eval.c (Fsignal): Call cancel_busy_cursor instead of
+ Fx_hide_busy_cursor.
+
+ * dispextern.h (Fx_show_busy_cursor, Fx_hide_busy_cursor):
+ Remove prototyoes.
+ (start_busy_cursor, cancel_busy_cursor): Add prototypes.
+
+ * lisp.h (Fx_hide_busy_cursor): Remove prototype.
+
+ * xterm.c (XTread_socket): Remove busy-cursor code.
+
+ * dispnew.c (flush_stdout) [GLYPH_DEBUG]: New function.
+ (build_frame_matrix_from_leaf_window): Put code handling
+ glyph row's not being a slice of a frame row in #if 0.
+ (sync_window_with_frame_matrix_rows): New function.
+ (frame_row_to_window): New function.
+ (mirror_line_dance): Handle copies between windows.
+
+ * lread.c (Fload): Use `xfree' instead of `free'.
+ (init_obarray): Use `xmalloc' instead of `malloc'.
+
+ * window.c (Fset_window_buffer): Set WINDOW to the window
+ after decoding.
+ (coordinates_in_window): Take frame's internal border width
+ into account.
+
+2000-02-24 Gerd Moellmann <gerd@gnu.org>
+
+ * xterm.c (x_display_and_set_cursor): Display cursor of
+ non-selected windows depending on the setting of
+ cursor_in_non_selected_windows.
+
+ * xdisp.c (cursor_in_non_selected_windows): New variable.
+ (syms_of_xdisp): DEFVAR_BOOL it.
+
+2000-02-23 Gerd Moellmann <gerd@gnu.org>
+
+ * data.c (Fstring_to_number): If number is greater than what
+ fits into an integer, return a float.
+
+ * eval.c (specbind): Remove references to
+ keyword_symbols_constant_flag.
+
+ * data.c (keyword_symbols_constant_flag): Removed.
+ (Fmakunbound, set_internal, syms_of_data): Remove references to
+ keyword_symbols_constant_flag.
+
+ * bytecode.c (Fbyte_code): Remove keyword_symbols_constant_flag.
+
+2000-02-23 Kenichi Handa <handa@etl.go.jp>
+
+ * syntax.c (multibyte_syntax_as_symbol): New variable.
+ (syms_of_syntax): Declare it as a Lisp variable.
+ (SYNTAX_WITH_MULTIBYTE_CHECK): New macro.
+ (scan_lists): If both sexpflag and multibyte_syntax_as_symbol are
+ nonzero, treat all multibyte characters as symbol.
+ (init_syntax_once): Give syntax `word' to all multibyte
+ characters.
+
+2000-02-22 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * frame.c (Fdelete_frame): Don't let echo_area_window remain on
+ a deleted frame.
+
+2000-02-21 Gerd Moellmann <gerd@gnu.org>
+
+ * frame.c (Fmouse_position): GCPRO retval instead of x and y.
+
+ * xfns.c (x_window_to_frame, x_any_window_to_frame)
+ (x_non_menubar_window_to_frame): Check the busy-cursor window.
+
+2000-02-21 Dave Love <fx@gnu.org>
+
+ * frame.c (Vmouse_position_function): New variable.
+ (Fmouse_position): Use it.
+ (syms_of_frame): Install it.
+
+ * charset.c (find_charset_in_str): Fix use of `c' instead of `c1'.
+
+2000-02-20 Gerd Moellmann <gerd@gnu.org>
+
+ * fileio.c (Finsert_file_contents): Unbind the binding of
+ standard-output done by temp_output_buffer_setup.
+
+ * eval.c (funcall_lambda): Don't bind Qmocklisp_arguments unless
+ Vmocklisp_arguments is nil. Inline Fcar and Fcdr.
+ (specbind, unbind_to): Handle most common case of non-constant
+ symbol with trivial value specially.
+
+ * bytecode.c (Fbyte_code) <Bvarset>: Inline most common case.
+
2000-02-20 Richard M. Stallman <rms@caffeine.ai.mit.edu>
* data.c (Fmake_variable_buffer_local): Doc fix.