ChangeLog 318 KB
Newer Older
Kenichi Handa's avatar
Kenichi Handa committed
1 2 3 4 5 6 7 8 9 10 11
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.

Kenichi Handa's avatar
Kenichi Handa committed
12 13 14 15 16 17 18 19 20 21 22 23 24 25
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 compostions, encode them correctly.
	(setup_coding_system): Set coding->commong_flags for emacs-mule so
	that decoding and encoding are required.

Gerd Moellmann's avatar
Gerd Moellmann committed
26 27
2000-12-27  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
28 29 30 31 32
	* 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.

33 34 35
	* .gdbinit: Comment out the line pointing to the Lesstif source
	directory.

36 37 38
	* window.c (Frecenter): Use displayed_window_lines instead
	of window_internal_height.

Gerd Moellmann's avatar
Gerd Moellmann committed
39 40 41 42 43 44 45 46
	* 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.
	
Gerd Moellmann's avatar
Gerd Moellmann committed
47 48 49 50 51 52 53 54 55 56 57 58 59
	* 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.

60 61
2000-12-23  Gerd Moellmann  <gerd@gnu.org>

62 63 64 65
	* 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.

66 67 68 69
	* 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.

70 71 72 73 74
	* 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.

75 76 77 78
2000-12-23  Eli Zaretskii  <eliz@is.elta.co.il>

	* xdisp.c (syms_of_xdisp): Fix last change.

Gerd Moellmann's avatar
Gerd Moellmann committed
79 80 81 82 83 84 85 86 87
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.

88 89 90 91 92 93 94
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.

95 96
2000-12-22  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
97 98 99 100
	* 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.
	
101 102 103 104 105 106
	* 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.

Kenichi Handa's avatar
Kenichi Handa committed
107 108 109 110 111 112 113 114 115 116
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.

Gerd Moellmann's avatar
Gerd Moellmann committed
117 118
2000-12-21  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
119 120 121 122 123 124 125 126 127 128 129 130
	* 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.

Gerd Moellmann's avatar
Gerd Moellmann committed
131 132 133 134
	* lisp.h (Qinhibit_point_motion_hooks): Declare extern.

	* undo.c (Fprimitive_undo): Bind `inhibit-point-motion-hooks' to t.

Gerd Moellmann's avatar
Gerd Moellmann committed
135 136 137 138 139 140 141 142 143 144 145 146
	* window.c (delete_window, Fsplit_window) 
	(Fset_window_configuration): Calls to ensure_frame_matrix removed.

	* dispextern.h (ensure_frame_matrix): Function declaration removed.

	* dispnew.c (ensure_frame_matrix): Removed.
	(save_frame_matrix, restore_frame_matrix): New functions.
	(adjust_frame_glyphs_for_frame_redisplay): Use them.

	* xdisp.c (dump_glyph_row, dump_glyph_matrix, Fdump_glyph_matrix)
	[GLYPH_DEBUG]: Extended to dump glyphs in short form.

147 148 149 150 151 152 153 154 155
2000-12-21  Andrew Innes  <andrewi@gnu.org>

	* w32term.c (x_update_begin): Regenerate the palette here, rather
	than for each window.

	* w32xfns.c (select_palette): Avoid calling SelectPalette if
	palette is NULL, since this corrupts memory!  Also get
	display_info reference from frame.

Jason Rumney's avatar
Jason Rumney committed
156 157 158 159 160 161
2000-12-21  Jason Rumney  <jasonr@gnu.org>

	* w32bdf.c (w32_init_bdf_font): Fix test for valid bmp heap.

	* w32term.c (x_draw_hollow_cursor): Delay obtaining the frame's DC
	to avoid returning without releasing it.
162

Kenichi Handa's avatar
Kenichi Handa committed
163 164
2000-12-21  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
165 166 167
	* keymap.c (push_key_description): Don't convert eight-bit-control
	and eight-bit-graphic to multibyte character.

Kenichi Handa's avatar
Kenichi Handa committed
168 169 170 171
	* charset.c (Fmake_char_internal): If CHARSET doesn't have a
	generic character and CODE1 is nil, return the smallest character
	in CHARSET.

Dave Love's avatar
Dave Love committed
172 173 174 175
2000-12-20  Dave Love  <fx@gnu.org>

	* s/osf5-0.h (NSIG): Don't redefine.

176 177 178 179 180 181 182 183
2000-12-20  Stefan Monnier  <monnier@cs.yale.edu>

	* keymap.c (where_is_internal): Check ascii_sequence_p rather than
	excluding menu-bar and tool-bar.
	(Fwhere_is_internal): Check ascii_sequence_p when looking up the cache.
	(menu_item_p): Remove.
	(where_is_internal_1): Don't ignore menu-items.

Gerd Moellmann's avatar
Gerd Moellmann committed
184 185
2000-12-20  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202
	* xdisp.c (hscroll_window_tree): Take window's min_hscroll
	into account.

	* window.c (make_window): Initialize window's min_hscroll.
	(Fset_window_hscroll): Set window's hscroll and min_hscroll.
	(set_window_buffer, temp_output_buffer_show): Set min_hscroll
	to zero.
	(struct saved_window): New member min_hscroll.
	(SAVED_WINDOW_VECTOR_SIZE): Set to 17.
	(Fset_window_configuration): Set window's min_hscroll.
	(save_window_save): Save window's min_hscroll.
	(compare_window_configurations): Compare min_hscroll values.

	* window.h (struct window): New member min_hscroll.

	* keyboard.c (echo_prompt): Prevent a compiler warning.

203 204 205 206
	* xdisp.c (try_cursor_movement): Fix last change.  The real
	condition is that PT is at the end of the row, and should
	be displayed at the start of the next row.
	
207 208 209
	* xdisp.c (try_cursor_movement): If we end on a partially
	visible line, end we already decided to scroll, return -1.

Gerd Moellmann's avatar
Gerd Moellmann committed
210 211 212 213 214 215 216 217 218 219 220
	* dispextern.h (ensure_frame_matrix): Add prototype.

	* window.c (delete_window, Fsplit_window)
	(Fset_window_configuration): Call ensure_frame_matrix.

	* dispnew.c (fake_current_matrices, ensure_frame_matrix): New
	functions.
	(adjust_frame_glyphs_for_frame_redisplay): If display has been
	completed, call fake_current_matrices instead of marking frame
	garbaged.

221 222 223 224
2000-12-20  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (syms_of_w32fns): Initialize and staticpro tip_frame.

Eli Zaretskii's avatar
Eli Zaretskii committed
225 226 227 228
2000-12-19  Eli Zaretskii  <eliz@is.elta.co.il>

	* fns.c (Frequire): Doc fix.

Gerd Moellmann's avatar
Gerd Moellmann committed
229 230
2000-12-19  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
231 232 233
	* window.c (window_scroll_pixel_based): Don't use
	move_it_vertically.

234 235 236
	* dispnew.c (direct_output_for_insert): Fix check for mini-window
	currently displaying a message.

Gerd Moellmann's avatar
Gerd Moellmann committed
237 238 239 240
	* bytecode.c (toplevel) [CHECK_FRAME_FONT]: Include frame.h and
	xterm.h.
	(Fbyte_code) [CHECK_FRAME_FONT]: Check the selected frame's font.

Andrew Innes's avatar
Andrew Innes committed
241 242 243 244 245 246 247 248
2000-12-18  Andrew Innes  <andrewi@gnu.org>

	* w32.c (w32_strerror): New function.

	* w32.h (w32_strerror): New extern.

	* w32fns.c (Fw32_shell_execute): Use it.

Gerd Moellmann's avatar
Gerd Moellmann committed
249 250 251 252
2000-12-18  Gerd Moellmann  <gerd@gnu.org>

	* s/hpux10.h (_FILE_OFFSET_BITS): Undef again.

Eli Zaretskii's avatar
Eli Zaretskii committed
253 254 255 256
2000-12-18  Eli Zaretskii  <eliz@is.elta.co.il>

	* msdos.c (IT_set_face): Obey inverse_video.

Kenichi Handa's avatar
Kenichi Handa committed
257 258 259 260
2000-12-18  Kenichi Handa  <handa@etl.go.jp>

	* dired.c (directory_files_internal): Always return decoded filenames.

Gerd Moellmann's avatar
Gerd Moellmann committed
261 262
2000-12-18  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
263 264 265
	* xterm.c (x_connection_closed): Prevent being called recursively
	because of an error condition in XtCloseDisplay.
	
266 267 268
	* xdisp.c (init_iterator): If noninteractive, and the frame's
	face cache is null, make one.

269 270 271
	* xfns.c (show_busy_cursor): Check for live frames more
	thoroughly.

Gerd Moellmann's avatar
Gerd Moellmann committed
272 273 274
	* process.c (wait_reading_process_input): Check for pending
	input when running timers.

275 276 277 278 279
2000-12-18  Eli Zaretskii  <eliz@is.elta.co.il>

	* msdos.c (IT_write_glyphs): Compute the glyph face from
	str->face_id.

Kenichi Handa's avatar
Kenichi Handa committed
280 281 282 283 284
2000-12-18  Kenichi Handa  <handa@etl.go.jp>

	* process.c (read_process_output): Don't run a filter if the code
	decoder produces nothing but carryover.

Andrew Innes's avatar
Andrew Innes committed
285 286 287 288 289 290 291 292 293 294
2000-12-17  Andrew Innes  <andrewi@gnu.org>

	* w32.c (sys_rename): Only check errno against EEXIST, and not
	EACCES, when determining whether rename failed because the target
	exists.  This was resulting in indefinite looping on Windows 9x if
	the source file was locked by another process.

	* w32fns.c (Ffile_system_info): New function.
	(syms_of_w32fns): Defsubr it.

Gerd Moellmann's avatar
Gerd Moellmann committed
295 296
2000-12-17  Gerd Moellmann  <gerd@gnu.org>

297 298 299
	* window.c (coordinates_in_window): Fix computation for
	position on vertical line between mode lines.

Gerd Moellmann's avatar
Gerd Moellmann committed
300 301 302 303 304
	* xfns.c (unwind_create_frame): Return t if frame was deleted.
	Don't alter tip_frame or tip_window.
	(unwind_create_tip_frame): Set tip_frame to nil only if frame
	was deleted.

305 306 307 308 309
	* w32fns.c (unwind_create_frame): Return t if frame was deleted.
	Don't alter tip_frame or tip_window.
	(unwind_create_tip_frame): Set tip_frame to nil only if frame
	was deleted.

Eli Zaretskii's avatar
Eli Zaretskii committed
310 311 312 313 314 315
2000-12-16  Eli Zaretskii  <eliz@is.elta.co.il>

	* fileio.c (Fcopy_file): Rename the last argument to keep_time, to
	be consistent with the doc string.  Reported by NAKAJIMA Mikio
	<minakaji@osaka.email.ne.jp>.

Kenichi Handa's avatar
Kenichi Handa committed
316 317 318 319 320 321
2000-12-16  Kenichi Handa  <handa@etl.go.jp>

	* xfaces.c (Vface_ignored_fonts): New variable.
	(x_face_list_fonts): Ignore fonts matching Vface_ignored_fonts.
	(syms_of_xfaces): Declare Vface_ignored_fonts as a Lisp variable.

Gerd Moellmann's avatar
Gerd Moellmann committed
322 323
2000-12-15  Gerd Moellmann  <gerd@gnu.org>

324 325 326 327 328 329 330
	* dispnew.c (update_window): Detect pending input every nth line
	updated, i.e. do it depending on real work done, and not on the
	vpos of the line.

	* xterm.c (expose_window): Don't redraw the window that's
	currently being updated.

Gerd Moellmann's avatar
Gerd Moellmann committed
331 332 333
	* window.c (Fset_window_point): Remove test for
	cursor_in_non_selected_windows.

Gerd Moellmann's avatar
Gerd Moellmann committed
334 335
	* lread.c (read1): Recognize end of file after `\\'.

