ChangeLog 318 KB
Newer Older
1 2
2000-12-28  Gerd Moellmann  <gerd@gnu.org>

3 4
	* xfns.c: Use #if GLYPH_DEBUG instead of #ifdef GLYPH_DEBUG.

5 6
	* dispnew.c: Use #if GLYPH_DEBUG instead of #ifdef GLYPH_DEBUG.

Kenichi Handa's avatar
Kenichi Handa committed
7 8 9 10 11 12 13 14 15 16 17
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
18 19 20 21 22 23 24 25 26 27
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
28
	a text contains compositions, encode them correctly.
Kenichi Handa's avatar
Kenichi Handa committed
29 30 31
	(setup_coding_system): Set coding->commong_flags for emacs-mule so
	that decoding and encoding are required.

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

Gerd Moellmann's avatar
Gerd Moellmann committed
34 35 36 37 38
	* 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.

39 40 41
	* .gdbinit: Comment out the line pointing to the Lesstif source
	directory.

42 43 44
	* window.c (Frecenter): Use displayed_window_lines instead
	of window_internal_height.

Gerd Moellmann's avatar
Gerd Moellmann committed
45 46 47 48 49 50 51 52
	* 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
53 54 55 56 57 58 59 60 61 62 63 64 65
	* 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.

66 67
2000-12-23  Gerd Moellmann  <gerd@gnu.org>

68 69 70 71
	* 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.

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

76 77 78 79 80
	* 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.

81 82 83 84
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
85 86 87 88 89 90 91 92 93
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.

94 95 96 97 98 99 100
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.

101 102
2000-12-22  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
103 104 105 106
	* 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.
	
107 108 109 110 111 112
	* 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
113 114 115 116 117 118 119 120 121 122
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
123 124
2000-12-21  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
125 126 127 128 129 130 131 132 133 134 135 136
	* 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
137 138 139 140
	* 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
141 142 143 144 145 146 147 148 149 150 151 152
	* 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.

153 154 155 156 157 158 159 160 161
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
162 163 164 165 166 167
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.
168

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

Kenichi Handa's avatar
Kenichi Handa committed
171 172 173
	* 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
174 175 176 177
	* 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
178 179 180 181
2000-12-20  Dave Love  <fx@gnu.org>

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

182 183 184 185 186 187 188 189
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
190 191
2000-12-20  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208
	* 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.

209 210 211 212
	* 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.
	
213 214 215
	* 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
216 217 218 219 220 221 222 223 224 225 226
	* 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.

227 228 229 230
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
231 232 233 234
2000-12-19  Eli Zaretskii  <eliz@is.elta.co.il>

	* fns.c (Frequire): Doc fix.

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

Gerd Moellmann's avatar
Gerd Moellmann committed
237 238 239
	* window.c (window_scroll_pixel_based): Don't use
	move_it_vertically.

240 241 242
	* dispnew.c (direct_output_for_insert): Fix check for mini-window
	currently displaying a message.

Gerd Moellmann's avatar
Gerd Moellmann committed
243 244 245 246
	* 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
247 248 249 250 251 252 253 254
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
255 256 257 258
2000-12-18  Gerd Moellmann  <gerd@gnu.org>

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

Eli Zaretskii's avatar
Eli Zaretskii committed
259 260 261 262
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
263 264 265 266
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
267 268
2000-12-18  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
269 270 271
	* xterm.c (x_connection_closed): Prevent being called recursively
	because of an error condition in XtCloseDisplay.
	
272 273 274
	* xdisp.c (init_iterator): If noninteractive, and the frame's
	face cache is null, make one.

275 276 277
	* xfns.c (show_busy_cursor): Check for live frames more
	thoroughly.

Gerd Moellmann's avatar
Gerd Moellmann committed
278 279 280
	* process.c (wait_reading_process_input): Check for pending
	input when running timers.

281 282 283 284 285
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
286 287 288 289 290
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
291 292 293 294 295 296 297 298 299 300
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
301 302
2000-12-17  Gerd Moellmann  <gerd@gnu.org>

303 304 305
	* window.c (coordinates_in_window): Fix computation for
	position on vertical line between mode lines.

Gerd Moellmann's avatar
Gerd Moellmann committed
306 307 308 309 310
	* 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.

311 312 313 314 315
	* 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
316 317 318 319 320 321
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
322 323 324 325 326 327
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
328 329
2000-12-15  Gerd Moellmann  <gerd@gnu.org>

