+2001-01-02 Gerd Moellmann <gerd@gnu.org>
+
+ * xterm.c (x_connection_closed): Catch X errors around all
+ statements that call X. Save away the error message in a local
+ copy.
+
+ * xterm.c (x_connection_closed): Set handling_signal to 0 at
+ the start.
+
+ * xdisp.c (pos_visible_p): Take into account that CHARPOS maybe
+ in or at the start of invisible text.
+
+ * dispnew.c (update_window): Don't check_current_matrix_flags.
+
+2001-01-01 Jason Rumney <jasonr@gnu.org>
+
+ * w32fns.c (x_figure_window_size): Do not allow new_height and
+ new_width of frame to override specified values.
+
+2000-12-30 Kenichi Handa <handa@etl.go.jp>
+
+ * composite.c (find_composition): Fix a code for searching
+ backward.
+
+2000-12-29 Gerd Moellmann <gerd@gnu.org>
+
+ * dispnew.c (check_current_matrix_flags) [GLYPH_DEBUG]: New
+ function.
+ (update_window) [GLYPH_DEBUG]: Call it.
+ (scrolling_window): Prevent including current rows which are below
+ what's displayed in the window.
+
+ * xdisp.c (try_window_reusing_current_matrix)
+ <new start <= old start>: Disable rows in the current matrix
+ which are below the window after scrolling.
+
+ * xdisp.c (move_it_by_lines): Don't do optimizations if NEED_Y_P
+ is zero. It's not worth the complexity.
+ (invisible_text_between_p): Put in #if 0 because unused.
+
+2000-12-28 Gerd Moellmann <gerd@gnu.org>
+
+ * xfns.c (Fx_backspace_delete_keys_p): Check library and server
+ XKB versions. Call XkbFreeKeyboard with 2nd arg 0.
+
+ * keyboard.c (echo_char): If C is an integer, always call
+ push_key_description. Former code could signal an invalid
+ character error.
+
+ * keymap.c (push_key_description): Add parameter FORCE_MULTIBYTE.
+ If set, print multibyte text.
+ (Fsingle_key_description): Call push_key_description with
+ FORCE_MULTIBYTE set.
+ (describe_buffer_bindings): Likewise.
+
+ * lisp.h (push_key_description): Add prototype.
+
+ * xdisp.c (echo_area_display): Bind redisplay-dont-pause to t
+ around the call to redisplay_internal.
+
+ * xfns.c: Use #if GLYPH_DEBUG instead of #ifdef GLYPH_DEBUG.
+
+ * dispnew.c: Use #if GLYPH_DEBUG instead of #ifdef GLYPH_DEBUG.
+
+2000-12-28 Kenichi Handa <handa@etl.go.jp>
+
+ * ccl.c (CCL_WRITE_CHAR): Check variable `extra_bytes'.
+ (ccl_driver): New local variable `extra_bytes'.
+
+ * ccl.h (struct ccl_spec): New member eight_bit_carryover.
+
+ * coding.c (setup_coding_system): Initialize
+ coding->spec.ccl.eight_bit_carryover.
+ (ccl_coding_driver): Pay attention to carried over 8-bit bytes.
+
+2000-12-28 Kenichi Handa <handa@etl.go.jp>
+
+ * coding.c (SAFE_ONE_MORE_BYTE): New macro.
+ (DECODE_EMACS_MULE_COMPOSITION_CHAR): New macro.
+ (DECODE_EMACS_MULE_COMPOSITION_RULE): New macro.
+ (decode_composition_emacs_mule): New function.
+ (decode_coding_emacs_mule): Decode composition sequence by calling
+ decode_composition_emacs_mule.
+ (ENCODE_COMPOSITION_EMACS_MULE): New macro.
+ (encode_coding_emacs_mule): Changed from macro to function. If
+ a text contains compositions, encode them correctly.
+ (setup_coding_system): Set coding->commong_flags for emacs-mule so
+ that decoding and encoding are required.
+
+2000-12-27 Gerd Moellmann <gerd@gnu.org>
+
+ * xfaces.c (PT_PER_INCH): New macro.
+ (xlfd_point_size): Compute real point size from font's pixel size.
+ (pixel_point_size, build_scalable_font_name): Use PT_PER_INCH
+ instead of 72.
+
+ * .gdbinit: Comment out the line pointing to the Lesstif source
+ directory.
+
+ * window.c (Frecenter): Use displayed_window_lines instead
+ of window_internal_height.
+
+ * xterm.c (syms_of_xterm): DEFVAR_LISP x-toolkit-scroll-bars
+ instead of x-toolkit-scroll-bars-p.
+ (Vx_toolkit_scroll_bars): Renamed from x_toolkit_scroll_bars_p.
+
+ * w32term.c (syms_of_xterm): DEFVAR_LISP x-toolkit-scroll-bars
+ instead of x-toolkit-scroll-bars-p.
+ (Vx_toolkit_scroll_bars): Renamed from x_toolkit_scroll_bars_p.
+
+ * dispnew.c (struct redisplay_history) [GLYPH_DEBUG]: New.
+ (REDISPLAY_HISTORY_SIZE) [GLYPH_DEBUG]: New macro.
+ (redisplay_history, history_idx, history_tick) [GLYPH_DEBUG]: New
+ variables.
+ (add_window_display_history, add_frame_display_history)
+ (Fdump_redisplay_history) [GLYPH_DEBUG]: New functions.
+ (build_frame_matrix_from_leaf_window): Remove unused code.
+ (build_frame_matrix_from_leaf_window) [GLYPH_DEBUG]: Add to
+ redisplay history.
+ (update_frame) [GLYPH_DEBUG]: Add to redisplay history.
+ (update_window) [GLYPH_DEBUG]: Likewise.
+ (syms_of_display): Defsubr dump-redisplay-history.
+
+2000-12-23 Gerd Moellmann <gerd@gnu.org>
+
+ * keyboard.c (echo_prompt): Always set current_kboard->echoptr to
+ the end of the prompt. Set echo_after_prompt to the offset
+ of echoptr in echobuf.
+
+ * xdisp.c (init_from_display_pos): Pop until the iterator's
+ stack is empty; there may be frames for stretch or images
+ on the stack.
+
+ * dispnew.c (save_frame_matrix, restore_frame_matrix): Removed.
+ (save_or_restore_current_matrix): New function for the same
+ purpose, but more efficient.
+ (adjust_frame_glyphs_for_frame_redisplay): Use it.
+
+2000-12-23 Eli Zaretskii <eliz@is.elta.co.il>
+
+ * xdisp.c (syms_of_xdisp): Fix last change.
+
+2000-12-23 Gerd Moellmann <gerd@gnu.org>
+
+ * xdisp.c (syms_of_xdisp): Doc fix.
+
+ * xdisp.c (redisplay_window): Remove label restore_buffers;
+ use finish_scroll_bars instead to make sure that scroll bars
+ are redeemed. If we don't do this, flickering can result from
+ scroll bars being destroyed and recreated.
+
+2000-12-22 Jason Rumney <jasonr@gnu.org>
+
+ * w32term.c (w32_draw_bitmap): Fix drawing so it does not appear
+ in the wrong colors when the foreground is not black.
+ (expose_window): Don't redraw the window that's currently being
+ updated.
+
+2000-12-22 Gerd Moellmann <gerd@gnu.org>
+
+ * window.c (size_window): When setting the window's too_small_ok
+ flag, compare old size with minimum size depending on WIDTH_P,
+ don't compare with window_min_width.
+
+ * window.c (delete_window): Simplify somewhat.
+ (Fset_window_configuration): Don't SET_FRAME_GARBAGED after
+ freeing window matrices. The flag windows_or_buffers_changed is
+ set, so the next redisplay will consider all windows; this should
+ suffice.
+
+2000-12-22 Kenichi Handa <handa@etl.go.jp>
+
+ * coding.c (ccl_coding_driver): Initialize ccl->cr_consumed.
+
+ * ccl.h (struct ccl_program): New member cr_consumed.
+
+ * ccl.c (CCL_WRITE_CHAR): Don't handle EOL conversion here.
+ (CCL_READ_CHAR): Handle EOL conversion here.
+ (ccl_driver) <CCL_ReadMultibyteChar2>: Likewise.
+
2000-12-21 Gerd Moellmann <gerd@gnu.org>
+ * xdisp.c (Fdump_glyph_row) [GLYPH_DEBUG]: Add optional arg
+ GLYPHS.
+
+ * dispextern.h (GLYPH_EQUAL_P): Also compare pixel widths,
+ otherwise tabs of different size compare equal.
+
+ * callint.c (Fcall_interactively): Prevent a compiler warning.
+
+ * print.c (print_unwind): Return nil.
+ (PRINTDECLARE): Initialize all local variables.
+ (print_preprocess): Add a default case.
+
* lisp.h (Qinhibit_point_motion_hooks): Declare extern.
* undo.c (Fprimitive_undo): Bind `inhibit-point-motion-hooks' to t.