Gerd Moellmann's avatar
Gerd Moellmann committed
336 337 338
	* xfns.c (x_create_tip_frame): Use unwind_create_tip_frame,
	not unwind_create_frame.

Gerd Moellmann's avatar
Gerd Moellmann committed
339 340 341 342 343 344 345
2000-12-15  Dave Love  <fx@gnu.org>

	* s/usg5-4.h (bcopy) [IRIX6]: Don't special-case definition of
	bcopy & al.

	* s/irix6-5.h: #undef bcopy & al here.  Include strings.h.

Kenichi Handa's avatar
Kenichi Handa committed
346 347
2000-12-15  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
348 349
	* coding.c (setup_coding_system): Clear all members of the struct
	coding_system at first.
Kenichi Handa's avatar
Kenichi Handa committed
350 351 352 353
	(detect_coding): Call detect_coding_mask with a correct MULTIBYTEP
	argument.
	(code_convert_region): Don't override coding->src_multibyte and
	coding->dst_multibyte.
Kenichi Handa's avatar
Kenichi Handa committed
354

Kenichi Handa's avatar
Kenichi Handa committed
355 356
	* fns.c (Fmd5): Docstring improved.

Miles Bader's avatar
Miles Bader committed
357 358 359 360 361 362
2000-12-15  Miles Bader  <miles@gnu.org>

	* xdisp.c (window_box_height): Only use mode-line glyph-rows that
	are actually marked as mode-lines; otherwise use
	estimate_mode_line_height.

Gerd Moellmann's avatar
Gerd Moellmann committed
363 364 365 366 367
2000-12-14  Gerd Moellmann  <gerd@gnu.org>

	* editfns.c (Fformat): Prevent a buffer overrun when the format
	specifies a precision.

Eli Zaretskii's avatar
Eli Zaretskii committed
368 369 370 371 372
2000-12-14  Eli Zaretskii  <eliz@is.elta.co.il>

	* msdos.c (Fmsdos_set_mouse_buttons): Signal an error if the
	argument is outside the range [2..3].

Andrew Innes's avatar
Andrew Innes committed
373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390
2000-12-14  Andrew Innes  <andrewi@gnu.org>

	* w32fns.c (Fx_hide_tip): Avoid unnecessary work when there's
	nothing to do.  Bind inhibit-quit.
	(tip_frame): Make it a Lisp_Object.
	(x_create_tip_frame): Set tip_frame after it has been added to
	Vframe_list.
	(Fx_show_tip): Don't set tip_frame here.
	(image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]: New
	variables.
	(unwind_create_frame, unwind_create_tip_frame): New functions.
	(Fx_create_frame, x_create_tip_frame): Handle errors signaled
	while a frame is only partially constructed.

	* w32term.c (clear_mouse_face): Treat tip_frame as a Lisp_Object.
	(x_free_frame_resources): New function.
	(x_destroy_window): Use it.

Gerd Moellmann's avatar
Gerd Moellmann committed
391 392 393 394 395 396 397
2000-12-14  Gerd Moellmann  <gerd@gnu.org>

	* xfns.c (Fx_backspace_delete_keys_p): New function.
	(syms_of_xfns): Defsubr it.

	* config.in (HAVE_XKBGETKEYBOARD): Add.

Kenichi Handa's avatar
Kenichi Handa committed
398 399
2000-12-14  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
400 401 402 403 404 405 406
	* keyboard.c (echo_prompt): Argument type changed to Lisp_Object.
	Always store string in multibyte representation in echobuf.
	(echo_char): Always store string in multibyte representation in
	echobuf.
	(echo_now): Call message2_nolog with the arg MULTIBYTE 1.
	(read_key_sequence): Adjusted for the change of echo_prompt.

Kenichi Handa's avatar
Kenichi Handa committed
407 408
	* fns.c (Fmd5): Docstring improved.

Kenichi Handa's avatar
Kenichi Handa committed
409 410
	* lisp.h (detect_coding_system): Prototype adjusted.

Kenichi Handa's avatar
Kenichi Handa committed
411 412 413 414 415 416 417
	* coding.c (ONE_MORE_BYTE_CHECK_MULTIBYTE): New macro.
	(detect_coding_emacs_mule, detect_coding_iso2022,)
	(detect_coding_sjis, detect_coding_big5, detect_coding_utf_8)
	(detect_coding_utf_16, detect_coding_ccl): Make them static.  New
	argument MULTIBYTEP.  Callers changed.
	(detect_coding_mask, detect_coding_system): New argument
	MULTIBYTEP.  Callers changed.
Kenichi Handa's avatar
Kenichi Handa committed
418 419 420 421
	(decode_coding_string): Set coding->src_multibyte and
	coding->dst_multibyte before calling detect_coding and detect_eol.
	Update them after some coding system is detected.
	