330 331 332 333 334 335 336
	* 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
337 338 339
	* window.c (Fset_window_point): Remove test for
	cursor_in_non_selected_windows.

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

Gerd Moellmann's avatar
Gerd Moellmann committed
342 343 344
	* xfns.c (x_create_tip_frame): Use unwind_create_tip_frame,
	not unwind_create_frame.

Gerd Moellmann's avatar
Gerd Moellmann committed
345 346 347 348 349 350 351
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
352 353
2000-12-15  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
354 355
	* coding.c (setup_coding_system): Clear all members of the struct
	coding_system at first.
Kenichi Handa's avatar
Kenichi Handa committed
356 357 358 359
	(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
360

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

Miles Bader's avatar
Miles Bader committed
363 364 365 366 367 368
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
369 370 371 372 373
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
374 375 376 377 378
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
379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396
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
397 398 399 400 401 402 403
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
404 405
2000-12-14  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
406 407 408 409 410 411 412
	* 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
413 414
	* fns.c (Fmd5): Docstring improved.

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

Kenichi Handa's avatar
Kenichi Handa committed
417 418 419 420 421 422 423
	* 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
424 425 426 427
	(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.
	
428 429 430 431 432 433 434
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
435 436
2000-12-13  Gerd Moellmann  <gerd@gnu.org>

437 438 439 440 441 442 443 444 445 446 447
	* 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.

448 449 450 451 452 453
	* 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.
	
454
	* xterm.c (x_term_init): Declare gray_bitmap_bits as `extern char *'.
Gerd Moellmann's avatar
Gerd Moellmann committed
455 456 457

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

458 459 460 461 462
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
463 464 465 466 467 468 469 470 471
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
472 473
2000-12-12  Eli Zaretskii  <eliz@is.elta.co.il>

Stefan Monnier's avatar
Stefan Monnier committed
474
	* msdos.c (fast_find_position): Don't overstep the last window row.
Eli Zaretskii's avatar
Eli Zaretskii committed
475 476 477 478
	(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.

479 480
2000-12-12  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
481 482 483 484 485 486
	* 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
487 488 489
	* 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
490 491 492 493
	* 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
494 495
	* xfns.c (Fx_hide_tip): Simplified.

Gerd Moellmann's avatar
Gerd Moellmann committed
496 497 498
	* s/freebsd.h, s/netbsd.h (GC_MARK_STACK): Use
	GC_MAKE_GCPROS_NOOPS instead of `1'.

499 500
	* s/gnu-linux.h (GC_MARK_STACK): Define as GC_MAKE_GCPROS_NOOPS.

501 502
2000-12-11  Gerd Moellmann  <gerd@gnu.org>

503 504
	* xfns.c (Fx_hide_tip): Fix last change.
	
505 506 507 508 509 510 511 512 513 514 515 516 517 518
	* 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
519 520 521
	* keymap.c (Fkey_description): If KEYS is an empty key sequence,
	return an empty string.

522 523 524 525 526
	* 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.
	
527 528 529
	* xdisp.c (try_window_id) <all changes above window start>:
	Set the cursor.

Gerd Moellmann's avatar
Gerd Moellmann committed
530 531 532 533 534 535 536 537 538 539
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.
	
540 541 542 543
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
544 545 546
	Handle non-newline-terminated final lines properly.
	(Fwindow_text_height): New function (used to be in lisp).
	(syms_of_window): Initialize it.
547

548 549 550 551 552 553
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.

554 555 556 557 558 559
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
560 561
	(displayed_window_lines): Don't include partially visible lines.
	(Fmove_to_window_line): Skip past any partially visible first line.
562

Gerd Moellmann's avatar
Gerd Moellmann committed
563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581
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
582 583 584 585 586
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
587 588 589 590
2000-12-07  Stefan Monnier  <monnier@cs.yale.edu>

	* alloc.c (gc_sweep): Add comment.

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

593 594 595 596 597
	* 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.

598 599 600 601
	* 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
602 603 604 605 606 607 608 609 610 611
	* 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.

612 613 614 615
2000-12-07  Andrew Innes  <andrewi@gnu.org>

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

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

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

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

Andrew Innes's avatar
Andrew Innes committed
622 623 624 625 626 627 628 629 630 631
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.

632 633
2000-12-06  Gerd Moellmann  <gerd@gnu.org>

634 635 636
	* alloc.c (gc_sweep): Prevent symbols read during loadup
	from being freed.

Gerd Moellmann's avatar
Gerd Moellmann committed
637 638 639 640 641 642 643
	* 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
644 645 646 647 648 649
	* 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.

650 651 652
	* window.c (coordinates_in_window): Check mouse on mode-line or
	header-line first.

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

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

658 659 660
	* sound.c (vox_configure): Set volume for left and right channel.
	(sound_cleanup): Return nil.

661 662
	* xdisp.c (move_it_by_lines): Fix paren typo.

663 664 665 666 667
	* 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.

668 669 670 671 672
	* window.c (Veven_window_heights): New variable.
	(syms_of_window): DEFVAR_LISP it.
	(Fdisplay_buffer): Check Veven_window_heights before evening the
	window heights.
	
673 674 675 676 677
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
678 679 680 681 682
2000-12-06  Kenichi Handa  <handa@etl.go.jp>

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

683 684 685 686 687 688 689
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
690 691 692 693 694 695
	* 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
696 697 698 699
2000-12-05  Jason Rumney  <jasonr@altavista.net>

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

700 701 702 703
2000-12-05  Ken Raeburn  <raeburn@gnu.org>

	* minibuf.c: Include intervals.h.

704 705 706 707 708 709 710 711
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
712 713
2000-12-05  Gerd Moellmann  <gerd@gnu.org>

714 715 716 717 718 719 720 721 722 723 724
	* 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.

725 726 727
	* keyboard.c (record_char): Don't record identical help-echo
	events in recent_keys.

Gerd Moellmann's avatar
Gerd Moellmann committed
728 729 730
	* 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
731 732 733
	* xterm.c (x_destroy_window): Reset the frame's X window after
	destroying it.

Gerd Moellmann's avatar
Gerd Moellmann committed
734 735 736 737 738 739
	* 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
740 741 742 743 744
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
745 746
2000-12-04  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
747 748
	* xterm.c (PER_CHAR_METRIC): Removed because not used.
	
Gerd Moellmann's avatar
Gerd Moellmann committed
749 750 751
	* xterm.c (expose_area): Pass x-coordinate relative to the exposed
	area to x_draw_glyphs instead of a window-relative coordinate.

752 753 754
	* fileio.c (auto_save_error): Add parameter ERROR.  Show the
	error in the message.

755 756 757 758
	* 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
759 760 761 762 763 764
	* 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
765 766 767 768
	* 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
769 770 771 772 773 774
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
775 776
2000-12-04  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
777 778 779 780 781 782 783 784
	* 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
785 786 787 788
	* 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
789 790
	* ccl.c (stack_idx_of_map_multiple): Don't use C initializier.

791 792 793 794 795 796 797 798 799
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
800 801 802 803 804 805
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.
806 807 808 809 810 811 812 813 814 815 816 817 818 819
	(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
820

Gerd Moellmann's avatar
Gerd Moellmann committed
821 822 823 824 825 826 827
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
828 829 830 831 832
2000-12-02  Eli Zaretskii  <eliz@is.elta.co.il>

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

833 834
2000-12-01  Gerd Moellmann  <gerd@gnu.org>

835 836 837 838 839
	* 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.

840 841 842 843 844 845 846
	* 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.

847 848 849 850 851 852 853
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.

854 855 856 857 858 859 860 861
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
862 863
2000-12-01  Jason Rumney  <jasonr@gnu.org>

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

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

868 869
2000-11-30  Gerd Moellmann  <gerd@gnu.org>

870 871 872 873
	* 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.

874 875 876 877 878
	* 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
879 880 881 882 883
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
884 885 886 887
2000-11-30  Gerd Moellmann  <gerd@gnu.org>

	* fns.c (Fmd5): Doc fix.

Gerd Moellmann's avatar
Gerd Moellmann committed
888
2000-11-30  Simon Josefsson  <simon@josefsson.org>
Gerd Moellmann's avatar
Gerd Moellmann committed
889 890 891 892 893 894

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

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

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

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

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

Gerd Moellmann's avatar
Gerd Moellmann committed
901 902 903 904
	* 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
905 906 907 908
2000-11-29  Stefan Monnier  <monnier@cs.yale.edu>

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

909 910
2000-11-29  Gerd Moellmann  <gerd@gnu.org>

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

914 915 916
	* xfns.c (Fx_create_frame): Reintroduce the call to
	face-set-after-frame-defaults.

917 918
	* eval.c (Fsignal): Reset handling_signal.

919 920 921 922 923
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
924 925
2000-11-28  Gerd Moellmann  <gerd@gnu.org>

926
	* xselect.c: Update copyright.
Gerd Moellmann's avatar
Gerd Moellmann committed
927

Gerd Moellmann's avatar
Gerd Moellmann committed
928 929 930 931 932 933 934 935 936 937 938 939 940 941
	* 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
942 943 944 945 946
	* 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
947 948 949
	* xdisp.c (forward_to_next_line_start): Check for newlines, 
	not end of line, which includes CR.

Kenichi Handa's avatar
Kenichi Handa committed
950 951 952 953 954
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
955 956 957 958 959
2000-11-27  Jason Rumney  <jasonr@gnu.org>

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

960 961
2000-11-27  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
962 963 964 965
	* xdisp.c (forward_to_next_line_start): If already on a newline,
	just consume it to avoid unintended skipping over invisible text
	below.

966 967 968 969
	* 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
970 971 972 973
	 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.

974 975
2000-11-26  Andrew Choi  <akochoi@i-cable.com>

976
	* emacs.c (main) [macintosh]: Call syms_of_frame before calling
977 978
	init_window_once.

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

Jason Rumney's avatar
Jason Rumney committed
981 982 983
	* 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
984 985 986
	* 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
987 988 989 990
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
991 992 993 994 995 996 997 998 999 1000 1001
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
1002 1003
2000-11-24  Gerd Moellmann  <gerd@gnu.org>

1004 1005 1006 1007 1008
	* 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
1009 1010
	* xfaces.c (lface_from_face_name): Function comment fix.

1011 1012 1013 1014 1015 1016 1017
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
1018 1019 1020 1021 1022
2000-11-23  Kenichi Handa  <handa@etl.go.jp>

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

1023 1024 1025 1026 1027
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
1028 1029 1030 1031
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
1032 1033
2000-11-22  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1034 1035 1036
	* buffer.c (Fmake_indirect_buffer): Don't treat nil as a
	buffer object.

Gerd Moellmann's avatar
Gerd Moellmann committed
1037 1038
	* 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
1039
	n_current_tool_bar_items with tool_bar_items and n_tool_bar_items.
Gerd Moellmann's avatar
Gerd Moellmann committed
1040 1041 1042 1043 1044

	* 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
1045
	Change references to members deleted from struct frame to use the
Gerd Moellmann's avatar
Gerd Moellmann committed
1046 1047 1048
	new ones.

	* xdisp.c (update_tool_bar, build_desired_tool_bar_string): Change
Eli Zaretskii's avatar
Eli Zaretskii committed
1049
	references to members deleted from struct frame to use the new
Gerd Moellmann's avatar
Gerd Moellmann committed
1050 1051 1052 1053 1054 1055 1056 1057
	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
1058
	(note_tool_bar_highlight): Change references to members deleted
Gerd Moellmann's avatar
Gerd Moellmann committed
1059 1060
	from struct frame to use the new ones.

Miles Bader's avatar
Miles Bader committed
1061 1062 1063 1064 1065
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.

1066 1067 1068 1069 1070
2000-11-22  Gerd Moellmann  <gerd@gnu.org>

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

1071 1072 1073 1074
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
1075 1076
2000-11-22  Miles Bader  <miles@gnu.org>

Miles Bader's avatar
Miles Bader committed
1077 1078 1079 1080
	* keyboard.c (Vminibuffer_message_timeout): New variable.
	(command_loop_1): Use it to determine message timeout.
	(syms_of_keyboard): Initialize it.

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

Kenichi Handa's avatar
Kenichi Handa committed
1083 1084 1085 1086 1087
2000-11-22  Kenichi Handa  <handa@etl.go.jp>

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

1088 1089
2000-11-21  Gerd Moellmann  <gerd@gnu.org>

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

1093 1094 1095 1096
	* 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
1097 1098 1099 1100 1101 1102 1103 1104 1105
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
1106 1107 1108 1109 1110 1111 1112
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.

1113 1114
2000-11-21  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1115 1116 1117
	* bytecode.c (Fbyte_code) <Bvarbind, Bunwind_protect>: Add
	BEFORE/AFTER_POTENTIAL_GC.

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

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

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

Kenichi Handa's avatar
Kenichi Handa committed
1124 1125 1126 1127 1128
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
1129 1130
2000-11-20  Gerd Moellmann  <gerd@gnu.org>

1131 1132 1133
	* xfns.c (x_create_tip_frame): Use CWSaveUnder only if the 
	screen supports it.

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

1136 1137 1138
	* buffer.c (MAP_FAILED): Define it as `((void *) -1)' if it's
	not defined in mman.h.

Gerd Moellmann's avatar
Gerd Moellmann committed
1139 1140 1141 1142 1143 1144 1145 1146 1147
	* 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.
	
1148 1149 1150 1151
2000-11-20  Dave Love  <fx@gnu.org>

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

Gerd Moellmann's avatar
Gerd Moellmann committed
1152 1153 1154 1155
2000-11-20  Gerd Moellmann  <gerd@gnu.org>

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

1156 1157
2000-11-20  Kenichi Handa  <handa@etl.go.jp>

Kenichi Handa's avatar
Kenichi Handa committed
1158 1159 1160
	* charset.c (get_new_private_charset_id): Don't limit CHARSET_ID
	by WIDTH.

1161 1162 1163
	* alloc.c (make_string): Fix previous change.  Be sure to make
	unibyte string correctly.

1164 1165
2000-11-19  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1166 1167 1168 1169 1170
	* 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
1171 1172 1173 1174 1175 1176 1177 1178
	* 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.

1179 1180
	* 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
1181
	SCROLL_BAR_X_WIDGET with additional argument DPY.
1182 1183 1184 1185 1186 1187 1188 1189 1190

	* 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.
	
1191 1192
	* dispnew.c (update_text_area): Fix last change.

1193 1194
2000-11-18  Gerd Moellmann  <gerd@gnu.org>

1195 1196 1197 1198 1199
	* xdisp.c: Use BINDING_STACK_SIZE throughout.

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

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

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

1206 1207 1208 1209 1210
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
1211 1212
2000-11-18  Gerd Moellmann  <gerd@gnu.org>

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

Gerd Moellmann's avatar
Gerd Moellmann committed
1216 1217 1218 1219 1220 1221 1222
	* 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.

1223 1224 1225 1226
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
1227 1228 1229 1230
2000-11-17  Dave Love  <fx@gnu.org>

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

1231 1232 1233 1234 1235
2000-11-17  Gerd Moellmann  <gerd@gnu.org>

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

1236 1237
2000-11-16  Gerd Moellmann  <gerd@gnu.org>

1238 1239 1240 1241
	* 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.

1242 1243 1244
	* xfaces.c (weight_table): Add `demi' with the same meaning as
	`demibold'.

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

1247
	* dispnew.c (null_row): New global static variable.
Kenichi Handa's avatar
Kenichi Handa committed
1248 1249
	(clear_glyph_row): Delete local static variable null_row.

1250 1251 1252 1253 1254 1255 1256
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.

1257 1258
2000-11-15  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1259 1260 1261 1262 1263 1264 1265 1266 1267
	* 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.

1268 1269 1270 1271
	* 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
1272 1273 1274 1275 1276 1277 1278 1279 1280
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.

1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299
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.

1300 1301 1302 1303 1304 1305
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
1306 1307 1308 1309 1310 1311 1312
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.

1313 1314 1315 1316 1317 1318
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
1319 1320 1321 1322 1323 1324 1325 1326 1327
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
1328 1329
2000-11-11  Kenichi Handa  <handa@etl.go.jp>

1330 1331 1332 1333 1334 1335
	* 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
1336 1337 1338 1339
	* 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
1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360
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
1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371
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
1372 1373 1374 1375
2000-11-09  Ken Raeburn  <raeburn@gnu.org>

	* lisp.h (Flooking_at): Declare.

1376 1377
2000-11-09  Gerd Moellmann  <gerd@gnu.org>

Gerd Moellmann's avatar
Gerd Moellmann committed
1378 1379
	* dired.c (directory_files_internal): Fix a braino.
	
1380 1381 1382
	* dired.c (directory_files_internal): Add missing GCPRO's.
	Some cleanup.

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

Gerd Moellmann's avatar
Gerd Moellmann committed
1385 1386 1387 1388 1389 1390 1391 1392 1393 1394
	* 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
1395 1396 1397 1398 1399
	* 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
1400 1401 1402
2000-11-08  Kenichi Handa  <handa@etl.go.jp>

	* xterm.c (VCENTER_BASELINE_OFFSET): Fix previous change.  If the