ChangeLog 625 KB
Newer Older
1 2 3 4 5 6 7 8 9
2005-02-14  Kenichi Handa  <handa@m17n.org>

	* coding.c (encode_coding_string): Always return a unibyte string.
	If NOCOPY is nonzero and there's no need of encoding, make STR
	unibyte directly.

	* xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
	multibyte string, signal an error instead of aborting.

10 11 12 13
2005-02-12  Dan Nicolaescu  <dann@ics.uci.edu>

	* keyboard.c: If HAVE_FCNTL_H include fcntl.h.

Kim F. Storm's avatar
Kim F. Storm committed
14 15 16 17
2005-02-12  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (expose_window): Don't fix overlaps for mode lines.

Kim F. Storm's avatar
Kim F. Storm committed
18 19 20 21 22
2005-02-10  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
	if it moves outside window or it doesn't display text.

Kim F. Storm's avatar
Kim F. Storm committed
23 24 25 26 27
2005-02-09  Kim F. Storm  <storm@cua.dk>

	* undo.c (Fprimitive_undo): Check that undo function does not
	switch buffer.

28 29 30 31 32 33 34
2005-02-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xselect.c (selection_data_to_lisp_data): For the special case
	type == XA_ATOM, data contains array of int, not array of Atom.
	(x_property_data_to_lisp, selection_data_to_lisp_data): Comment
	update: data must be array of int for format == 32.

35 36 37 38
2005-02-08  Stefan Monnier  <monnier@iro.umontreal.ca>

	* undo.c (Fprimitive_undo): Check veracity of delta,start,end.

39 40
2005-02-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

41 42 43
	* xfns.c (Fx_change_window_property): Use long array when format is 32.
	(Fx_window_property): If format is 32 and long is bigger than 32 bits,
	convert long array returned from XGetWindowProperty to an int array.
44 45
	(x_set_tool_bar_lines): Check that width and height is greater than
	zero before clearing area.
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60

	* xselect.c (x_reply_selection_request): Pass long array to
	XChangeProperty so that 64 bit longs are handeled correctly.
	(x_get_window_property): If format is 32 and long is bigger than 32
	bits convert data from XGetWindowProperty from long array to int array.
	(lisp_data_to_selection_data): When the input is a vector and the
	format is 32, allocate a long array even if long is bigger than 32 bits.
	(x_fill_property_data): Use char, short and long as the man page
	for XChangeProperty specifies.  This way the data returned is OK for
	both 32 and 64 bit machines.
	(x_handle_dnd_message): Calculate size correctly even for 64 bit
	machines.
	(Fx_send_client_event): Undo change from 2005-02-05,
	x_fill_property_data now handles that case.

61
	* xfns.c (Fx_backspace_delete_keys_p): Add comment about the
62 63
	reason for the approach in the code.

Kim F. Storm's avatar
Kim F. Storm committed
64 65 66 67
2005-02-07  Kim F. Storm  <storm@cua.dk>

	* undo.c (Fprimitive_undo): Record max one dummmy apply element.

68 69 70 71 72 73
2005-02-06  Richard M. Stallman  <rms@gnu.org>

	* eval.c (Frun_hook_with_args)
	(Frun_hook_with_args_until_success)
	(Frun_hook_with_args_until_failure): Doc fixes.

74 75
2005-02-05  Andreas Schwab  <schwab@suse.de>

76
	* sysdep.c (sys_subshell): Properly terminate execlp argument list.
77

78 79 80 81 82
2005-02-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
	the longs in a XClientMessageEvent correctly when long is 64 bits.

Eli Zaretskii's avatar
Eli Zaretskii committed
83 84 85 86 87
2005-02-05  Eli Zaretskii  <eliz@gnu.org>

	* xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
	instead of HAVE_X_WINDOWS, for non-X windowed sessions.

88 89 90 91 92 93 94 95 96 97 98 99
2005-02-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xmenu.c (menubar_selection_callback): Force out GTK buffered
	events so the menu event comes after them.  This is to prevent sit-for
	from exiting on buffered events directly after a menu selection,
	lisp code for Help => About Emacs uses sit-for.

	* gtkutil.c (create_menus): Connect selection-done event instead of
	the deactivate event to deactivate_cb.  This will make the last
	leave event come before the call to deactivate_cb, so the leave
	event does not make sit-for exit after a menu selection.

Kim F. Storm's avatar
Kim F. Storm committed
100 101 102 103 104 105 106 107 108
2005-02-03  Kim F. Storm  <storm@cua.dk>

	* dispnew.c (build_frame_matrix_from_leaf_window)
	 [!GLYPH_DEBUG]: Fix xassert.

	* xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.

	* xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.

109 110 111 112 113 114 115
2005-02-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
	the compiling OS version.

	* macfns.c (x_create_tip_frame): Likewise.

116
	* macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
117

118 119 120 121 122 123 124 125
2005-02-03  Richard M. Stallman  <rms@gnu.org>

	* xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.

	* xdisp.c (echo_area_display): Clear echo_message_buffer.

	* buffer.c (Fbury_buffer): Doc fix.

126 127
2005-02-02  Steven Tamm  <steventamm@mac.com>

128 129
	* macfns.c (unwind_create_frame): Fixing compile error due to
	xassert being uncondition, but predicate is.
130
	* dispnew.c (update_window): Fixing compile error due to
131
	xassert being uncondition, but predicate is.
132

133 134 135 136
2005-02-02  Miles Bader  <miles@gnu.org>

	* dispextern.h (xassert): Enable unconditionally.

Kim F. Storm's avatar
Kim F. Storm committed
137 138 139 140
2005-02-02  Kim F. Storm  <storm@cua.dk>

	* undo.c (Fprimitive_undo): Fix dummy apply undo entry.

Kenichi Handa's avatar
Kenichi Handa committed
141 142 143 144 145 146 147 148 149 150
2005-02-02  Kenichi Handa  <handa@m17n.org>

	* casefiddle.c (casify_object): Enable changing characters of
	different byte length.
	(casify_region): Fix loop condition, args to replace_range_2, and
	update opoint_byte.

	* insdel.c (replace_range_2): Fix bugs in adjusting markers and
	point.

Kim F. Storm's avatar
Kim F. Storm committed
151 152 153 154 155
2005-02-01  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (back_to_previous_visible_line_start): Reset iterator
	stack before calling handle_display_prop.