422 423 424 425 426 427 428
2000-12-13  Stefan Monnier  <monnier@cs.yale.edu>

	* keymap.c (get_keyelt): Only eval the filter if `autoload' is set.

	* keyboard.c (menu_bar_items, tool_bar_items):
	Set `autoload' when looking up `tool-bar' or `menu-bar' submap.

Gerd Moellmann's avatar
Gerd Moellmann committed
429 430
2000-12-13  Gerd Moellmann  <gerd@gnu.org>

431 432 433 434 435 436 437 438 439 440 441
	* xfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]: 
	New variables.
	(unwind_create_frame, unwind_create_tip_frame): New functions.
	(Fx_create_frame, x_create_tip_frame): Handle errors signaled
	while a frame is only partially constructed.

	* xterm.h (x_free_frame_resources): Declare.

	* xterm.c (x_free_frame_resources): New function.
	(x_destroy_window): Use it.

442 443 444 445 446 447
	* dispnew.c (update_window): If do_mouse_tracking is non-nil,
	don't interrupt the update for pending input initially, i.e.
	update at least some lines.

	* keyboard.c (do_mouse_tracking): Make externally visible.
	
448
	* xterm.c (x_term_init): Declare gray_bitmap_bits as `extern char *'.
Gerd Moellmann's avatar
Gerd Moellmann committed
449 450 451

	* xfns.c (gray_bitmap_bits): Declare `char *'.

452 453 454 455 456
2000-12-12  Gerd Moellmann  <gerd@gnu.org>

	* xdisp.c (display_tool_bar_line): Make sure that tool bar
	lines start with a relief line.

Dave Love's avatar
Dave Love committed
457 458 459 460 461 462 463 464 465
2000-12-12  Dave Love  <fx@gnu.org>

	* window.c (Fdisplay_buffer): Doc fix.
	(Fwindow_list): Remove unused var.

	* buffer.h (mmap_set_vars): Declare.

	* window.h (Fset_window_point): Declare.

Eli Zaretskii's avatar
Eli Zaretskii committed
466 467
2000-12-12  Eli Zaretskii  <eliz@is.elta.co.il>

Stefan Monnier's avatar
Stefan Monnier committed
468
	* msdos.c (fast_find_position): Don't overstep the last window row.
Eli Zaretskii's avatar
Eli Zaretskii committed
469 470 471 472
	(IT_note_mouse_highlight): Initialize portion to -1.  Remove
	unused variable `area'.  When looking for a row under (X,Y), give
	up if some of the previous rows is not enabled.

473 474
2000-12-12  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
475 476 477 478 479 480
	* window.c (Fset_window_point): If displaying cursors in windows
	other than the selected window, make sure redisplay updates
	other windows to show the new value of point in the window.

	* dispextern.h (cursor_in_non_selected_windows): Declare extern.

Gerd Moellmann's avatar
Gerd Moellmann committed
481 482 483
	* buffer.c (Fkill_buffer): Don't Fset_buffer when testing if
	the buffer is the sole visible buffer when in the mini-buffer.

Gerd Moellmann's avatar
Gerd Moellmann committed
484 485 486 487
	* xdisp.c (setup_echo_area_for_printing, with_echo_area_buffer): 
	Bind `inhibit-read-only' to t.
	(unwind_with_echo_area_buffer): Use AREF.

Gerd Moellmann's avatar
Gerd Moellmann committed
488 489
	* xfns.c (Fx_hide_tip): Simplified.

Gerd Moellmann's avatar
Gerd Moellmann committed
490 491 492
	* s/freebsd.h, s/netbsd.h (GC_MARK_STACK): Use
	GC_MAKE_GCPROS_NOOPS instead of `1'.

493 494
	* s/gnu-linux.h (GC_MARK_STACK): Define as GC_MAKE_GCPROS_NOOPS.

495 496
2000-12-11  Gerd Moellmann  <gerd@gnu.org>

497 498
	* xfns.c (Fx_hide_tip): Fix last change.
	
499 500 501 502 503 504 505 506 507 508 509 510 511 512
	* xfns.c (Fx_hide_tip): Avoid unnecessary work when there's
	nothing to do.  Bind inhibit-quit.
	(tip_frame): Make it a Lisp_Object.
	(x_create_tip_frame): Set tip_frame after it has been added to
	Vframe_list.
	(Fx_show_tip): Don't set tip_frame here.

	* xterm.c (clear_mouse_face): Treat tip_frame as a Lisp_Object.

	* xdisp.c (prepare_menu_bars): Changes for tip_frame being a
	Lisp_Object.

	* dispextern.h: Change external declaration of tip_frame.

Gerd Moellmann's avatar
Gerd Moellmann committed
513 514 515
	* keymap.c (Fkey_description): If KEYS is an empty key sequence,
	return an empty string.

516 517 518 519 520
	* xdisp.c (try_cursor_movement): Check update_mode_lines instead
	of the window's update_mode_line flag, since the former is set by
	force-mode-line-update, not the latter.  This makes
	column-number-mode slightly faster.
	
521 522 523
	* xdisp.c (try_window_id) <all changes above window start>:
	Set the cursor.

Gerd Moellmann's avatar
Gerd Moellmann committed
524 525 526 527 528 529 530 531 532 533
2000-12-11  Paul Eggert  <eggert@twinsun.com>

	* config.in (HAVE_FTELLO): Remove.
	(HAVE_FSEEKO): Add.
	(_XOPEN_SOURCE): Remove; the large-file code no longer needs it.
	* lread.c (file_offset, file_tell): Depend on HAVE_FSEEKO, not
	HAVE_FTELLO.
	* s/hpux10.h (_FILE_OFFSET_BITS): Do not undef.
	* s/isc3-0.h, s/osf5-0.h: Update comment about _XOPEN_SOURCE.
	
534 535 536 537
2000-12-11  Miles Bader  <miles@gnu.org>

	* window.c (displayed_window_lines): Don't round up when
	converting empty space at bottom to lines.
Miles Bader's avatar
Miles Bader committed
538 539 540
	Handle non-newline-terminated final lines properly.
	(Fwindow_text_height): New function (used to be in lisp).
	(syms_of_window): Initialize it.
541

542 543 544 545 546 547
2000-12-09  Stefan Monnier  <monnier@cs.yale.edu>

	* syntax.c (scan_lists): Check that the right quote char has the
	right Sstring syntax when jumping over strings.
	(init_syntax_once): Use Smax rather than 13.

548 549 550 551 552 553
2000-12-09  Miles Bader  <miles@gnu.org>

	* window.c (Fpos_visible_in_window_p): Replace FULLY parameter
	with PARTIALLY, inverting the sense.
	(window_scroll_pixel_based): Scroll partially visible lines into
	place if we hit the beginning or end of the buffer.
Miles Bader's avatar
Miles Bader committed
554 555
	(displayed_window_lines): Don't include partially visible lines.
	(Fmove_to_window_line): Skip past any partially visible first line.
556

Gerd Moellmann's avatar
Gerd Moellmann committed
557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575
2000-12-08  Gerd Moellmann  <gerd@gnu.org>

	* keymap.c (current_minor_maps): Use malloc.  Prevent a leak.

	* tparam.c (tparam1): Change the way buffers are reallocated to be
	portable and less obfuscated.

	* termcap.c (tgetent): Change the way buffers are reallocated to
	be portable and less obfuscated.

	* macros.c (store_kbd_macro_char): Change the way buffers are
	reallocated to be portable and less obfuscated.

	* lread.c (read1): Change the way buffers are reallocated to be
	portable and less obfuscated.

	* doc.c (Fsubstitute_command_keys): Change the way buffers
	are reallocated so that it is portable.

Eli Zaretskii's avatar
Eli Zaretskii committed
576 577 578 579 580
2000-12-07  Eli Zaretskii  <eliz@is.elta.co.il>

	* dosfns.c (Ffile_system_info): New function.
	(syms_of_dosfns): Defsubr it.

Stefan Monnier's avatar
Stefan Monnier committed
581 582 583 584
2000-12-07  Stefan Monnier  <monnier@cs.yale.edu>

	* alloc.c (gc_sweep): Add comment.

Gerd Moellmann's avatar
Gerd Moellmann committed
585 586
2000-12-07  Gerd Moellmann  <gerd@gnu.org>

587 588 589 590 591
	* sound.c (vox_configure): Change order of ioctls.  Don't
	set SNDCTL_DSP_SPEED from bps, don't set SNDCTL_DSP_SAMPLESIZE.
	Ignore errors when changing volume.
	(vox_close): Don't reset the device.

592 593 594 595
	* process.c (read_process_output): Make sure the process marker's
	position is valid when the process buffer is changed in
	after-change functions.  W3 does that.
	
Gerd Moellmann's avatar
Gerd Moellmann committed
596 597 598 599 600 601 602 603 604 605
	* xfns.c (x_free_gcs): New function.

	* xterm.h (x_free_gcs): Add prototype.

	* widget.c (EmacsFrameDestroy): Call x_free_gcs instead of
	freeing GCs here.

	* xterm.c (x_destroy_window): Call x_free_gcs so that
	resources of non-toolkit X windows will be freed.

606 607 608 609
2000-12-07  Andrew Innes  <andrewi@gnu.org>

	* w32fns.c (xlfd_charset_of_font): Fix last change.

Dave Love's avatar
Dave Love committed
610 611
2000-12-06  Dave Love  <fx@gnu.org>

Dave Love's avatar
Dave Love committed
612 613
	* md5.h (__P): Don't define -- it comes from config.h.

Dave Love's avatar
Dave Love committed
614 615
	* strftime.c: Change some #if foo to #ifdef foo.

Andrew Innes's avatar
Andrew Innes committed
616 617 618 619 620 621 622 623 624 625
2000-12-06  Andrew Innes  <andrewi@gnu.org>

	* w32term.h (CP_INVALID): Rename to CP_UNKNOWN.

	* w32fns.c (xlfd_charset_of_font): Don't overwrite fontname
	argument.
	(w32_codepage_for_font): Rename CP_INVALID to CP_UNKNOWN.
	(w32_list_fonts): Don't choke if pattern doesn't specify a
	codepage.

626 627
2000-12-06  Gerd Moellmann  <gerd@gnu.org>

628 629 630
	* alloc.c (gc_sweep): Prevent symbols read during loadup
	from being freed.

Gerd Moellmann's avatar
Gerd Moellmann committed
631 632 633 634 635 636 637
	* xdisp.c (underlying_face_id): New function.
	(handle_face_prop, face_before_or_after_it_pos): Use it
	to determine the face ``under'' a string.  Let strings inherit
	the face of the buffer under them.

	* xfaces.c (face_at_string_position): Update function comment.
	
Gerd Moellmann's avatar
Gerd Moellmann committed
638 639 640 641 642 643
	* dispnew.c (adjust_glyph_matrix): Don't reuse a window's current
	matrix if the window's left position has changed; we need to
	redraw it in this case.

	* dispextern.h (struct glyph_matrix): Add member window_left_x.

644 645 646
	* window.c (coordinates_in_window): Check mouse on mode-line or
	header-line first.

Gerd Moellmann's avatar
Gerd Moellmann committed
647 648 649
	* alloc.c (Fgarbage_collect): Dox fix.  Return a list as
	advertized by the function documentation.

Gerd Moellmann's avatar
Gerd Moellmann committed
650 651
	* window.c (syms_of_window): Doc fix.

652 653 654
	* sound.c (vox_configure): Set volume for left and right channel.
	(sound_cleanup): Return nil.

655 656
	* xdisp.c (move_it_by_lines): Fix paren typo.

657 658 659 660 661
	* xterm.c (x_load_font): Don't use the font's max_bounds for
	computing the height of the font.  If max_bounds' ascent or
	descent are greater than the font's ascent or descent, this means
	glyphs overlap, which should be handled now by redisplay.

662 663 664 665 666
	* window.c (Veven_window_heights): New variable.
	(syms_of_window): DEFVAR_LISP it.
	(Fdisplay_buffer): Check Veven_window_heights before evening the
	window heights.
	
667 668 669 670 671
2000-12-06  Miles Bader  <miles@gnu.org>

	* xfaces.c (Finternal_set_lisp_face_attribute): If FRAME is `t',
	update `default-frame-alist' instead of setting no frame parameters.

Kenichi Handa's avatar
Kenichi Handa committed
672 673 674 675 676
2000-12-06  Kenichi Handa  <handa@etl.go.jp>

	* composite.c (update_compositions): Fix typo (use the correct
	variable).

677 678 679 680 681 682 683
2000-12-05  Jason Rumney  <jasonr@gnu.org>

	* md5.h: Remove underscores from function declarations.
	(__attribute__, __alignof__) [!__GNUC__]: Define.

	* md5.c: Delay include of md5.h until after namespace cleaning.

Jason Rumney's avatar
Jason Rumney committed
684 685 686 687 688 689
	* makefile.w32-in (fns.o): Depend on md5.h
	(md5.o): New target.
	(sunfns.o): Remove.

	* makefile.nt: Likewise.

Jason Rumney's avatar
Jason Rumney committed
690 691 692 693
2000-12-05  Jason Rumney  <jasonr@altavista.net>

	* w32term.c (expose_area): Complete last change.

694 695 696 697
2000-12-05  Ken Raeburn  <raeburn@gnu.org>

	* minibuf.c: Include intervals.h.

698 699 700 701 702 703 704 705
2000-12-05  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (x_produce_glyphs): If a font for a component of
	a composition is not found, use 1 pixel dot ascent and 0 dot
	descent value to avoid displaying terribly tall empty boxes.
	(expose_area): Pass x-coordinate relative to the exposed
	area to x_draw_glyphs instead of a window-relative coordinate.

Gerd Moellmann's avatar
Gerd Moellmann committed
706 707
2000-12-05  Gerd Moellmann  <gerd@gnu.org>

708 709 710 711 712 713 714 715 716 717 718
	* xdisp.c (next_element_from_ellipsis): Save face before selective
	display in saved_face_id, and set face_before_selective_p.
	(reseat_1): Reset face_before_selective_p.
	(append_space, extend_face_to_end_of_line): If iterator's
	face_before_selective_p is set, use the face from saved_face_id.
	(extend_face_to_end_of_line): For tty frames, make sure to
	use the right face id when producing spaces at the end of
	the line.

	* dispextern.h (struct it): Add face_before_selective_p.

719 720 721
	* keyboard.c (record_char): Don't record identical help-echo
	events in recent_keys.

Gerd Moellmann's avatar
Gerd Moellmann committed
722 723 724
	* xterm.c [USE_X_TOOLKIT]: Close the display.
	(xim_close_dpy): Handle case that the display has been closed.

Gerd Moellmann's avatar
Gerd Moellmann committed
725 726 727
	* xterm.c (x_destroy_window): Reset the frame's X window after
	destroying it.

Gerd Moellmann's avatar
Gerd Moellmann committed
728 729 730 731 732 733
	* dispnew.c (adjust_glyph_matrix): Make sure to initialize local
	variable window_width.
	(line_draw_cost): Fix code skipping over spaces at the end of the
	line when must_write_spaces is not set.
	(scrolling_window): Fix code inserting runs in list of all runs.

Kenichi Handa's avatar
Kenichi Handa committed
734 735 736 737 738
2000-12-05  Kenichi Handa  <handa@etl.go.jp>

	* coding.c (setup_coding_system): Be sure to initialize
	coding->category_idx.

Gerd Moellmann's avatar
Gerd Moellmann committed
739 740
2000-12-04  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
741 742
	* xterm.c (PER_CHAR_METRIC): Removed because not used.
	
Gerd Moellmann's avatar
Gerd Moellmann committed
743 744 745
	* xterm.c (expose_area): Pass x-coordinate relative to the exposed
	area to x_draw_glyphs instead of a window-relative coordinate.

746 747 748
	* fileio.c (auto_save_error): Add parameter ERROR.  Show the
	error in the message.

749 750 751 752
	* keyboard.c (Fread_key_sequence): Don't start the busy cursor
	timer after having read a key.  It's not good for code reading
	several keys in a loop, like an input method.

Gerd Moellmann's avatar
Gerd Moellmann committed
753 754 755 756 757 758
	* fileio.c (Finsert_file_contents): When VISIT is t, don't
	record undo information for format-decode.

	* undo.c (Fprimitive_undo): Bind inhibit-read-only to t if
	current buffer is read-only, not if it isn't.

Gerd Moellmann's avatar
Gerd Moellmann committed
759 760 761 762
	* keyboard.c (record_char): Record `help-echo' input events
	in recent_keys only if they display some help.  Don't record
	`help-echo' events as macro char.