Kim F. Storm's avatar
Kim F. Storm committed
156 157 158 159 160 161 162 163 164
2005-01-31  Kim F. Storm  <storm@cua.dk>

	* undo.c (Qapply): New lisp var.
	(syms_of_undo): Intern and staticpro it.
	(Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
	(apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).

	* buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.

165 166
2005-01-30  Jesper Harder  <harder@phys.au.dk>

Kim F. Storm's avatar
Kim F. Storm committed
167 168
	* macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
	<mac-emulate-three-button-mouse>: Fix docstring indentation.
169

Luc Teirlinck's avatar
Luc Teirlinck committed
170 171 172
2005-01-29  Luc Teirlinck  <teirllm@auburn.edu>

	* undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
173
	Increase value to 3 Meg.
Luc Teirlinck's avatar
Luc Teirlinck committed
174

175 176 177 178 179
2005-01-29  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
	button events are not received otherwise.

180 181 182 183 184 185
2005-01-29  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.

	* undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.

Stefan Monnier's avatar
Stefan Monnier committed
186 187 188 189
2005-01-28  Stefan Monnier  <monnier@iro.umontreal.ca>

	* keymap.c (access_keymap): YAILOM.

Kim F. Storm's avatar
Kim F. Storm committed
190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205
2005-01-27  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (get_phys_cursor_geometry): New function to calculate
	phys cursor position and size for hollow cursor.  Position is
	aligned with get_glyph_string_clip_rect and ensures that a hollow
	cursor is shown, even when the actual glyph is not visible.

	* dispextern.h (get_phys_cursor_geometry): Add prototype.

	* xterm.c (x_clip_to_row): Ensure y >= 0.
	(x_draw_hollow_cursor): Use get_phys_cursor_geometry.

	* w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.

	* macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.

206 207 208 209
2005-01-27  Stefan Monnier  <monnier@iro.umontreal.ca>

	* xterm.c (x_error_quitter): Add a prototype.  Make it static again.

Kim F. Storm's avatar
Kim F. Storm committed
210 211 212 213 214 215
2005-01-27  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (get_glyph_string_clip_rect): Always show a cursor
	glyph, even when row is only partially visible and actual cursor
	position is not visible.

216 217 218 219 220
2005-01-24  Richard M. Stallman  <rms@gnu.org>

	* xterm.c (x_error_quitter): No longer static, and moved after
	x_error_handler.

Kim F. Storm's avatar
Kim F. Storm committed
221 222 223 224 225
2005-01-24  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (move_it_by_lines): If we move forward after going too
	far back, cancel move if end position is same as start position.

226 227 228 229
2005-01-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* dispextern.h (struct glyph_string): New members clip_head and
	clip_tail.
Kim F. Storm's avatar
Kim F. Storm committed
230

231 232 233 234 235 236 237
	* xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
	region to the area between clip_head and clip_tail.
	(draw_glyphs): Record the area that need to be actually redrawn to
	the new variables clip_head and clip_tail when there are
	overhangs.  Set values of these variables to the corresponding
	members in struct glyph_string.  Refine x coordinates for
	notice_overwritten_cursor using clip_head and clip_tail.
Kim F. Storm's avatar
Kim F. Storm committed
238

239 240 241 242 243
	* macgui.h (STORE_XCHARSETSTRUCT): New macro.

	* macterm.c (mac_compute_glyph_string_overhangs): Implement with
	QDTextBounds.
	(x_draw_glyph_string): Don't fill the background of the successor
Kim F. Storm's avatar
Kim F. Storm committed
244
	of a glyph with a right overhang if the successor will draw a cursor.
245
	(XLoadQueryFont): Obtain font metrics using QDTextBounds.
Kim F. Storm's avatar
Kim F. Storm committed
246
	(x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
247

Kim F. Storm's avatar
Kim F. Storm committed
248 249
2005-01-24  Kim F. Storm  <storm@cua.dk>

250 251 252 253 254
	* window.c (window_scroll_pixel_based): Fix scrolling in the wrong
	direction if window height was smaller than next-screen-context-lines.
	Now always scroll at least one line in the requested direction.
	Ensure that we actually do scroll backwards when requested to do so.

Kim F. Storm's avatar
Kim F. Storm committed
255 256 257
	* xdisp.c (redisplay_window): Only try to make cursor line fully
	visible once (to avoid redisplay loop).

Kim F. Storm's avatar
Kim F. Storm committed
258 259
2005-01-23  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
260
	* window.c (Fpos_visible_in_window_p): Simplify return value for
Kim F. Storm's avatar
Kim F. Storm committed
261
	partially visible rows.
Kim F. Storm's avatar
Kim F. Storm committed
262 263
	(window_scroll_pixel_based): Adapt to that change.

Kim F. Storm's avatar
Kim F. Storm committed
264 265 266
	* window.c (window_scroll_pixel_based): Force moving to next line
	if scrolling doesn't move start point, e.g. if looking at tall image.

Kim F. Storm's avatar
Kim F. Storm committed
267
	* xdisp.c (pos_visible_p): Return 0 if non-interactive.
Kim F. Storm's avatar
Kim F. Storm committed
268 269
	Clear last_height before calling line_bottom_y to get real height.
	Fix calculation of y.
Kim F. Storm's avatar
Kim F. Storm committed
270

271 272 273
2005-01-22  Steven Tamm  <steventamm@mac.com>

	* s/darwin.h: Removed PTY_ITERATION from here.
274
	(DARWIN): Define.
275 276 277 278 279
	* process.c (init_process): Default process-connection-type to
	nil on darwin 6 or less, t if it is 7 or higher.  This way the
	broken pty behavior is still allowed on darwin 6 for interactive
	processes for people that know what they are doing.

Kim F. Storm's avatar
Kim F. Storm committed
280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295
2005-01-22  Kim F. Storm  <storm@cua.dk>

	* window.c (auto_window_vscroll_p): New boolean.
	(syms_of_window): DEFVAR_BOOL it.
	(Fpos_visible_in_window_p): Extend return value to include RTOP
	and RBOT values if FULLY is nil.
	(window_scroll_pixel_based): Adjust vscroll for partially visible
	rows if auto_window_vscroll_p is set.
	(Fset_window_vscroll): Do nothing if vscroll is not modified.

	* xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
	to return number of partially invisible pixels at top and bottom
	of the dislay row at POS.

	* lisp.h (pos_visible_p): Fix prototype.

296 297 298 299
2005-01-21  Richard M. Stallman  <rms@gnu.org>

	* fileio.c (Fcopy_file): Doc fix.

300 301 302 303 304 305
2005-01-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
	(xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
	start of function for older compilers.

306 307 308 309 310 311 312 313 314
2005-01-20  Richard M. Stallman  <rms@gnu.org>

	* editfns.c (Fmessage): If arg is "", return "" (as before).

	* keymap.c (access_keymap): Protect from bad value of meta_prefix_char.

	* .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
	variable.

315 316
2005-01-20  Steven Tamm  <steventamm@mac.com>

317
	* editfns.c (Voperating_system_release): Add.
318 319
	(init_editfns): Assign new variable operating-system-release
	based on call to uname if available.
320
	(get_operating_system_release): Add function to
Kim F. Storm's avatar
Kim F. Storm committed
321
	allow c-level access to operating system release.
322 323 324

	* config.h: Regenerated.

325 326
	* s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
	(MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
327 328
	using ptys as '7'.

Kim F. Storm's avatar
Kim F. Storm committed
329 330
2005-01-20  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
331 332
	* alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.

Kim F. Storm's avatar
Kim F. Storm committed
333 334 335 336 337 338 339
	* xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
	Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.

	* macterm.c (x_draw_glyph_string_box): Likewise.

	* w32term.c (x_draw_glyph_string_box): Likewise.

Kim F. Storm's avatar
Kim F. Storm committed
340 341
	* indent.c (Fvertical_motion): Temporarily disable selective display.

Kim F. Storm's avatar
Kim F. Storm committed
342 343
2005-01-19  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
344 345 346
	* xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
	image property.

Kim F. Storm's avatar
Kim F. Storm committed
347 348
	* fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.

Kim F. Storm's avatar
Kim F. Storm committed
349 350 351 352 353
2005-01-18  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (fast_find_position): Backtrack to find first row if
	charpos is inside a display overlay that spans multiple lines.

Kenichi Handa's avatar
Kenichi Handa committed
354 355 356 357 358
2005-01-18  Kenichi Handa  <handa@m17n.org>

	* coding.c (decode_coding_iso2022): Translate invalid codes if
	translation-table is specified.

Kim F. Storm's avatar
Kim F. Storm committed
359 360 361 362 363 364 365
2005-01-18  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
	change.  If handle_display_prop indicates newline is replaced by
	image or text, move back to start of relevant overlay or interval
	and continue scan from there.  Simplify.

Kim F. Storm's avatar
Kim F. Storm committed
366 367
2005-01-17  Kim F. Storm  <storm@cua.dk>

368 369
	* dispnew.c (mode_line_string, marginal_area_string):
	Fix off-by-one error in search for glyph.
Kim F. Storm's avatar
Kim F. Storm committed
370

371 372 373 374
2005-01-16  Kim F. Storm  <storm@cua.dk>

	* macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.

375 376
2005-01-16  Steven Tamm  <steventamm@mac.com>

377
	* macterm.c (mac_to_x_fontname): Remove spurious argument.
378

379 380 381 382
2005-01-16  Andreas Schwab  <schwab@suse.de>

	* macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.

383 384 385 386 387
2005-01-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
	fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.

388 389 390
2005-01-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
391 392
	(READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
	New flags for readable_events.
393
	(get_filtered_input_pending, readable_filtered_events): Remove.
394 395 396 397 398 399 400 401 402
	(tracking_off): Call readable_events and get_input_pending with
	flag READABLE_EVENTS_DO_TIMERS_NOW.
	(readable_events): Move code from old readable_filtered_events here,
	but check new READABLE_EVENTS_* in argument flags instead of previous
	two boolean arguments do_timers_now and filter_events.
	If we are doing mouse tracking and the mouse moved, return only if
	READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
	(swallow_events): Call get_input_pending with flag
	READABLE_EVENTS_DO_TIMERS_NOW.
403
	(get_input_pending): Move code from old get_filtered_input_pending
404 405 406 407 408 409 410 411 412 413 414
	here.  Replace boolean arguments do_timers_now, filter_events with
	flags, and pass flags to readable_events.  Document new
	READABLE_EVENTS_* flags.
	(detect_input_pending_ignore_squeezables): New function.
	(detect_input_pending_run_timers): Call get_input_pending with flag
	READABLE_EVENTS_DO_TIMERS_NOW.
	(Finput_pending_p): Call get_input_pending with flags
	READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.

	* dispnew.c (update_window, update_frame_1): Replace calls to
	detect_input_pending with detect_input_pending_ignore_squeezables
415
	so that redisplay is not paused if the event queue contains only
416 417 418 419
	mouse movements.

	* lisp.h: Declare detect_input_pending_ignore_squeezables.

420 421
2005-01-15  Steven Tamm  <steventamm@mac.com>

422 423 424
	* macterm.c (Vmac_use_core_graphics): Declare variable for
	mac-allow-anti-aliasing.
	(syms_of_macterm): DEFVAR_LISP and initialize it.
425
	(mac_draw_string_common): Use core graphics text rendering if
426
	mac-allow-anti-aliasing is enabled.
427

428 429 430
	* macfns.c (Fx_file_dialog): Save As dialog includes only the
	file name in the text box.

431 432
2005-01-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

433 434
	* macfns.c (x_set_foreground_color, x_set_background_color):
	Sync with xfns.c.
435 436 437 438
	(mac_window, x_create_tip_frame): Use XSetWindowBackground.
	* macterm.c (XSetBackground, XSetWindowBackground): New functions.
	* macterm.h (XSetBackground, XSetWindowBackground): Add externs.

Kim F. Storm's avatar
Kim F. Storm committed
439 440 441 442
2005-01-14  Kim F. Storm  <storm@cua.dk>

	* keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.

443 444 445 446 447 448 449
2005-01-13  Richard M. Stallman  <rms@gnu.org>

	* keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
	if Voverriding_terminal_local_map is non-nil.

	* keyboard.c (syms_of_keyboard): Doc fix.

Kim F. Storm's avatar
Kim F. Storm committed
450 451 452 453 454
2005-01-13  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (Fformat_mode_line): Fix last change.  Remove NO_PROPS arg
	(specify 0 for FACE instead). Reorder arg list.  Doc fix.

455 456 457 458 459 460 461
2005-01-12  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (Fformat_mode_line): New arg FACE specifies a default
	face property for characters that don't specify one.

	* fns.c (Frequire): Record in load-history unconditionally.

Kim F. Storm's avatar
Kim F. Storm committed
462 463 464 465 466 467 468 469 470 471 472 473
2005-01-10  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (merge_faces): Rename from merge_into_realized_face.

	* xfaces.c (merge_faces): Rename from merge_into_realized_face.
	Callers changed.
	Add support to merge with lisp face id too (if face_name is t).

	* xdisp.c (get_next_display_element, next_element_from_display_vector):
	Don't lookup lface_id from display table glyphs here; instead use
	merge_faces to merge the lisp face id into current face.

Kim F. Storm's avatar
Kim F. Storm committed
474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490
2005-01-09  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (struct it): New member dpvec_face_id.
	(merge_into_realized_face): Add prototype.

	* xfaces.c (merge_into_realized_face): New function.  Used to
	merge escape-glyph face or face from display table into current	face.

	* xdisp.c (Vshow_nonbreak_escape): New lisp var.
	(syms_of_xdisp): DEFVAR_LISP it.
	(escape_glyph_face): Remove var.
	(redisplay_window): Don't initialize it.
	(setup_for_ellipsis, get_next_display_element):
	Set it->dpvec_face_id to -1.
	(get_next_display_element): Test Vshow_nonbreak_escape.
	Do not setup escape_glyph_face.
	Properly merge escape-glyph face or face from display table with
491 492
	current face for escape and control characters.
	Set it->dpvec_face_id to relevant face id instead of adding it to each
Kim F. Storm's avatar
Kim F. Storm committed
493 494 495 496
	element of display vector.
	(next_element_from_display_vector): If it->dpvec_face_id is set,
	use that instead of lface_id from glyph itself.

497 498 499 500 501 502 503 504 505 506 507 508
2005-01-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.h (struct x_output): New member, toolbar_detached.

	* gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
	38.
	(xg_tool_bar_detach_callback): Set toolbar_detached to 1.
	(xg_tool_bar_attach_callback): Set toolbar_detached to 0.
	(xg_create_tool_bar): Initialize toolbar_detached.
	(update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
	toolbar_detached is zero.

509 510
2005-01-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

511 512 513
	* xmenu.c (create_and_show_popup_menu): Pass zero as button to
	gtk_menu_popup if not for_click, so callbacks for the menu are called.

514 515
	* gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
	(xg_tool_bar_callback, xg_tool_bar_help_callback)
516
	(update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
517 518

	* xselect.c (x_get_foreign_selection, x_fill_property_data)
Kim F. Storm's avatar
Kim F. Storm committed
519
	(Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
520 521
	XFLOAT_DATA to get extract number from Lisp object.

Kim F. Storm's avatar
Kim F. Storm committed
522 523 524 525 526
2005-01-07  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
	Set stop_charpos to current charpos instead of 0.

527 528 529 530
2005-01-06  Nick Roberts  <nickrob@snap.net.nz>

	* xdisp.c (Fformat_mode_line): First arg now required.

531 532 533 534 535
2005-01-06  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macterm.c (XLoadQueryFont): Correctly handle 0 size
	font widths that are returned from some Japanese fonts.

Kim F. Storm's avatar
Kim F. Storm committed
536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552
2005-01-06  Kim F. Storm  <storm@cua.dk>

	* fringe.c (fringe_faces): Change to Lisp_Object pointer.
	(draw_fringe_bitmap_1): Lookup user defined fringe faces here.
	(destroy_fringe_bitmap): Set fringe_faces element to nil.
	(Fdefine_fringe_bitmap, init_fringe): Change allocation of
	fringe_faces array and init elements to nil.
	(Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
	non-persistent face id.
	(mark_fringe_data): New function for GC.

	* alloc.c (mark_fringe_data): Declare extern.
	(Fgarbage_collect): Call mark_fringe_data.

	* alloc.c (overrun_check_free): Invalidate freed memory if
	XMALLOC_CLEAR_FREE_MEMORY is defined.

Steven Tamm's avatar
Steven Tamm committed
553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573
2005-01-05  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macfns.c: Include sys/param.h.
	[TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
	and function.
	[TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
	of filename string.  Set event callback function when creating
	dialog boxes.  Add code conversions for filenames.  Don't dispose
	apple event descriptor record if failed to create it.

	* macterm.c: Include sys/param.h.
	[USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
	kEventWindowUpdate.
	(install_window_handler) [USE_CARBON_EVENTS]: Register it.
	(do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
	of FSSpec from apple event descriptor record.
	(do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
	size of filename string.
	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
	[TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
	file dialog is in action.
574 575
	[TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
	Reject only when there are no filename items.  Set background color
Steven Tamm's avatar
Steven Tamm committed
576 577 578
	before (un)highlighting the window below the dragged items.
	(XTread_socket) [!USE_CARBON_EVENTS]: Don't call do_window_update.

Kenichi Handa's avatar
Kenichi Handa committed
579 580 581 582
2005-01-05  Romain Francoise  <romain@orebokech.com>

	* term.c (encode_terminal_code): Fix buffer size computation.

583 584 585 586
2005-01-04  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (Fformat_mode_line): Doc fix.

587 588 589 590 591 592
2005-01-04  Stefan Monnier  <monnier@iro.umontreal.ca>

	* alloc.c (refill_memory_reserve): Move.
	(emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
	(reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.

593 594 595 596 597
2005-01-03  Richard M. Stallman  <rms@gnu.org>

	* window.c (window_scroll_pixel_based): Don't correct preserve_y
	for CURRENT_HEADER_LINE_HEIGHT when moving backwards.

Jason Rumney's avatar
Jason Rumney committed
598 599 600 601 602 603 604 605 606 607 608 609 610
2005-01-03  Jason Rumney  <jasonr@gnu.org>

	* w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
	fontp->space_width to FONT_WIDTH so they are valid.

	* w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
	average width. Set fontp->average_width and fontp->space_width to
	their appropriate values.

	* w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
	fontp->average_width, not FONT_WIDTH.  Set FRAME_SPACE_WIDTH to
	fontp->space_width.

611 612 613 614 615 616 617
2005-01-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
	(x_font_min_bounds, XLoadQueryFont): Use the correct font width
	metrics for max and min bounds.
	(x_load_font): Correctly calculate average font width metrics.

618 619 620 621
2005-01-02  Richard M. Stallman  <rms@gnu.org>

	* alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.

622 623 624 625
2004-12-31  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.c (handle_one_xevent): Clear area in expose event for GTK.

626 627
2004-12-31  Richard M. Stallman  <rms@gnu.org>

628 629 630 631 632 633 634 635 636 637 638 639 640
	* xdisp.c (setup_for_ellipsis, get_next_display_element):
	Set it->ellipsis_p to 1 or 0.
	(display_line): Record whether row ends in mid-ellipsis.
	(set_cursor_from_row): If ends in ellipsis. find start of it.
	(cursor_row_p): If PT's at the end of the ellipsis the row
	ends within, don't display cursor on this row.

	* dispextern.h (struct it): New element ellipsis_p.
	(struct glyph_row): New element ends_in_ellipsis_p.

	* xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
	position if we're reading from something other than the buffer.

641 642 643 644
	* window.c (window_scroll_pixel_based): Only look at
	Vscroll_preserve_screen_position if the old PT can't be kept.
	(syms_of_window) <scroll-preserve-screen-position>: Doc fix.

645 646 647 648 649 650 651 652
2004-12-30  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (get_line_height_property): New function extracted from
	original calc_line_height_property.
	(calc_line_height_property): Rework.  Handle t and (nil . ratio).
	(x_produce_glyphs): Use them to handle line-height and
	line-spacing according to new height spec.
	(Qtotal): Remove.
Kim F. Storm's avatar
Kim F. Storm committed
653
	(syms_of_xdisp): Remove intern and staticpro for Qtotal.
654

Kenichi Handa's avatar
Kenichi Handa committed
655 656 657 658
2004-12-30  Kenichi Handa  <handa@m17n.org>

	* fileio.c (Finsert_file_contents): Don't use
	current_buffer->buffer_file_coding_system even if REPLACE is
659
	non-nil.  Call Qafter_insert_file_set_coding with the second arg VISIT.
Kenichi Handa's avatar
Kenichi Handa committed
660 661 662 663 664 665 666 667 668 669 670

	* fontset.h (struct font_info): New members space_width and
	average_width.

	* frame.h (struct frame): New member space_width.
	(FRAME_SPACE_WIDTH): New macro.

	* xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.

	* xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
	fontp->average_width, not FONT_WIDTH.  Set FRAME_SPACE_WIDTH to
Jason Rumney's avatar
Jason Rumney committed
671
	fontp->space_width.
672
	(x_load_font): Calculate fontp->space_width and fontp->average_width.
Kenichi Handa's avatar
Kenichi Handa committed
673 674 675 676 677
	(x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.

	* xdisp.c (x_produce_glyphs): Calculate tab width by
	FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.

678 679 680
2004-12-29  Sanghyuk Suh  <han9kin@mac.com>

	* macterm.c (SelectionRange): Add Xcode position apple event struct.
681
	(do_ae_open_documents): Handle Xcode-style file position open events.
682

683 684 685 686
2004-12-29  Luc Teirlinck  <teirllm@auburn.edu>

	* buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.

687 688 689 690
2004-12-29  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.

691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706
2004-12-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macfns.c (install_window_handler): Modify extern to return OSErr
	value.
	(mac_window): Handle return value of install_window_handler.

	* macterm.c (reflect_byte): Remove function.
	(mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
	Lookup table instead.
	(mac_do_font_lists): Simplify calculation of the longest
	nonspecial string.
	(init_mac_drag_n_drop): Remove function	and declaration.
	(mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
	init_mac_drag_n_drop.
	(mac_do_track_drag): New function and declaration.
	(install_window_handler): Return OSErr value.
707 708
	(install_window_handler) [TARGET_API_MAC_CARBON]:
	Register handlers for tracking/receiving drag-and-drop items.
709
	(do_ae_open_documents): Generate unibyte strings for filenames.
Stefan Monnier's avatar
Stefan Monnier committed
710 711 712 713
<<<<<<< ChangeLog
	(mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
	Reject only non-filename items.  Set event modifiers and return value.
=======
714 715
	(mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
	Reject only non-filename items.  Set event modifiers, and return value.
Stefan Monnier's avatar
Stefan Monnier committed
716
>>>>>>> 1.4187
717

718 719 720 721
2004-12-28  Dan Nicolaescu  <dann@ics.uci.edu>

	* coding.c (decode_coding): Fix previous change.

722 723 724 725 726
2004-12-28  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (back_to_previous_visible_line_start):
	Don't call handle_display_prop.

727 728 729 730 731 732 733 734
2004-12-28  Dan Nicolaescu  <dann@ics.uci.edu>

	* coding.c (decode_coding_XXX, decode_composition_emacs_mule)
	(decode_coding_emacs_mule, encode_coding_emacs_mule)
	(decode_coding_iso2022, encode_designation_at_bol)
	(encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
	(decode_coding): Constify arguments and local vars.

735 736 737 738
2004-12-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xmenu.c (popup_get_selection): Only pop down dialogs
	on C-g and Escape.
739
	(popup_get_selection): Remove parameter down_on_keypress.
740 741
	(create_and_show_popup_menu, create_and_show_dialog):
	Remove parameter down_on_keypress to popup_get_selection.
742

743 744 745 746
2004-12-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* dispextern.h: Change HAVE_CARBON to MAC_OS.
	(struct glyph_string): Likewise.
Kim F. Storm's avatar
Kim F. Storm committed
747

748 749
	* emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
	mac_initialize.
Kim F. Storm's avatar
Kim F. Storm committed
750

751 752
	* fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
	Change TARGET_API_MAC_CARBON to HAVE_CARBON.
Kim F. Storm's avatar
Kim F. Storm committed
753

754
	* fns.c (vector): Change MAC_OSX to MAC_OS.
Kim F. Storm's avatar
Kim F. Storm committed
755

756 757
	* frame.c (x_set_frame_parameters, x_report_frame_params)
	(x_set_fullscreen): Remove #ifndef HAVE_CARBON.
758 759
	(x_set_border_width, Vdefault_frame_scroll_bars):
	Change HAVE_CARBON to MAC_OS.
Kim F. Storm's avatar
Kim F. Storm committed
760

761 762 763
	* image.c [MAC_OS]: Include sys/stat.h.
	[MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
	QuickTimeComponents.h.
Kim F. Storm's avatar
Kim F. Storm committed
764

765 766
	* mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
	[!MAC_OSX] (select): Use mac_wait_next_event.
767
	[!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
768 769 770 771 772 773 774 775 776 777 778 779 780 781
	[!MAC_OSX] (select, run_mac_command): Change `#ifdef
	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
	(mac_clear_font_name_table): Add extern.
	(Fmac_clear_font_name_table): New defun.
	(syms_of_mac): Defsubr it.
	[MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
	[MAC_OSX] (select_and_poll_event): New function.
	[MAC_OSX] (sys_select): Use it.
	[MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
	[MAC_OSX && SELECT_USE_CFSOCKET]
	(SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
	[MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
	RunLoop for simultaneously monitoring two kinds of inputs, window
	events and process outputs, without periodically polling.
Kim F. Storm's avatar
Kim F. Storm committed
782

783 784 785
	* macfns.c (mac_initialized): Remove extern.
	(stricmp): Put in #if 0.  All callers changed to use xstricmp in
	xfaces.c.
786 787
	(strnicmp): Decrement `n' at the end of each loop, not the beginning.
	(check_mac): Use the term "Mac native windows" instead of "Mac OS".
788 789 790 791 792
	(check_x_display_info, x_display_info_for_name): Sync with xfns.c.
	(mac_get_rdb_resource): New function (from w32reg.c).
	(x_get_string_resource): Use it.
	(install_window_handler): Add extern.
	(mac_window): New function.
793 794
	(Fx_create_frame): Use it instead of make_mac_frame.
	Set parameter for Qfullscreen.  Call x_wm_set_size_hint.
795 796
	(Fx_open_connection, Fx_close_connection): New defuns.
	(syms_of_macfns): Defsubr them.
797 798
	(x_create_tip_frame) [TARGET_API_MAC_CARBON]:
	Add kWindowNoUpdatesAttribute to the window attribute.
799 800 801 802 803 804 805
	(x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
	(x_create_tip_frame): Don't call ShowWindow.
	(Fx_show_tip): Call ShowWindow.
	(Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
	TARGET_API_MAC_CARBON'.
	(mac_frame_parm_handlers): Set handlers for Qfullscreen.
	(syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
Kim F. Storm's avatar
Kim F. Storm committed
806

807
	* macgui.h [!MAC_OSX]: Don't include Controls.h.  Include Windows.h.
808 809 810
	(Window): Typedef to WindowPtr and move outside `#if
	TARGET_API_MAC_CARBON'.
	(XSizeHints): New struct.
Kim F. Storm's avatar
Kim F. Storm committed
811

812 813 814 815 816 817 818 819 820 821 822 823 824 825
	* macterm.c (x_update_begin, x_update_end)
	[TARGET_API_MAC_CARBON]: Disable screen updates during update of a
	frame.
	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
	[MAC_OS8]: Use XDrawImageString/XDrawImageString16.
	(construct_mouse_click): Put in #if 0.
	(x_check_fullscreen, x_check_fullscreen_move): Remove decls.
	(x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
	TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
	(activate_scroll_bars, deactivate_scroll_bars)
	[!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
	(x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
	if the position is neither user-specified nor program-specified.
	(x_free_frame_resources): Free size_hints.
Stefan Monnier's avatar
Stefan Monnier committed
826 827 828 829
<<<<<<< ChangeLog
	(x_wm_set_size_hint): Allocate size_hints if needed.
	Set size_hints.
=======
830
	(x_wm_set_size_hint): Allocate size_hints if needed.  Set size_hints.
Stefan Monnier's avatar
Stefan Monnier committed
831
>>>>>>> 1.4187
832 833 834 835 836 837 838 839 840 841 842 843 844
	(mac_clear_font_name_table): New function.
	(mac_do_list_fonts): Initialize font_name_table if needed.
	(x_list_fonts): Don't initialize font_name_table.  Add BLOCK_INPUT
	around mac_do_list_fonts.
	(mac_unload_font): New function.
	(x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
	(init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
	and definitions with #if TARGET_API_MAC_CARBON.
	[USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
	(install_window_handler): Add decl.
	(do_window_update): Add BeginUpdate/EndUpdate for the tooltip
	window.  Use UpdateControls.  Get the rectangle that should be
	updated and restrict the target of expose_frame to it.
845
	(do_grow_window): Set minimum height/width according to size_hints.
846 847 848 849 850 851 852 853 854 855 856
	(do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
	(do_zoom_window): Don't use x_set_window_size.
	[USE_CARBON_EVENTS] (mac_handle_window_event): New function.
	(install_window_handler): New function.
	[!USE_CARBON_EVENTS] (mouse_region): New variable.
	[!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
	(XTread_socket) [USE_CARBON_EVENTS]: Move call to
	GetEventDispatcherTarget inside BLOCK_INPUT.
	(XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
	Update mouse_region when mouse is moved.
	(make_mac_frame): Remove.
857 858 859 860
	(make_mac_terminal_frame): Put in #ifdef MAC_OS8.
	Initialize mouse pointer shapes.  Change values of f->left_pos and
	f->top_pos.  Don't use make_mac_frame.  Use NewCWindow.
	Don't call ShowWindow.
861 862 863 864 865 866 867 868 869
	(mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
	Vinvocation_name and Vsystem_name.
	(mac_make_rdb): New function (from w32term.c).
	(mac_term_init): Use it.  Add BLOCK_INPUT.  Error if display has
	already been opened.  Don't pass argument to
	mac_initialize_display_info.  Don't set dpyinfo->height/width.
	Add entries to x_display_list and x_display_name_list.
	(x_delete_display): New function.
	(mac_initialize): Don't call mac_initialize_display_info.
Kim F. Storm's avatar
Kim F. Storm committed
870 871
	(syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.

872 873 874 875
	* macterm.h (check_mac): Add extern.
	(struct mac_output): New member size_hints.
	(FRAME_SIZE_HINTS): New macro.
	(mac_unload_font): Add extern.
Kim F. Storm's avatar
Kim F. Storm committed
876

877
	* xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
Kim F. Storm's avatar
Kim F. Storm committed
878

879 880
	* xfaces.c (clear_font_table) [MAC_OS]: call mac_unload_font.

Richard M. Stallman's avatar
Richard M. Stallman committed
881 882
2004-12-27  Richard M. Stallman  <rms@gnu.org>

Stefan Monnier's avatar
Stefan Monnier committed
883 884 885
<<<<<<< ChangeLog
	* buffer.c (Fbuffer_disable_undo): Delete (moved to simple.el).
=======
886
	* buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
Stefan Monnier's avatar
Stefan Monnier committed
887
>>>>>>> 1.4187
888 889 890 891 892
	(syms_of_buffer): Don't defsubr it.

	* process.c (list_processes_1): Set undo_list instead
	of calling Fbuffer_disable_undo.

893
	* xdisp.c (single_display_spec_string_p): Rename from
Richard M. Stallman's avatar
Richard M. Stallman committed
894
	single_display_prop_string_p.
895
	(single_display_spec_intangible_p): Rename from
Richard M. Stallman's avatar
Richard M. Stallman committed
896
	single_display_prop_intangible_p.
897
	(handle_single_display_spec): Rename from handle_single_display_prop.
Richard M. Stallman's avatar
Richard M. Stallman committed
898 899
	Rewritten to be easier to understand.

Kim F. Storm's avatar
Kim F. Storm committed
900
	Change in load-history format.  Functions now get (defun . NAME),
Richard M. Stallman's avatar
Richard M. Stallman committed
901 902 903 904 905 906 907 908 909 910 911
	and variables get just NAME.

	* data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.

	* eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
	(Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
	(Qdefvar): Var deleted.
	(syms_of_eval): Don't initialze it.

	* lread.c (syms_of_lread) <load-history>: Doc fix.

912 913 914 915 916 917 918 919 920 921 922 923 924 925 926
2004-12-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xmenu.c (popup_get_selection): Pop down on C-g.
	(set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
	pops down menu on C-g.
	(xdialog_show): If dialog popped down and no button in the dialog was
	pushed, call Fsignal to quit.
	(xmenu_show): In no toolkit version, if menu returns NO_SELECT call
	Fsignal to quit.

	* xfns.c (Fx_file_dialog): Motif/Lesstif version:  Pop down on C-g.

	* gtkutil.c (xg_initialize): Install bindings for C-g so that
	dialogs and menus pop down.

Kenichi Handa's avatar
Kenichi Handa committed
927 928 929 930
2004-12-27  Kenichi Handa  <handa@m17n.org>

	* coding.c (code_convert_region): Fix calculation of `ratio'.

931 932
2004-12-25  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

933 934 935
	* gtkutil.c (update_frame_tool_bar): Make the value of
	tool-bar-button-margin control margins of images in tool bar.

936 937 938 939 940 941 942
	* alloc.c (check_depth): New variable.
	(overrun_check_malloc, overrun_check_realloc): Only add
	overhead and write check pattern if check_depth is 1 (to handle
	recursive calls).  Increase/decrease check_depth in entry/exit.
	(overrun_check_free): Only check for overhead if check_depth is 1.
	Increase/decrease check_depth in entry/exit.

943 944 945 946 947 948
2004-12-23  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
	before touching input_available_clear_time, to avoid accessing it
	from multiple threads.

949 950 951 952 953
2004-12-23  Jason Rumney  <jasonr@gnu.org>

	* image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
	of JPEG library.

954 955 956 957 958 959 960 961 962 963 964
2004-12-22  Richard M. Stallman  <rms@gnu.org>

	* emacs.c (main): If batch mode, set Vundo_outer_limit to nil.

	* lisp.h (Vundo_outer_limit): Fix decl.

	* undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
	Uses changed.
	(syms_of_undo): Initialize appropriately.
	(truncate_undo_list): If it's nil, there's no limit.

Kenichi Handa's avatar
Kenichi Handa committed
965 966 967 968
2004-12-22  Kenichi Handa  <handa@m17n.org>

	* xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.

969 970 971 972 973 974 975 976 977 978 979 980
2004-12-21  Richard M. Stallman  <rms@gnu.org>

	* eval.c (unwind_to_catch): Clear immediate_quit.

	* xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
	specially as `\ ' and `\-'.

	* keyboard.c (kbd_buffer_store_event_hold):
	In the code for while-no-input, handle immediate_quit.

	* alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
	Call that at the very start.
981
	(undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004
	(syms_of_alloc): Don't define undo-limit,
	undo-strong-limit and undo-outer-limit here.

	* undo.c (truncate_undo_list): Return void.
	Take just one argument, the buffer.
	Make it current, and inhibit recursive GC.
	Access and update the undo list directly; return void.
	Refer to the undo...limit variables directly.
	Test undo_outer_limit only after counting the whole current command.
	When it's exceeded, call the function in undo-outer-limit-function.
	(undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
	(Vundo_outer_limit_function): New variable.
	(syms_of_undo): Define undo-limit, undo-strong-limit
	and undo-outer-limit here, and undo-outer-limit-function.
	Doc fixes.

	* lisp.h (truncate_undo_list): Update decl.

2004-12-21  Piet van Oostrum  <piet@cs.uu.nl>

	* fileio.c (Fread_file_name): Delete duplicates in
	file-name-history when history_delete_duplicates is true.

1005 1006 1007 1008
2004-12-20  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macterm.c (mac_do_list_fonts): Fix memory leak

1009 1010 1011 1012 1013
2004-12-20  Richard M. Stallman  <rms@gnu.org>

	* regex.c (re_match_2_internal) <symend, wordend>:
	Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.

1014 1015
2004-12-18  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

1016 1017
	* macterm.c (endif, x_font_name_to_mac_font_name):
	Use maccentraleurroman instead of maccentraleuropean
1018 1019 1020
	(mac_c_string_match, mac_do_list_fonts): Speed up font search by
	quickly finding a specific font without needing regexps.

1021 1022
2004-12-15  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042
	* syssignal.h: Declare main_thread.
	(SIGNAL_THREAD_CHECK): New macro.

	* keyboard.c (input_available_signal): Move thread checking code
	to macro SIGNAL_THREAD_CHECK and call that macro.
	(interrupt_signal): Call SIGNAL_THREAD_CHECK.

	* alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.

	* emacs.c: Define main_thread.
	(main): Initialize main_thread.
	(handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
	(memory_warning_signal): Call SIGNAL_THREAD_CHECK.

	* floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.

	* dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.

	* sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.

1043 1044
	* process.c (send_process_trap, sigchld_handler):
	Call SIGNAL_THREAD_CHECK.
1045 1046 1047 1048 1049

	* data.c (arith_error): Call SIGNAL_THREAD_CHECK.

	* atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.

1050 1051 1052
	* xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
	returning when xg_ignore_gtk_scrollbar is true.

1053 1054 1055 1056 1057
2004-12-14  Kim F. Storm  <storm@cua.dk>

	* keyboard.c (read_char): Save and restore echo_string when
	handling input method.

1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068
2004-12-13  Richard M. Stallman  <rms@gnu.org>

	* eval.c (syms_of_eval) <quit-flag>: Doc fix.

	* keyboard.c (Vthrow_on_input): New variable.
	(syms_of_keyboard): Defvar and initialize it.
	(kbd_buffer_store_event_hold): Handle Vthrow_on_input.

	* lisp.h (QUIT): Check for Vthrow_on_input.
	(Vthrow_on_input): Declare it.

Kim F. Storm's avatar
Kim F. Storm committed
1069 1070 1071 1072 1073
2004-12-13  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (set_iterator_to_next): Reset stop_charpos after display
	vector.

1074 1075 1076 1077 1078 1079 1080
2004-12-12  Richard M. Stallman  <rms@gnu.org>

	* indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.

	* minibuf.c (Fall_completions): Add var `zero' and use it in loop.
	(Ftry_completion): Really use outer `zero'; eliminate inner one.

1081 1082 1083 1084
2004-12-12  Kenichi Handa  <handa@m17n.org>

	* term.c (encode_terminal_code): Fix previous change.

Stefan Monnier's avatar
Stefan Monnier committed
1085 1086
2004-12-11  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
1087 1088 1089
	* keyboard.c (handle_async_input): Remove pthread mutex handling.
	(input_available_signal): Move pthread thingy to !SYNC_INPUT branch.

Stefan Monnier's avatar
Stefan Monnier committed
1090 1091 1092 1093 1094 1095 1096 1097
	* syntax.c (Fforward_word): Avoid non-idempotent side-effects
	in macro arguments.

	* minibuf.c (Ftry_completion, Fall_completions): Don't use
	XFASTINT blindly.

	* emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.

1098 1099
2004-12-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1100 1101 1102 1103
	* w32term.c (x_calc_absolute_position): Remove calculation of
	difference between inner and outer window.  Don't subtract difference
	for left and top calculations.

1104 1105
	* xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
	for left and top calculations.  Remove call to x_real_positions.
1106
	[Bug report by Drew Adams in November]
1107 1108 1109
	(x_check_expected_move): Do not set change_gravity to 1 when calling
	x_set_offset.

1110 1111 1112 1113 1114 1115 1116 1117 1118
2004-12-08  Richard M. Stallman  <rms@gnu.org>

	* xdisp.c (get_next_display_element): Use `escape-glyph' for
	control chars and escaped octal codes.
	(Qescape_glyph): New variable.
	(syms_of_xdisp): Initialize it.
	(escape_glyph_face): New variable.
	(redisplay_window): Initialize it.

1119 1120 1121 1122 1123
2004-12-07  Paul Eggert  <eggert@cs.ucla.edu>

	* image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
	(init_image): Use 1 rather than TRUE.  TRUE's not always defined.

1124 1125
2004-12-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1126 1127 1128
	* emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
	reset_malloc_hooks.

Stefan Monnier's avatar
Stefan Monnier committed
1129 1130
	* keyboard.c (handle_async_input, input_available_signal):
	Add ! defined (SYSTEM_MALLOC) around thread code.
1131

1132 1133
	* alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.

1134
2004-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
Stefan Monnier's avatar
Stefan Monnier committed
1135 1136 1137 1138 1139

	* eval.c (init_eval_once): Increase max_specpdl_size to 1000.

	* config.in: Regenerate.

1140 1141
2004-12-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1142 1143 1144 1145 1146
	* xmenu.c (Fx_popup_menu): Correct documentation about position.
	(xmenu_show): Do not call XTranslateCoordinates.  Adjust position
	if not given by a mouse click to correspond with x-popup-menu
	documentation.

Jan Djärv's avatar
Jan Djärv committed
1147 1148
	* config.in: Regenerate.

1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167
	* gtkutil.c: Include signal.h and syssignal.h.
	(xg_get_file_name): Block and unblock __SIGRTMIN if defined.

	* alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
	new variables main_thread and alloc_mutex,
	define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
	emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
	If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
	(UN)BLOCK_INPUT.
	(emacs_blocked_free, emacs_blocked_malloc)
	(emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
	(uninterrupt_malloc): Initialize main_thread and alloc_mutex.
	(reset_malloc_hooks): New function.

	* lisp.h: Declare reset_malloc_hooks.

	* emacs.c (Fdump_emacs): Call reset_malloc_hooks.

	* keyboard.c: Conditionally include pthread.h
Stefan Monnier's avatar
Stefan Monnier committed
1168
	(handle_async_input, input_available_signalt): If not in the main
1169 1170
	thread, block signal, send signal to main thread and return.

1171
	* gtkutil.c (xg_get_file_with_chooser): Handle local files only.
Stefan Monnier's avatar
Stefan Monnier committed
1172
	Set current folder in file chooser if default_filename is a directory.
1173

1174 1175 1176 1177 1178 1179
2004-12-05  Stefan Monnier  <monnier@iro.umontreal.ca>

	* regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
	Remove redundant correctness checks.
	(regex_compile): Fix up error codes for \{..\} expressions.

1180 1181 1182 1183
2004-12-05  Richard M. Stallman  <rms@gnu.org>

	* regex.c (regex_compile): Fix end-of-pattern case for space.

1184 1185
2004-12-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

Kim F. Storm's avatar
Kim F. Storm committed
1186 1187
	* macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
	* mac.c (cfstring_create_with_utf8_cstring): Add to prevent
1188
	crashes with invalid characters.
Kim F. Storm's avatar
Kim F. Storm committed
1189 1190 1191 1192 1193
	* macmenu.c (add_menu_item): Use it.
	* image.c (image_load_quartz2d): Likewise.
	* macfns.c (x_set_name, x_set_title): Likewise.
	(Fx_file_dialog): Likewise.  Use constant CFRefs instead of
	creating them each time for labels.
1194

1195 1196 1197 1198 1199 1200 1201 1202
2004-12-02  Richard M. Stallman  <rms@gnu.org>

	* config.in (RE_TRANSLATE_P): If make_number is not a macro,
	don't use it here.

	* eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
	(interactive_p): Skip Scalled_interactively_p frames
	like Sinteractive_p frames.
Kim F. Storm's avatar
Kim F. Storm committed
1203
	(unwind_to_catch): Clear handling_signal.
1204 1205 1206 1207 1208 1209 1210 1211 1212

	* data.c (Fmake_variable_buffer_local): Doc fix.
	(Fmake_local_variable): Doc fix.

	* insdel.c (insert_from_string_before_markers)
	(insert_from_string): Don't modify buffer on empty insertion.

	* window.c (Fget_lru_window, Fget_largest_window): Doc fixes.

1213 1214 1215 1216 1217
2004-12-01  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* macmenu.c (add_menu_item): Fallback on MacRoman if encoding
	menu text as UTF8 fails.

Kim F. Storm's avatar
Kim F. Storm committed
1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228
2004-12-01  Kim F. Storm  <storm@cua.dk>

	* alloc.c: Add commentary for last change.
	(XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
	sizeof(size_t) != 4.
	(overrun_check_malloc, overrun_check_realloc, overrun_check_free):
	Use them.  Also clear header and trailer of freed memory.
	(GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
	(string_overrun_cookie): Rename from string_overrun_pattern.
	(GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.

Andreas Schwab's avatar
Andreas Schwab committed
1229 1230 1231 1232
2004-12-01  Andreas Schwab  <schwab@suse.de>

	* lisp.h: Declare string_to_multibyte.

Kenichi Handa's avatar
Kenichi Handa committed
1233 1234 1235 1236 1237 1238 1239
2004-12-01  Kenichi Handa  <handa@m17n.org>

	* w32console.c (w32con_write_glyphs): Decide coding here.
	Adjusted for the change of encode_terminal_code.

	* term.c (encode_terminal_code): Don't make it "static".

Kenichi Handa's avatar
Kenichi Handa committed
1240 1241
2004-11-30  Kenichi Handa  <handa@m17n.org>

Stefan Monnier's avatar
Stefan Monnier committed
1242
	* term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
Kenichi Handa's avatar
Kenichi Handa committed
1243
	(encode_terminal_code): Argument changed.  Encode all
Stefan Monnier's avatar
Stefan Monnier committed
1244 1245
	characters at once, and return a pointer to the result of encoding.
	(write_glyphs): Decide coding here.  Adjusted for the above change.
Kenichi Handa's avatar
Kenichi Handa committed
1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256
	(insert_glyphs): Likewise.
	(term_init): Initialize encode_terminal_bufsize to 0.

	* coding.c (Vcode_conversion_workbuf_name): New variable.
	(syms_of_coding): Initialize and staticpro it.
	(set_conversion_work_buffer): New function.
	(run_pre_post_conversion_on_str): Use it.
	(run_pre_write_conversin_on_c_str): New function.

	* coding.h (run_pre_write_conversin_on_c_str): Extern it.

Steven Tamm's avatar
Steven Tamm committed
1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282
2004-11-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>

	* keyboard.c: Don't undef SIGIO
	* s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
	* Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
	(macfns.o): Don't depend on ccl.h.
	* macfns.c (mac_frame_parm_handlers): Set handlers for
	Qleft_fringe and Qright_fringe.
	* macterm.c (mac_fill_rectangle_to_pixmap)
	(mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
	(mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
	Put in #if 0.
	(mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
	(x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
	(XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
	(x_draw_glyph_string_background, x_draw_glyph_string_foreground)
	[!MAC_OS8]: Added ifdef'd out code for os8.  Don't use
	XDrawImageString.  Always draw background and foreground separately.
	(x_draw_image_foreground): Use clipping instead of computing the
	intersection rectangle.
	(x_draw_image_glyph_string): Don't draw an image with mask to a
	pixmap.
	(x_redisplay_interface): Set flush_display_optional member to 0.
	(XTread_socket): Correctly reset the TEConverter
	object.

Kim F. Storm's avatar
Kim F. Storm committed
1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302
2004-11-30  Kim F. Storm  <storm@cua.dk>

	* lisp.h: New defines to enable buffer overrun checking.
	(GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
	(XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.

	* alloc.c: Add more checks for buffer overruns.
	(XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
	xmalloc_overrun_check_trailer, overrun_check_malloc)
	overrun_check_realloc, overrun_check_free): Add.
	(GC_STRING_EXTRA, string_overrun_pattern): Add.
	(check_sblock, allocate_string_data, compact_small_strings):
	Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
	(check_cons_list): Condition on GC_CHECK_CONS_LIST.
	(check_string_free_list): Add.
	(allocate_string, sweep_strings): Call check_string_free_list.

	* emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
	XMALLOC_OVERRUN_CHECK to avoid crash during load.

Kim F. Storm's avatar
Kim F. Storm committed
1303 1304 1305 1306
2004-11-29  Kim F. Storm  <storm@cua.dk>

	* fns.c (concat): Use SAFE_ALLOCA.

1307 1308 1309 1310
2004-11-29  Stefan Monnier  <monnier@iro.umontreal.ca>

	* sysdep.c (emacs_write): Don't use QUIT.

Kenichi Handa's avatar
Kenichi Handa committed
1311 1312 1313 1314 1315
2004-11-29  Kenichi Handa  <handa@m17n.org>

	* buffer.c (init_buffer): Set current_buffer->directory to a
	multibyte string made by string_to_multibyte.

1316
	* emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
Kenichi Handa's avatar
Kenichi Handa committed
1317

Andreas Schwab's avatar
Andreas Schwab committed
1318 1319 1320 1321 1322 1323 1324
2004-11-27  Andreas Schwab  <schwab@suse.de>

	* alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.

	* s/gnu-linux.h: Enable no-op gcpros on ia64.
	(GC_MARK_SECONDARY_STACK) [__ia64__]: Define.

1325 1326
	* filelock.c (lock_file_1): Call get_boot_time early.
	Increase buffer size.
Andreas Schwab's avatar
Andreas Schwab committed
1327

Eli Zaretskii's avatar
Eli Zaretskii committed
1328 1329 1330 1331 1332
2004-11-27  Eli Zaretskii  <eliz@gnu.org>

	* lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
	is not defined.

1333 1334 1335 1336 1337
2004-11-27  Kim F. Storm  <storm@cua.dk>

	* search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
	marker out of doc string.

1338 1339 1340 1341 1342
2004-11-26  Stefan Monnier  <monnier@iro.umontreal.ca>

	* s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
	which was not mentioned in the log.

Kim F. Storm's avatar
Kim F. Storm committed
1343 1344
2004-11-26  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
1345 1346 1347
	* fringe.c (update_window_fringes): Prefer truncation bitmaps over
	angle bitmaps at top/bottom line.

Kim F. Storm's avatar
Kim F. Storm committed
1348 1349 1350 1351 1352 1353 1354 1355 1356
	* xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
	set it when it->method is set to next_element_from_display_vector.
	(setup_for_ellipsis): Add LEN argument.  Callers changed.
	Set it->saved_face_id.
	(get_next_display_element): Use loop instead of recursion.
	Set it->saved_face_id.  Combine duplicate code for ctr chars.
	(next_element_from_display_vector): Do not set it->saved_face_id.
	(next_element_from_ellipsis): Use setup_for_ellipsis.

Eli Zaretskii's avatar
Eli Zaretskii committed
1357 1358 1359