Gerd Moellmann's avatar
Gerd Moellmann committed
763 764 765 766 767 768
2000-12-04  Richard M. Stallman  <rms@caffeine.ai.mit.edu>

	* editfns.c (save_excursion_restore): Don't move point
	in another window if it is showing the wrong buffer.
	Avoid the call to Fwindow_live_p, for speed.

Kenichi Handa's avatar
Kenichi Handa committed
769 770
2000-12-04  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
771 772 773 774 775 776 777 778
	* xfaces.c (struct font_name): New member registry_priority.
	(split_font_name): Initialize the above member to zero.
	(concat_font_list): New function.
	(font_list): Include fonts of all alternative registries.
	(FONT_POINT_SIZE_QUANTUM): New macro.
	(better_font_p): Ignore point size difference less than
	FONT_POINT_SIZE_QUANTUM.  Use registry_prioprity as a last resort.

Kenichi Handa's avatar
Kenichi Handa committed
779 780 781 782
	* xterm.c (x_produce_glyphs): If a font for a component of
	a composition is not found, use 1 pixel dot ascent and 0 dot
	descent value to avoid displaying terribly tall empty boxes.

Kenichi Handa's avatar
Kenichi Handa committed
783 784
	* ccl.c (stack_idx_of_map_multiple): Don't use C initializier.

785 786 787 788 789 790 791 792 793
2000-12-03  Ken Raeburn  <raeburn@gnu.org>

	* coding.h (code_convert_string1): Declare.

	* fns.c (Fmd5): Pass lisp objects, not integers, to call3.

	* lisp.h (Fmake_variable_buffer_local, Fbuffer_file_name):
	Declare.

Jason Rumney's avatar
Jason Rumney committed
794 795 796 797 798 799
2000-12-02  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_bdf_per_char_metric): Dereference pointer
	correctly for single byte character case.
	(w32_per_char_metric): Do not try to make any assumptions about
	the metrics of BDF fonts.
800 801 802 803 804 805 806 807 808 809 810 811 812 813
	(x_estimate_mode_line_height): If `mode-line' face
	hasn't a font, use that of the frame, as drawing glyphs
	does.
	(note_mouse_highlight): Change the cursor shape	on the vertical
	border between windows [not enabled].

	* w32term.h (struct w32_output): Add member horizontal_drag_cursor.

	* w32fns.c (Fx_create_frame): Reintroduce the call to
	face-set-after-frame-defaults.
	(Vx_window_horizontal_drag_shape): New variable.
	(syms_of_xfns): DEFVAR_LISP it.
	(x_set_mouse_color): Create frame's horizontal_drag_cursor [not
	enabled].
Jason Rumney's avatar
Jason Rumney committed
814

Gerd Moellmann's avatar
Gerd Moellmann committed
815 816 817 818 819 820 821
2000-12-02  Simon Josefsson  <simon@josefsson.org>

	* fns.c (Fmd5): Use a different logic to decide the coding system
	to use.

	* coding.h (Qwrite_region, Qcoding_system_error): Declare extern.

Eli Zaretskii's avatar
Eli Zaretskii committed
822 823 824 825 826
2000-12-02  Eli Zaretskii  <eliz@is.elta.co.il>

	* fileio.c (Fread_file_name) [DOS_NT]: Don't crash if homedir is
	NULL.

827 828
2000-12-01  Gerd Moellmann  <gerd@gnu.org>

829 830 831 832 833
	* xterm.c (x_calc_absolute_position): Don't subtract menubar's
	height for YNegative.
	(x_calc_absolute_position) [USE_MOTIF]: Use the column widget's
	height; also see comment there.

834 835 836 837 838 839 840
	* window.c (coordinates_in_window): Handle computations for
	positions on the vertical bar and fringes differently for
	window-system frames.  Consider some pixels near the vertical bar
	as on the bar if the frame doesn't have vertical scroll bars.
	Associate positions between mode or header lines with the
	right window, the left one.

841 842 843 844 845 846 847
2000-12-01  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_clear_window): Avoid clearing an invalid frame.

	* w32xfns.c (get_frame_dc): Avoid changing the palette on an
	invalid frame.

848 849 850 851 852 853 854 855
2000-12-01  Gerd Moellmann  <gerd@gnu.org>

	* window.c (struct saved_window): Add members orig_top and
	orig_height.
	(SAVED_WINDOW_VECTOR_SIZE): Increment to 16.
	(save_window_save, Fset_window_configuration): Save/restore
	window's orig_top and orig_height.

Jason Rumney's avatar
Jason Rumney committed
856 857
2000-12-01  Jason Rumney  <jasonr@gnu.org>

Jason Rumney's avatar
Jason Rumney committed
858
	* w32term.c (x_draw_vertical_border): Fix call to w32_fill_rect.
859

Jason Rumney's avatar
Jason Rumney committed
860 861
	* w32fns.c (x_set_cursor_color): Fix last change.

862 863
2000-11-30  Gerd Moellmann  <gerd@gnu.org>

864 865 866 867
	* xdisp.c (echo_area_display): If cursor is in the echo area, make
	sure that the next redisplay displays the minibuffer, so that
	the cursor will be replaced with what the minibuffer wants.

868 869 870 871 872
	* xterm.c: Test USE_TOOLKIT_SCROLL_BARS everywhere with #ifdef and
	#ifndef instead of using #if.
	(XTread_socket) [USE_MOTIF] <KeyPress>: Call XmIsScrollBar only if
	USE_TOOLKIT_SCROLL_BARS is defined.

Jason Rumney's avatar
Jason Rumney committed
873 874 875 876 877
2000-11-30  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (x_set_cursor_color): Use x_update_cursor instead of
	x_display_cursor.

Gerd Moellmann's avatar
Gerd Moellmann committed
878 879 880 881
2000-11-30  Gerd Moellmann  <gerd@gnu.org>

	* fns.c (Fmd5): Doc fix.

Gerd Moellmann's avatar
Gerd Moellmann committed
882
2000-11-30  Simon Josefsson  <simon@josefsson.org>
Gerd Moellmann's avatar
Gerd Moellmann committed
883 884 885 886 887 888

	* fns.c (Fmd5): New function.
	(syms_of_fns): Defsubr md5.

	* Makefile.in (obj): Add md5.o

Gerd Moellmann's avatar
Gerd Moellmann committed
889 890
2000-11-30  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
891 892
	* md5.h, md5.c: New files, taken from glibc.

Gerd Moellmann's avatar
Gerd Moellmann committed
893 894
	* xmenu.c (popup_get_selection): Use xmalloc instead of malloc.

Gerd Moellmann's avatar
Gerd Moellmann committed
895 896 897 898
	* xterm.c (x_estimate_mode_line_height): If `mode-line' face
	hasn't a font, use that of the frame, as drawing glyphs
	does.

Stefan Monnier's avatar
Stefan Monnier committed
899 900 901 902
2000-11-29  Stefan Monnier  <monnier@cs.yale.edu>

	* eval.c (Frun_hooks): Allow 0 arguments.

903 904
2000-11-29  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
905 906 907
	* xterm.c (XTmouse_position) [USE_X_TOOLKIT]: When the mouse
	is over the menu bar widget, say it's not on the frame.

908 909 910
	* xfns.c (Fx_create_frame): Reintroduce the call to
	face-set-after-frame-defaults.

911 912
	* eval.c (Fsignal): Reset handling_signal.

913 914 915 916 917
2000-11-28  Jason Rumney  <jasonr@gnu.org>

	* w32menu.c (add_menu_item): Reset menu item text when changing
	type to radio button.

Gerd Moellmann's avatar
Gerd Moellmann committed
918 919
2000-11-28  Gerd Moellmann  <gerd@gnu.org>

920
	* xselect.c: Update copyright.
Gerd Moellmann's avatar
Gerd Moellmann committed
921

Gerd Moellmann's avatar
Gerd Moellmann committed
922 923 924 925 926 927 928 929 930 931 932 933 934 935
	* window.c (coordinates_in_window): If on a mode or header line,
	but sufficiently close to its start, return ``on vertical
	border''.  This gives us a way to drag windows horizontally when
	using toolkit scroll bars.

	* xterm.c (note_mouse_highlight): Change the cursor shape
	on the vertical border between windows.

	* xterm.h (struct x_output): Add member horizontal_drag_cursor.

	* xfns.c (Vx_window_horizontal_drag_shape): New variable.
	(syms_of_xfns): DEFVAR_LISP it.
	(x_set_mouse_color): Create frame's horizontal_drag_cursor.

Gerd Moellmann's avatar
Gerd Moellmann committed
936 937 938 939 940
	* textprop.c (text_read_only): New function.
	(verify_interval_modification): Use it instead of signaling
	`text-read-only'.  This makes it easier to catch this error
	with a breakpoint.: 

Gerd Moellmann's avatar
Gerd Moellmann committed
941 942 943
	* xdisp.c (forward_to_next_line_start): Check for newlines, 
	not end of line, which includes CR.

Kenichi Handa's avatar
Kenichi Handa committed
944 945 946 947 948
2000-11-28  Kenichi Handa  <handa@etl.go.jp>

	* coding.c (Ffind_coding_systems_region_internal): Be sure to
	include no-conversion.

Jason Rumney's avatar
Jason Rumney committed
949 950 951 952 953
2000-11-27  Jason Rumney  <jasonr@gnu.org>

	* w32fns.c (w32_load_system_font): Always mark font as double byte
	if codepage is unicode.

954 955
2000-11-27  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
956 957 958 959
	* xdisp.c (forward_to_next_line_start): If already on a newline,
	just consume it to avoid unintended skipping over invisible text
	below.

960 961 962 963
	* keyboard.c (lucid_event_type_list_p): Handle `help-echo',
	`vertical-line', `mode-line' and `header-line' events.

	* xdisp.c (try_window_id): Avoid starting to display in the middle
964 965 966 967
	 of a character, a TAB for instance.  This is easier than to set
	 up the iterator exactly, and it's not a frequent case, so the
	 additional effort wouldn't really pay off.

968 969
2000-11-26  Andrew Choi  <akochoi@i-cable.com>

970
	* emacs.c (main) [macintosh]: Call syms_of_frame before calling
971 972
	init_window_once.

Jason Rumney's avatar
Jason Rumney committed
973 974
2000-11-25  Jason Rumney  <jasonr@gnu.org>

Jason Rumney's avatar
Jason Rumney committed
975 976 977
	* keyboard.c (make_lispy_event) [mouse_wheel, drag_n_drop]: Args
	to window_from_coordinates should be pixel coordinates.

Jason Rumney's avatar
Jason Rumney committed
978 979 980
	* w32fns.c (x_to_w32_font): Do not filter out italic fonts, as new
	redisplay handles them properly.

Miles Bader's avatar
Miles Bader committed
981 982 983 984
2000-11-25  Miles Bader  <miles@gnu.org>

	* indent.c (compute_motion): Keep pos_byte in sync with pos.

Jason Rumney's avatar
Jason Rumney committed
985 986 987 988 989 990 991 992 993 994 995
2000-11-24  Jason Rumney  <jasonr@gnu.org>

	* w32.c (init_environment): Set LANG environment variable based on
	locale settings, if not set.

	* w32fns.c (x_set_tool_bar_lines): Clear internal border when
	making tool bar smaller. When clearing the frame, also
	clear current matrices. Clear frame when tool bar disappears.
	Don't use more lines for the tool-bar than is available.
	(x_change_window_heights): New function.

Gerd Moellmann's avatar
Gerd Moellmann committed
996 997
2000-11-24  Gerd Moellmann  <gerd@gnu.org>

998 999 1000 1001 1002
	* xdisp.c (init_from_display_pos): If POS says we're already after
	 an overlay string ending at POS, make sure to pop the iterator
	 because it will be in front of that overlay string.  When POS is
	 ZV, we've thereby also ``processed'' overlay strings at ZV.

Gerd Moellmann's avatar
Gerd Moellmann committed
1003 1004
	* xfaces.c (lface_from_face_name): Function comment fix.

1005 1006 1007 1008 1009 1010 1011
2000-11-24  Miles Bader  <miles@gnu.org>

	* xdisp.c (display_menu_bar, display_mode_line): Change the way we
	apply `mode-line-inverse-video' -- zero means force display using
	the default face, non-zero means display using the specialized face.
	(syms_of_xdisp): `mode-line-inverse-video' defaults to true again.

Kenichi Handa's avatar
Kenichi Handa committed
1012 1013 1014 1015 1016
2000-11-23  Kenichi Handa  <handa@etl.go.jp>

	* alloc.c (Fmake_string): Use MAX_MULTIBYTE_LENGTH, instead of
	hard coded `4'.

1017 1018 1019 1020 1021
2000-11-23  Eli Zaretskii  <eliz@is.elta.co.il>

	* coding.c (decode_coding_emacs_mule): Fix the case of
	CODING_EOL_LF, which used uninitialized value of c.

Stefan Monnier's avatar
Stefan Monnier committed
1022 1023 1024 1025
2000-11-23  Stefan Monnier  <monnier@cs.yale.edu>

	* xdisp.c (syms_of_xdisp): Make fontification-functions buffer-local.

Gerd Moellmann's avatar
Gerd Moellmann committed
1026 1027
2000-11-22  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1028 1029 1030
	* buffer.c (Fmake_indirect_buffer): Don't treat nil as a
	buffer object.

Gerd Moellmann's avatar
Gerd Moellmann committed
1031 1032
	* frame.h (struct frame): Replace desired_tool_bar_items,
	current_tool_bar_items, n_desired_tool_bar_items,
Eli Zaretskii's avatar
Eli Zaretskii committed
1033
	n_current_tool_bar_items with tool_bar_items and n_tool_bar_items.
Gerd Moellmann's avatar
Gerd Moellmann committed
1034 1035 1036 1037 1038

	* frame.c (make_frame): Change initialization of tool bar
	items accordingly.

	* xterm.c (x_handle_tool_bar_click, note_tool_bar_highlight):
Eli Zaretskii's avatar
Eli Zaretskii committed
1039
	Change references to members deleted from struct frame to use the
Gerd Moellmann's avatar
Gerd Moellmann committed
1040 1041 1042
	new ones.

	* xdisp.c (update_tool_bar, build_desired_tool_bar_string): Change
Eli Zaretskii's avatar
Eli Zaretskii committed
1043
	references to members deleted from struct frame to use the new
Gerd Moellmann's avatar
Gerd Moellmann committed
1044 1045 1046 1047 1048 1049 1050 1051
	ones.

	* dispnew.c (update_frame): Do nothing with frame's tool bar
	items.

	* alloc.c (mark_object) <frame>: Mark tool bar items differently.

	* w32term.c (x_tool_bar_item, w32_handle_tool_bar_click)
Eli Zaretskii's avatar
Eli Zaretskii committed
1052
	(note_tool_bar_highlight): Change references to members deleted
Gerd Moellmann's avatar
Gerd Moellmann committed
1053 1054
	from struct frame to use the new ones.

Miles Bader's avatar
Miles Bader committed
1055 1056 1057 1058 1059
2000-11-23  Miles Bader  <miles@gnu.org>

	* xdisp.c (display_menu_bar): Or `mode-line-inverse-video' with
	the face's inverse-video attribute, rather than overriding it.

1060 1061 1062 1063 1064
2000-11-22  Gerd Moellmann  <gerd@gnu.org>

	* xfns.c (x_set_tool_bar_lines): Clear internal border when
	making tool bar smaller.

1065 1066 1067 1068
2000-11-22  Dave Love  <fx@gnu.org>

	* s/sol2-5.h (_LARGEFILE_SOURCE, _FILE_OFFSET_BITS): Don't define.

Miles Bader's avatar
Miles Bader committed
1069 1070
2000-11-22  Miles Bader  <miles@gnu.org>

Miles Bader's avatar
Miles Bader committed
1071 1072 1073 1074
	* keyboard.c (Vminibuffer_message_timeout): New variable.
	(command_loop_1): Use it to determine message timeout.
	(syms_of_keyboard): Initialize it.

1075
	* xdisp.c (syms_of_xdisp): `mode-line-inverse-video' defaults to nil.
Miles Bader's avatar
Miles Bader committed
1076

Kenichi Handa's avatar
Kenichi Handa committed
1077 1078 1079 1080 1081
2000-11-22  Kenichi Handa  <handa@etl.go.jp>

	* sysdep.c: Move the code for declaring h_errno after #include
	<netdb.h>.

1082 1083
2000-11-21  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1084 1085 1086
	* xfns.c (Fx_hide_tip) [USE_LUCID]: Add a hack to redisplay
	the menu bar when the tooltip is unmapped.

1087 1088 1089 1090
	* buffer.c (Fkill_buffer): Notice if the buffer to kill is the
	sole visible buffer when we're currently in the mini-buffer, and
	give up if so.
	
Jason Rumney's avatar
Jason Rumney committed
1091 1092 1093 1094 1095 1096 1097 1098 1099
2000-11-21  Jason Rumney  <jasonr@gnu.org>

	* w32select.c (Fw32_set_clipboard_data): Save a copy of what is
	put on the clipboard.
	(Fw32_get_clipboard_data): Compare data on clipboard with saved
	copy of what Emacs last put there. If they are the same, do not
	use the clipboard copy to avoid losing data due to coding
	conversions. 

Miles Bader's avatar
Miles Bader committed
1100 1101 1102 1103 1104 1105 1106
2000-11-22  Miles Bader  <miles@gnu.org>

	* minibuf.c (Vminibuffer_prompt_properties): New variable.
	(syms_of_minibuf): Initialize it.
	(read_minibuf): Add properties from Vminibuffer_prompt_properties
	to prompt, don't make read-only.

1107 1108
2000-11-21  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1109 1110 1111
	* bytecode.c (Fbyte_code) <Bvarbind, Bunwind_protect>: Add
	BEFORE/AFTER_POTENTIAL_GC.

Gerd Moellmann's avatar
Gerd Moellmann committed
1112 1113
	* s/hpux10.h (_FILE_OFFSET_BITS): Undef.

Gerd Moellmann's avatar
Gerd Moellmann committed
1114
	* buffer.c (mmap_free_1): Avoid a compiler warning.
1115

1116 1117
	* term.c, cm.c: Don't try to include termcap.h; see comment there.

Kenichi Handa's avatar
Kenichi Handa committed
1118 1119 1120 1121 1122
2000-11-21  Kenichi Handa  <handa@etl.go.jp>

	* s/sol2-5.h: Move #undef USE_MMAP_FOR_BUFFERS out of #if 0
	... #endif scope.

Gerd Moellmann's avatar
Gerd Moellmann committed
1123 1124
2000-11-20  Gerd Moellmann  <gerd@gnu.org>

1125 1126 1127
	* xfns.c (x_create_tip_frame): Use CWSaveUnder only if the 
	screen supports it.

Gerd Moellmann's avatar
Gerd Moellmann committed
1128 1129
	* s/gnu-linux.h: Don't use `#cpu'.

1130 1131 1132
	* buffer.c (MAP_FAILED): Define it as `((void *) -1)' if it's
	not defined in mman.h.

Gerd Moellmann's avatar
Gerd Moellmann committed
1133 1134 1135 1136 1137 1138 1139 1140 1141
	* xterm.c (scroll_bar_windows, scroll_bar_windows_size): New
	variables.
	(x_send_scroll_bar_event): Store the window in scroll_bar_windows
	and store an index in the XClientMessageEvent.  Storing a
	Lisp_Object or pointer can fail on a 64 bit system, since X only
	transfers 32 bits.
	(x_scroll_bar_to_input_event): Get the window from
	scroll_bar_windows.
	
1142 1143 1144 1145
2000-11-20  Dave Love  <fx@gnu.org>

	* Makefile.in (LIBX): Reorder for -lX11 after -lXpm.

Gerd Moellmann's avatar
Gerd Moellmann committed
1146 1147 1148 1149
2000-11-20  Gerd Moellmann  <gerd@gnu.org>

	* s/sol2-5.h (USE_MMAP_FOR_BUFFERS): Undefine.

1150 1151
2000-11-20  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
1152 1153 1154
	* charset.c (get_new_private_charset_id): Don't limit CHARSET_ID
	by WIDTH.

1155 1156 1157
	* alloc.c (make_string): Fix previous change.  Be sure to make
	unibyte string correctly.

1158 1159
2000-11-19  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1160 1161 1162 1163 1164
	* window.c (Fwindow_list): Change parameter list to be XEmacs
	compatible.
	(window_list_1): New function.
	(window_loop): Use it instead of Fwindow_list.

Gerd Moellmann's avatar
Gerd Moellmann committed
1165 1166 1167 1168 1169 1170 1171 1172
	* sysdep.c (emacs_ospeed): New variable.
	(toplevel): Don't declare ospeed extern.
	(init_baud_rate): Use emacs_ospeed instead of ospeed.

	* termcap.c (ospeed): Remove.
	(tputs) [!emacs]: Remove unused code.
	(tgetent): Avoid a compiler warning.

1173 1174
	* xterm.c (x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create)
	(x_scroll_bar_remove, XTset_vertical_scroll_bar): Call
Gerd Moellmann's avatar
Gerd Moellmann committed
1175
	SCROLL_BAR_X_WIDGET with additional argument DPY.
1176 1177 1178 1179 1180 1181 1182 1183 1184

	* xterm.h (struct scroll_bar): Members x_widget_low, x_widget_high
	removed.
	(SCROLL_BAR_X_WIDGET): Get the widget via XtWindowToWidget.
	Take the X display as additional argument.
	(SET_SCROLL_BAR_X_WIDGET): Store the window of the widget, since
	`Widget' is a pointer type that's not easily stored in Lisp_Object
	form in a portable way.
	
1185 1186
	* dispnew.c (update_text_area): Fix last change.

1187 1188
2000-11-18  Gerd Moellmann  <gerd@gnu.org>

1189 1190 1191 1192 1193
	* xdisp.c: Use BINDING_STACK_SIZE throughout.

	* xfns.c (x_set_tool_bar_lines): When clearing the frame, also
	clear current matrices.

1194 1195 1196
	* buffer.c (mmap_enlarge): Don't print a message on stderr
	if mapping new memory at the end of the existing region fails.

1197 1198 1199
	* dispnew.c (update_text_area): Don't skip over equal glyphs
	when the last current glyph overlaps the glyph to its right.

1200 1201 1202 1203 1204
2000-11-18  Miles Bader  <miles@gnu.org>

	* xdisp.c (message_log_check_duplicate): Let "..."-detection match
	lines that *end* with "..." too (that's the most common case!).

Gerd Moellmann's avatar
Gerd Moellmann committed
1205 1206
2000-11-18  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1207 1208
	* xdisp.c (resize_mini_window): Temporarily change to the
	mini-window's buffer if necessary.
1209

Gerd Moellmann's avatar
Gerd Moellmann committed
1210 1211 1212 1213 1214 1215 1216
	* xfns.c (Fx_show_tip): Use default y-offset of -10 so that
	the tooltip obscures less text under it.

2000-11-17  Gerd Moellmann  <gerd@gnu.org>

	* puresize.h (BASE_PURESIZE): Increase to 700000.

1217 1218 1219 1220
2000-11-18  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_draw_bitmap): Use face to set colors.

Dave Love's avatar
Dave Love committed
1221 1222 1223 1224
2000-11-17  Dave Love  <fx@gnu.org>

	* lread.c (Fload): Fix #ifdef for pcc.

1225 1226 1227 1228 1229
2000-11-17  Gerd Moellmann  <gerd@gnu.org>

	* xdisp.c (pos_visible_p): Compute the default character height
	differently.

1230 1231
2000-11-16  Gerd Moellmann  <gerd@gnu.org>

1232 1233 1234 1235
	* xdisp.c (pos_visible_p): Handle case that we reach ZV without
	knowing the line's height; use the default font's height in that
	case.

1236 1237 1238
	* xfaces.c (weight_table): Add `demi' with the same meaning as
	`demibold'.

Kenichi Handa's avatar
Kenichi Handa committed
1239 1240
2000-11-16  Kenichi Handa  <handa@etl.go.jp>

1241
	* dispnew.c (null_row): New global static variable.
Kenichi Handa's avatar
Kenichi Handa committed
1242 1243
	(clear_glyph_row): Delete local static variable null_row.

1244 1245 1246 1247 1248 1249 1250
2000-11-15  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New constant.
	(w32_alloc_lighter_color): Use new brightness calculations from
	xterm.c. Scale delta to be in the range expected by W32.
	(w32_draw_relief_rect): Use frame relief colors.

1251 1252
2000-11-15  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1253 1254 1255 1256 1257 1258 1259 1260 1261
	* frame.c (syms_of_frame_1): Removed; code moved to syms_of_frame.
	(Qinhibit_default_face_x_resources): New variable.
	(syms_of_frame): Initialize it.
	(Fmodify_frame_parameters): Bind inhibit-default-face-x-resources.

	* xdisp.c (pos_visible_p): Improve function comment.

	* lisp.h (BINDING_STACK_SIZE): New macro.

1262 1263 1264 1265
	* dired.c (directory_files_internal) [EAGAIN || EINTR]: Retry
	reading the directory if readdir returns null and errno is EAGAIN
	or EINTR.

Stefan Monnier's avatar
Stefan Monnier committed
1266 1267 1268 1269 1270 1271 1272 1273 1274
2000-11-14  Stefan Monnier  <monnier@cs.yale.edu>

	* xdisp.c (try_scrolling): Set scroll_max to max of scroll_* args
	so setting scroll-step to 1 doesn't defeat scroll-conservatively.
	Set amount_to_scroll to max of dx and scroll_step so that
	scroll-conservatively doesn't defeat scroll-step>1.
	(syms_of_xdisp): Add a hint in scroll-step's docstring to use
	scroll-conservatively for line-at-a-time scrolling.

1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293
2000-11-14  Gerd Moellmann  <gerd@gnu.org>

	* window.c (Fpos_visible_in_window_p): Call pos_visible with
	extra argument.

	* xdisp.c (current_mode_line_height, current_header_line_height):
	New variables.
	(init_xdisp): Initialize them.
	(pos_visible_p): Add parameter EXACT_MODE_LINE_HEIGHTS_P.  Compute
	and use exact mode line heights if it is set.

	* lisp.h (pos_visible_p): Change prototype.

	* dispextern.h (CURRENT_MODE_LINE_HEIGHT)
	(CURRENT_HEADER_LINE_HEIGHT):  Look at current_mode_line_height
	and current_header_line_height first.
	(current_mode_line_height, current_header_line_height): Declare
	extern.

1294 1295 1296 1297 1298 1299
2000-11-14  Miles Bader  <miles@lsi.nec.co.jp>

	* xterm.c (x_alloc_lighter_color): Use real brightness calculation.
	Just use FACTOR/2 instead of HIGHLIGHT_COLOR_DARK_BOOST.
	(HIGHLIGHT_COLOR_DARK_BOOST): Macro removed.

Miles Bader's avatar
Miles Bader committed
1300 1301 1302 1303 1304 1305 1306
2000-11-14  Miles Bader  <miles@gnu.org>

	* xterm.c (x_alloc_lighter_color): Include an additive component
	too for dark colors, because FACTOR isn't enough.
	(HIGHLIGHT_COLOR_DARK_BOOST, HIGHLIGHT_COLOR_DARK_BOOST_LIMIT):
	New macros.

1307 1308 1309 1310 1311 1312
2000-11-13  Gerd Moellmann  <gerd@gnu.org>

	* keyboard.c (show_help_echo): Call message3_nolog with number of
	bytes in the help string as 2nd parameter, instead of the number
	of characters.

Miles Bader's avatar
Miles Bader committed
1313 1314 1315 1316 1317 1318 1319 1320 1321
2000-11-13  Miles Bader  <miles@gnu.org>

	* lread.c (openp): Return -2 instead of 0 for the `remote file' case.
	(Fload): Use new openp return protocol.
	Don't try to use Vload_source_file_function to load .elc files.
	* xfns.c (x_create_bitmap_from_file, x_find_image_file): Use new
	openp return protocol.
	* w32fns.c (x_create_bitmap_from_file, x_find_image_file): Likewise.

Kenichi Handa's avatar
Kenichi Handa committed
1322 1323
2000-11-11  Kenichi Handa  <handa@etl.go.jp>

1324 1325 1326 1327 1328 1329
	* syssignal.h: Pay attention to BROKEN_SIGAIO and BROKEN_SIGPTY.

	* m/ibmrs6000.h (BROKEN_SIGAIO, BROKEN_SIGPTY, BROKEN_SIGPOLL):
	Defined these macros.
	(NLIST_STRUCT): Avoid re-defining it.

Kenichi Handa's avatar
Kenichi Handa committed
1330 1331 1332 1333
	* s/hpux10.h (C_SWITCH_X_SYSTEM): Include -I/usr/include/X11R6 and
	-I/usr/contrib/X11R6/include.
	(LD_SWITCH_X_DEFAULT): Include -L/usr/lib/X11R6.

Jason Rumney's avatar
Jason Rumney committed
1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354
2000-11-10  Jason Rumney  <jasonr@gnu.org>

	* w32term.h (CP_8BIT, CP_UNICODE, CP_INVALID): New pseudo-codepages.

	* w32term.c (w32_encode_char): Handle CP_UNICODE specially.
	(w32_use_unicode_for_codepage): Use new pseudo-codepages.

	* w32fns.c (Qw32_charset_hangeul): Rename to match w32 headers.
	(Qw32_charset_vietnamese): New symbol.
	(xlfd_charset_of_font): New function.
	(w32_load_system_font): Use it.
	(x_to_w32_charset): Use Fassoc to find charset info. Special case
	when Vw32_charset_info_alist is nil to ensure default face always
	has font. Use Fcar and Fcdr for safety.
	(w32_to_x_charset): Use Vw32_charset_info_alist for mappings.
	(w32_codepage_for_font): Use xlfd_charset_of_font.  Use new
	pseudo-codepages for special cases.
	(w32_to_x_font): New parameter to allow charset portion to be
	specified where there is many to one mapping.  Callers changed.
	(w32_list_fonts): Avoid listing fonts that won't display.

Gerd Moellmann's avatar
Gerd Moellmann committed
1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365
2000-11-10  Gerd Moellmann  <gerd@gnu.org>

	* xfaces.c (Vface_alternative_font_registry_alist): New variable.
	(font_list_1): Renamed from font_list.
	(font_list): New function, trying alternative registries from
	Vface_alternative_font_registry_alist.
	(Finternal_set_alternative_font_registry_alist): New function.
	(syms_of_xfaces): Initialize and Staticpro
	Vface_alternative_font_registry_alist.  Defsubr
	Finternal_set_alternative_font_registry_alist.

Ken Raeburn's avatar
Ken Raeburn committed
1366 1367 1368 1369
2000-11-09  Ken Raeburn  <raeburn@gnu.org>

	* lisp.h (Flooking_at): Declare.

1370 1371
2000-11-09  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1372 1373
	* dired.c (directory_files_internal): Fix a braino.
	
1374 1375 1376
	* dired.c (directory_files_internal): Add missing GCPRO's.
	Some cleanup.

Gerd Moellmann's avatar
Gerd Moellmann committed
1377 1378
2000-11-08  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1379 1380 1381 1382 1383 1384 1385 1386 1387 1388
	* xdisp.c (syms_of_xdisp): Change doc of max-mini-window-height.
	(resize_mini_window): Return quickly if Vresize_mini_window is
	nil.  Don't return if Vmax_mini_window_height is nil.

	* xdisp.c (Vresize_mini_window, Qgrow_only): New variables.
	(syms_of_xdisp): Initialize them.
	(resize_mini_window): Act according to the setting of
	Vresize_mini_window.
	(syms_of_xdisp): Initialize Vmenu_bar_update_hook to nil.

Gerd Moellmann's avatar
Gerd Moellmann committed
1389 1390 1391 1392 1393
	* xterm.c (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]: Map the
	scroll bar widget after configuring it, so that it will appear at
	the right position from the start.
	(XTredeem_scroll_bar): Cleaned up.

Kenichi Handa's avatar
Kenichi Handa committed
1394 1395 1396
2000-11-08  Kenichi Handa  <handa@etl.go.jp>

	* xterm.c (VCENTER_BASELINE_OFFSET): Fix previous change.  If the
Gerd Moellmann's avatar
Gerd Moellmann committed
1397
	font is taller than the frame line, we don't have to bias the
Kenichi Handa's avatar
Kenichi Handa committed
1398 1399 1400 1401
	division by two.

	* w32term.c (VCENTER_BASELINE_OFFSET): Likewise.

Dave Love's avatar
Dave Love committed
1402 1403
2000-11-07  Dave Love  <fx@gnu.org>

1404
	* config.in (HAVE_MKSTEMP): Add.