ChangeLog 450 KB
Newer Older
Juanma Barranquero's avatar
Juanma Barranquero committed
1 2 3 4 5 6
2004-03-01  Juanma Barranquero  <lektu@terra.es>

	* fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.

	* makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.

7 8 9 10 11
2004-03-01  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xfns.c (Fx_display_color_cells): Use number of planes to calculate
	how many colors can be displayed.

Kenichi Handa's avatar
Kenichi Handa committed
12 13 14 15 16
2004-03-01  Kenichi Handa  <handa@m17n.org>

	* editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
	correctly.

Kim F. Storm's avatar
Kim F. Storm committed
17 18 19 20 21 22 23 24 25 26 27
2004-02-28  Kim F. Storm  <storm@cua.dk>

	* dispnew.c (update_window): Update header line also if there are
	no other changes in window (move code after set_cursor label).

	* lisp.h (mark_window_display_accurate): Remove prototype.

	* window.c (window_loop, Fforce_window_update): Force mode line
	updates by setting prevent_redisplay_optimizations_p and
	update_mode_lines.

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

	* xfns.c (x_window): Fixed indentation.

	* xterm.c (x_calc_absolute_position): Call x_real_positions
	to get WM window sizes and use those to calculate position.
	(x_set_offset): Removed code commented out.

36 37 38 39
2004-02-28  Miles Bader  <miles@gnu.org>

	* keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.

Kim F. Storm's avatar
Kim F. Storm committed
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
2004-02-28  Kim F. Storm  <storm@cua.dk>

	* keyboard.c (kbd_buffer_store_event_hold): New function to store
	an event into kbd fifo, but with special handling of quit event;
	a quit event is saved for later, and further events are discarded
	until the saved quit event has been processed.
	(kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
	(gen_help_event): Store help event in kbd fifo.
	(NREAD_INPUT_EVENTS): Remove.
	(read_avail_input): Adapt to new read_socket_hook interface.
	Remove allocation and initialization of local input_event buffer,
	as read_socket_hook stores events directly in fifo.  Allocate and
	initialize local hold_quit event to handle postponed quit event
	(and store it if set by kbd_buffer_store_event_hold).

	* keyboard.h (kbd_buffer_store_event_hold): Add prototype.
	(gen_help_event): Fix prototype.

Juanma Barranquero's avatar
Juanma Barranquero committed
58
	* macterm.c (XTread_socket): Remove bufp_r and
Kim F. Storm's avatar
Kim F. Storm committed
59 60 61 62 63 64 65 66 67 68 69
	numcharsp args.  Add hold_quit arg.
	Rework to use just one, local, inev input_event. Store inev
	directly in fifo using kbd_buffer_store_event_hold.

	* sysdep.c (BUFFER_SIZE_FACTOR): Remove.
	(read_input_waiting): Adapt to new read_socket_hook interface.
	Remove allocation and initialization of local input_event buffer,
	as read_socket_hook stores events directly in fifo.  Allocate and
	initialize local hold_quit event to handle postponed quit event
	(and store it if set by kbd_buffer_store_event_hold).

Juanma Barranquero's avatar
Juanma Barranquero committed
70
	* term.c (read_socket_hook): Fix arg list.
Kim F. Storm's avatar
Kim F. Storm committed
71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123

	* termhooks.h (read_socket_hook): Fix prototype.

	* w32inevt.c (w32_console_read_socket): Remove bufp_r and
	numcharsp args.  Add hold_quit arg.
	Rework to use just one, local, inev input_event. Store inev
	directly in fifo using kbd_buffer_store_event_hold.

	* w32inevt.h (w32_console_mouse_position): Fix prototype.

	* w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
	Add hold_quit arg. Rework to use just one, local, inev
	input_event. Store inev directly in fifo using
	kbd_buffer_store_event_hold.  Update count in one place.
	Postpone call to gen_help_event until inev is stored; use new
	local do_help for this.
	Remove local emacs_event in handing of ButtonPress event; just use
	inev instead (so no reason to copy it later).

	* xsmfns.c (x_session_check_input): Remove numchars arg.

	* xterm.c (x_focus_changed, x_detect_focus_change): Remove
	numchars arg.  Always store event into bufp arg.  Return nothing.
	Callers changed accordingly.
	(glyph_rect): Simplify.
	(STORE_KEYSYM_FOR_DEBUG): New macro.
	(SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
	(current_bufp, current_numcharsp) [USE_GTK]: Remove.
	(current_hold_quit) [USE_GTK]: Add.
	(event_handler_gdk): Adapt to new handle_one_xevent.
	(handle_one_xevent): Remove bufp_r and numcharsp args.
	Add hold_quit arg. Rework to use just one, local, inev
	input_event. Store inev directly in fifo using
	kbd_buffer_store_event_hold.  Update count in one place.
	Postpone call to gen_help_event until inev is stored; use new
	local do_help for this.
	Simplify handling of keysyms (consolidate common code).  Fix bug
	where count was updated with nchars instead of nbytes.
	Remove local emacs_event in handing of ButtonPress event; just use
	inev instead (so no reason to copy it later).
	Remove `out' label.  Rename label `ret' to `done'; add various
	`goto done' to clarify code flow in deeply nested blocks.
	(x_dispatch_event): Simplify as handle_one_xevent now calls
	kbd_buffer_store_event itself.
	(XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
	arg.  Call handle_one_xevent with new arglist.  Store event from
	x_session_check_input in fifo.
	[USE_GTK]: Setup current_hold_quit.
	Decrement handling_signal before unblocking input.
	(x_initialize) [USE_GTK]: Initialize current_count.

	* xterm.h (x_session_check_input): Fix prototype.

124
2004-02-26  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
Juanma Barranquero's avatar
Juanma Barranquero committed
125

126 127
	* s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework
	QuickTime'.
Juanma Barranquero's avatar
Juanma Barranquero committed
128

129 130
	* dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
	macgui.h).
Juanma Barranquero's avatar
Juanma Barranquero committed
131

132
	* emacs.c (main) [HAVE_CARBON]: Call init_xfns.
Juanma Barranquero's avatar
Juanma Barranquero committed
133

134 135 136 137 138 139 140 141 142 143
	* macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
	(mktime, DEBUG, Z, free, malloc, realloc, max, min)
	(init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
	[!MAC_OSX]: Include QDOffscreen.h and Controls.h.
	(INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
	(Bitmap): Remove typedef.
	(Pixmap): Change int to GWorldPtr.

	* macmenu.c [MAC_OSX]: Do not include Carbon/Carbon.h (now in
	macgui.h).
Juanma Barranquero's avatar
Juanma Barranquero committed
144

145 146 147 148 149 150 151 152
	* macterm.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
	macgui.h).
	(RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG): New
	#define to extract 16-bit depth color components from unsigned
	long representation.
	(PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
	colors used for masks.
	(struct mac_display_info): Add color_p.  Remove n_cbits.
Juanma Barranquero's avatar
Juanma Barranquero committed
153

154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274
	* macfns.c: Include sys/types.h and sys/stat.h.
	[MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
	Include QuickTime/QuickTime.h.
	(XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
	(XSetForeground, mac_draw_line_to_pixmap): Add externs for
	functions defined in macterm.c.
	(XImagePtr): New typedef.  Corresponds to XImage * in xfns.c.
	(ZPixmap): New #define for compatibility with xfns.c.
	(XGetImage, XPutPixel, XGetPixel, XDestroyImage)
	(x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
	(find_image_fsspec, image_load_qt_1, image_load_quicktime): New
	functions.
	(four_corners_best, x_create_x_image_and_pixmap)
	(x_destroy_x_image, unwind_create_frame, x_disable_image,
	(x_edge_detection, init_color_table, colors_in_color_table,
	(lookup_rgb_color, lookup_pixel_color, postprocess_image)
	(x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
	(xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
	(x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
	(mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
	long mixup.
	(mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
	(x_decode_color): Don't use n_cbits (in struct mac_display_info).
	(x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
	(x_set_cursor_type, Fxw_color_values, valid_image_p)
	(image_value_type, parse_image_spec, image_ascent, x_clear_image)
	(x_alloc_image_color, clear_image_cache, lookup_image)
	(x_find_image_file, xbm_read_bitmap_file_data)
	(enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
	(xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
	(enum pbm_keyword_index, pbm_format, enum png_keyword_index)
	(png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
	(jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
	(enum gif_keyword_index, gif_format, gif_image_p): Sync with
	xfns.c.
	(x_make_gc): Sync with xfns.c.  Enclose unused `border_tile' with
	#if 0.
	(x_free_gcs): Sync with xfns.c.  Enclose unused `border_tile' with
	#if 0.  Free white_relief.gc and black_relief.gc.
	(unwind_create_frame, x_emboss, x_laplace, x_edge_detection): New
	functions (from xfns.c).
	(Fx_create_frame): Record unwind_create_frame.
	(Fxw_display_color_p): Use dpyinfo->color_p.
	(Fx_display_grayscale_p, Fx_display_planes): Don't use
	dpyinfo->n_cbits.
	(Fx_display_color_cells): Use dpyinfo->n_planes;
	(QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
	(Qheuristic, cross_disabled_images, emboss_matrix)
	(laplace_matrix): New variables (from xfns.c).
	(Fimage_size, Fimage_mask_p, four_corners_best, image_background)
	(x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
	(xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
	(image_background_transparent): New function (from xfns.c).  Use
	PIX_MASK_DRAW/PIX_MASK_RETAIN.
	(image_load_quicktime): Add declaration.
	[MAC_OSX] (image_load_quartz2d): Likewise.
	[MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
	[MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
	[MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New
	functions.
	(xbm_load_image_from_file, x_laplace_read_row)
	(x_laplace_write_row, pbm_read_file): Remove functions.
	[HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
	(xpm_load): Sync with xfns.c (although XPM is not supported yet).
	(colors_in_color_table): Sync with xfns.c (although not used).
	(lookup_rgb_color): Don't lookup color table.  Just do gamma
	correction.
	(COLOR_INTENSITY): New #define (from xfns.c).
	(x_disable_image): New function (from xfns.c).  Use
	PIX_MASK_DRAW/PIX_MASK_RETAIN.
	(x_build_heuristic_mask): Sync with xfns.c.  Use
	PIX_MASK_DRAW/PIX_MASK_RETAIN.
	(HAVE_PBM): Remove #ifdef.
	(pbm_load): Sync with xfns.c.  Set img->width and img->height
	before IMAGE_BACKGROUND.
	(png_image_p, png_load): Don't enclose declarations with #if
	HAVE_PNG.
	(Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
	Don't enclose with #if HAVE_PNG.
	[!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
	symbol _CGImageCreateWithPNGDataProvider is defined.  Otherwise
	use image_load_quicktime.
	[!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
	[HAVE_PNG] (png_load): Sync with xfns.c.  Use
	PIX_MASK_DRAW/PIX_MASK_RETAIN.
	(jpeg_image_p, jpeg_load): Don't enclose declarations with #if
	HAVE_JPEG.
	(Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
	(jpeg_image_p): Don't enclose with #if HAVE_JPEG.
	[!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
	[!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
	[HAVE_JPEG] (jpeg_load): Sync with xfns.c.
	(tiff_image_p, tiff_load): Don't enclose declarations with #if
	HAVE_TIFF.
	(Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
	(tiff_image_p): Don't enclose with #if HAVE_TIFF.
	[!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
	[HAVE_TIFF] (tiff_error_handler, tiff_warning_handler): New
	functions (from xfns.c).
	[HAVE_TIFF] (tiff_load): Sync with xfns.c.
	(gif_image_p, gif_load): Don't enclose declarations with #if
	HAVE_GIF.
	(Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
	Don't enclose with #if HAVE_GIF.
	[!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
	animated gif.  Otherwise use image_load_quicktime.
	[HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
	gif_DrawText to avoid conflict with QuickdrawText.h.
	[HAVE_GIF] (gif_load): Sync with xfns.c.
	(enum gs_keyword_index, gs_format, gs_image_p, gs_load)
	[HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
	Ghostscript is not supported yet).
	(syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
	QCmatrix, QCcolor_adjustment, and QCmask.  Add DEFVAR_BOOL
	cross_disabled_images (from xfns.c).  Remove #if 0 for supported
	image types.  Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
	HAVE_PNG.  Add defsubr for Simage_size and Simage_mask_p.
	(init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
	HAVE_PNG.  Call EnterMovies to support animated gifs.  Call
	init_image_func_pointer to bind a symbol
	_CGImageCreateWithPNGDataProvider if it is defined.
Juanma Barranquero's avatar
Juanma Barranquero committed
275

276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335
	* macterm.c [MAC_OSX]: Do not include Carbon/Carbon.h (now in
	macgui.h).
	(x_draw_bar_cursor): Sync declaration with xterm.c.
	(XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
	(mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
	graphics).
	(mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
	(mac_draw_line_to_pixmap, XCreatePixmap)
	(XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
	(mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap): New
	functions.
	(mac_draw_bitmap) [TARGET_API_MAC_CARBON]: Use
	GetPortBitMapForCopyBits instead of the cast to Bitmap *.  Cast
	bits to char *.
	(reflect_byte): New function (from w32fns.c).
	(mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
	due to byte alignment.
	(mac_scroll_area) [TARGET_API_MAC_CARBON]: Use
	GetPortBitMapForCopyBits instead of the cast to Bitmap *.
	(XSetForeground): Remove static (now used in macfns.c).
	(HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
	(mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
	(x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
	(x_draw_glyph_string_box, x_draw_image_foreground)
	(x_draw_image_foreground_1, x_draw_image_glyph_string)
	(x_draw_stretch_glyph_string, x_draw_glyph_string)
	(x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
	Sync with xterm.c.
	(x_draw_relief_rect): Sync with xterm.c.  Make 1 pixel shorter
	than the xterm.c version when a strictly horizontal or vertical
	line is drawn.
	(XTset_terminal_window): Add static.
	(x_make_frame_visible): Add UNBLOCK_INPUT.
	(x_free_frame_resources): New funcion (from xterm.c).
	(XTread_socket): Call handle_tool_bar_click if mouse up/down event
	occurs in tool bar area.
	(mac_initialize_display_info): Remove dpyinfo->n_cbits.  Set
	dpyinfo->color_p.  Determine dpyinfo->n_planes using HasDepth.
	Initialize image cache.
	(stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
	Enclose unused functions with #if 0.
	(Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
	(decode_mac_font_name): New function to apply code conversions
	from a mac font name to an XLFD font name according to its script
	code.
	(x_font_name_to_mac_font_name): Apply code conversion from an XLFD
	font name to a mac font name according to REGISTRY and ENCODING
	fields.
	(init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
	whose name starts with `.'.
	(init_font_name_table): Use decode_mac_font_name.  Add both
	jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
	of a font is smJapanese.
	(mac_do_list_fonts): New function to list fonts that match a given
	pattern.
	(x_list_fonts, XLoadQueryFont): Use it.
	(XLoadQueryFont): Set rbearing field for each variable width
	character to avoid needless redraw.
	(syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.

Kim F. Storm's avatar
Kim F. Storm committed
336 337
2004-02-26  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
338 339 340 341
	* keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
	as read_socket_hook handler on X aborts if buffer is too small
	and W32 handler doesn't always check buffer limit.

Kim F. Storm's avatar
Kim F. Storm committed
342 343 344 345 346 347 348 349
	* xdisp.c (handle_single_display_prop): Handle left-fringe and
	right-fringe similar to a display margin image.  Specifically,
	the characters having the fringe prop are no longer shown, and
	we use IT_IMAGE/next_element_from_image with image_id = -1 to
	do this.  Set fringe bitmap face_id in it->face_id.
	(produce_image_glyph): Handle image_id < 0 as "no image" case, but
	still realize it->face (i.e. the fringe bitmap face).

350 351 352 353 354 355 356 357 358 359 360 361 362 363
2004-02-25  Miles Bader  <miles@gnu.org>

	* xdisp.c (check_it): Check string/string_pos consistency.
	(init_iterator): Initialize string-related fields properly.

2004-02-11  Miles Bader  <miles@gnu.org>

	* xdisp.c (produce_image_glyph): Force negative descents to zero.

2004-02-10  Miles Bader  <miles@gnu.org>

	* xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
	BLOCK_INPUT can be nested, so it doesn't make much sense.

Juanma Barranquero's avatar
Juanma Barranquero committed
364
2004-02-24  Michael Mauger  <mmaug@yahoo.com>
Jason Rumney's avatar
Jason Rumney committed
365 366 367 368

	* w32fns.c (slurp_file, xbm_scan, xbm_load_image)
	(xbm_read_bitmap_data): Use unsigned char for image data.

Luc Teirlinck's avatar
Luc Teirlinck committed
369 370 371 372
2004-02-23  Luc Teirlinck  <teirllm@auburn.edu>

	* abbrev.c (Finsert_abbrev_table_description): Doc fix.

Jason Rumney's avatar
Jason Rumney committed
373 374 375 376 377
2004-02-22  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
	correctly over other bitmaps.

378 379 380 381 382 383 384
2004-02-21  Eli Zaretskii  <eliz@elta.co.il>

	* emacs.c (USAGE1): Split into two halves.
	(USAGE2): Second half of the old USAGE1.
	(USAGE3): Renamed from USAGE2.
	(USAGE4): Renamed from USAGE3.

Eli Zaretskii's avatar
Eli Zaretskii committed
385 386 387 388 389 390 391
2004-02-21  Juri Linkov  <juri@jurta.org>

	* emacs.c (USAGE1): Add --no-desktop.  Move --display from USAGE2.
	Fix --multibyte.  Move --help, --version to USAGE2.  Add alias
	--file.  Fix -f, -l.  Sort options.  Untabify.
	(USAGE2): Add -hb.  Fix --name, --title.  Sort options.  Untabify.

Luc Teirlinck's avatar
Luc Teirlinck committed
392 393 394 395 396 397
2004-02-19  Luc Teirlinck  <teirllm@auburn.edu>

	* category.c (Fdefine_category, Fcategory_docstring)
	(Fget_unused_category, Fset_category_table)
	(Fcategory_set_mnemonics): Doc fixes.

Kim F. Storm's avatar
Kim F. Storm committed
398 399 400 401 402 403 404 405 406
2004-02-20  Kim F. Storm  <storm@cua.dk>

	* keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
	The following changes are relative to the 2004-01-21 revision.
	(NREAD_INPUT_EVENTS): Define as max number of input events to read
	in one call to read_socket_hook.  Value is 8.
	(read_avail_input): Separate and rework handling of read_socket_hook
	and non-read_socket_hook cases.  Use smaller input_event buffer
	in read_socket_hook case, and repeat if full buffer is read.  Use
Luc Teirlinck's avatar
Luc Teirlinck committed
407
	new local variable 'discard' to skip input after C-g.
Kim F. Storm's avatar
Kim F. Storm committed
408 409 410
	In non-read_socket_hook case, just use a single input_event, and
	call kbd_buffer_store_event on the fly for each character.

411 412 413 414 415
2004-02-19  Stefan Monnier  <monnier@iro.umontreal.ca>

	* lisp.h (union Lisp_Object): Give a more precise type for `type'.
	Remove unused `gu' alternative.

Andreas Schwab's avatar
.  
Andreas Schwab committed
416 417 418 419 420
2004-02-19  Andreas Schwab  <schwab@suse.de>

	* fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
	warning.

Kim F. Storm's avatar
Kim F. Storm committed
421 422 423 424 425
2004-02-18  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (get_window_cursor_type, display_and_set_cursor):
	Fix last change.

Kim F. Storm's avatar
Kim F. Storm committed
426 427
2004-02-17  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
428 429 430 431
	* xdisp.c (fast_find_position): Fix return value of new version;
	it was inverted compared to the 21.1 version.
	(get_window_cursor_type): Don't look at glyph if NULL.
	(display_and_set_cursor): Set glyph to NULL if cursor in fringe.
Kim F. Storm's avatar
Kim F. Storm committed
432

Kim F. Storm's avatar
Kim F. Storm committed
433 434 435 436
	* keyboard.c: Rework previous change; it didn't consider that the
	buf array was allocated on the stack.
	(prev_read): Remove variable.
	(read_avail_input_buf): New static event buffer array.
Kim F. Storm's avatar
Kim F. Storm committed
437
	(in_read_avail_input): New static variable to handle re-entrancy.
Kim F. Storm's avatar
Kim F. Storm committed
438
	(read_avail_input): Change buf to pinter to read_avail_input_buf.
Kim F. Storm's avatar
Kim F. Storm committed
439 440 441
	Use in_read_avail_input to handle re-entrance; when re-entered,
	fully initialize and use tmp_buf array instead of read_avail_input_buf.
	Do not initialize read_avail_input_buf in full here; instead assume it
Kim F. Storm's avatar
Kim F. Storm committed
442 443 444 445
	is always cleared on entry.  To ensure that, we clear (just) the
	entries that were used before we return.
	(init_keyboard): Initialize read_avail_input_buf here.

Eli Zaretskii's avatar
Eli Zaretskii committed
446 447 448 449
2004-02-16  Jesper Harder  <harder@ifa.au.dk>  (tiny change)

	* cmds.c (Fend_of_line): Doc fix.

Eli Zaretskii's avatar
Eli Zaretskii committed
450 451 452 453 454 455
2004-02-16  Dmitry Antipov  <dmitry.antipov@mail.ru>  (tiny change)

	* keyboard.c (prev_read): New static variable.
	(read_avail_input): Use it to zero out only those slots in buf[]
	that were used last time we were called.

Eli Zaretskii's avatar
Eli Zaretskii committed
456 457 458 459 460
2004-02-16  Eli Zaretskii  <eliz@elta.co.il>

	* Makefile.in (obj): Move fringe.o from here...
	(XOBJ, MAC_OBJ): ...to here.

461 462 463 464
2004-02-16  Stephen Eglen  <stephen@gnu.org>

	* fringe.c (init_fringe_bitmap): Define j in MAC_OS code.

Stefan Monnier's avatar
Stefan Monnier committed
465 466
2004-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>

467 468 469
	* data.c (Fbyteorder):
	* fringe.c (Fdefine_fringe_bitmap):
	* xdisp.c (handle_single_display_prop):
Stefan Monnier's avatar
Stefan Monnier committed
470 471
	* xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.

Jason Rumney's avatar
Jason Rumney committed
472 473 474 475
2004-02-16  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.

476 477 478 479 480 481
2004-02-15  Steven Tamm  <steventamm@mac.com>

	* macterm.c (Vmac_emulate_three_button_mouse): New variable for
	controlling emulation of a three button mouse with option and
	command keys.
	(Qreverse, mac_get_enumlated_btn): Handle the emulation
482
	(mac_event_to_emacs_modifiers, XTread_socket): Ditto.
483

Kim F. Storm's avatar
Kim F. Storm committed
484 485
2004-02-15  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
486 487
	* buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.

Kim F. Storm's avatar
Kim F. Storm committed
488 489 490
	* fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
	Perform byte-swapping.

491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507
2004-02-14  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (struct draw_fringe_bitmap_params): Change member
	bits from char to short to facilitate wider bitmaps.
	(struct redisplay_interface): Fix prototype of define_fringe_bitmap
	member.

	* fringe.c (struct fringe_bitmap): Change member bits from char to
	short to facilitate 16 bits wide bitmaps.  Modify all standard
	bitmaps accordingly.
	(BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
	(FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
	(draw_fringe_bitmap): Ditto.
	(init_fringe_bitmap) [MAC_OS]: Don't bitswap.
	(init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
	handle up to 16 bits wide bitmaps.
	(Fdefine_fringe_bitmap): Doc fix.  Handle wider bitmaps.
Kim F. Storm's avatar
Kim F. Storm committed
508
	(Ffringe_bitmaps_at_pos): Add missing arg declarations.
509 510 511 512 513 514 515 516 517 518

	* macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
	(x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
	need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.

	* w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
	so it is no longer necessary to expand them here.

	* xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).

Kim F. Storm's avatar
Kim F. Storm committed
519 520 521 522
2004-02-12  Kim F. Storm  <storm@cua.dk>

	* window.c (Fwindow_fringes): Doc fix.

523 524 525 526 527 528 529 530 531
2004-02-10  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xselect.c (x_get_foreign_selection): Add new optional parameter
	time_stamp.
	(Fx_get_selection_internal): Ditto, pass time_stamp to
	x_get_foreign_selection.

	* data.c (Fbyteorder): New function.

532 533 534 535 536 537 538 539 540 541
2004-02-09  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* atimer.c: Move include stdio.h to same place as in other files.

	* region-cache.c: Ditto.

	* sysdep.c: Ditto.

	* xfaces.c: Ditto.

542 543 544 545
2004-02-09  Sam Steingold  <sds@gnu.org>

	* w32term.c (w32_draw_fringe_bitmap): Fixed a typo in the last patch.

Kim F. Storm's avatar
Kim F. Storm committed
546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575
2004-02-09  Kim F. Storm  <storm@cua.dk>

	* fringe.c: New file.  Move original fringe related declarations
	and code from dispextern.h and xdisp.c here.
	Rework code to support user defined fringe bitmaps, redefining
	standard bitmaps, ability to overlay user defined bitmap with
	overlay arrow bitmap, and add faces to bitmaps.
	(Voverflow_newline_into_fringe): Declare here.
	(enum fringe_bitmap_align): New enum.
	(..._bits): All bitmaps are now defined without bitswapping; that
	is now done in init_fringe_once (if necessary).
	(standard_bitmaps): New array with specifications for the
	standard fringe bitmaps.
	(fringe_faces): New array.
	(valid_fringe_bitmap_id_p): New function.
	(draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
	(draw_fringe_bitmap): New function which draws fringe bitmap,
	possibly overlaying bitmap with cursor in right fringe or the
	overlay arrow in the left fringe.
	(update_window_fringes): Do not handle overlay arrow here.
	Compare and copy fringe bitmap faces.
	(init_fringe_bitmap): New function.
	(Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
	define and destroy user defined fringe bitmaps.
	(Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
	(Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
	(syms_of_fringe): New function.  Defsubr new DEFUNs.
	DEFVAR_LISP Voverflow_newline_into_fringe.
	(init_fringe_once, init_fringe): New functions.
	(w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
576

Kim F. Storm's avatar
Kim F. Storm committed
577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612
	* Makefile.in (obj): Add fringe.o.
	(fringe.o): New dependencies.

	* dispextern.h (FRINGE_ID_BITS): New definition for number of
	bits allocated to hold a fringe number.  Increase number of bits
	from 4 to 8 to allow user defined fringe bitmaps.
	(struct glyph_row, struct it): New members left_user_fringe_bitmap,
	left_user_fringe_face_id, right_user_fringe_bitmap,
	right_user_fringe_face_id.
	(enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
	Move to new file fringe.c.
	(MAX_FRINGE_BITMAPS): Define here.
	(struct draw_fringe_bitmap_params): New members bits, cursor_p,
	and overlay_p.  Change member which to int.
	(struct redisplay_interface): New members define_fringe_bitmap
	and destroy_fringe_bitmap.
	(valid_fringe_bitmap_id_p): Add prototype.
	(w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.

	* dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
	arrows.
	(update_frame): Do flush_display if force_flush_display_p to
	ensure display (specifically fringes) are updated in a timely
	manner when resizing the frame by dragging the mouse.
	(update_window_line): Update row if overlay arrow changed.
	(scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
	or overlay arrow changed.

	* emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
	syms_of_fringe, and init_fringe.

	* frame.h (struct frame): New member force_flush_display_p.

	* lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
	Add prototypes.

Kim F. Storm's avatar
Kim F. Storm committed
613
	* macterm.c (mac_draw_bitmap): Add overlay_p arg.
Juanma Barranquero's avatar
Juanma Barranquero committed
614
	(x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
Kim F. Storm's avatar
Kim F. Storm committed
615 616
	thanks to YAMAMOTO Mitsuharu for advice on how to do this.
	Use cursor color for displaying cursor in fringe.
Kim F. Storm's avatar
Kim F. Storm committed
617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651
	(x_redisplay_interface): Add null handlers for
	define_fringe_bitmap and destroy_fringe_bitmap functions.

	* w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
	xterm.c to handle overlayed fringe bitmaps and to use cursor color
	for displaying cursor in fringe.
	(w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
	specific functions to define and destroy fringe bitmaps in fringe_bmp.
	(w32_redisplay_interface): Add them to redisplay_interface.
	(w32_term_init): Call w32_init_fringe instead of explicitly
	defining fringe bitmaps in fringe_bmp array.
	(x_delete_display): Call w32_reset_fringes instead of explicitly
	destroying fringe bitmaps in fringe_bmp array.

	* xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
	(left_bits, right_bits, up_arrow_bits, down_arrow_bits)
	(continued_bits, continuation_bits, ov_bits, first_line_bits)
	(last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
	(bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
	(fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
	(draw_window_fringes, compute_fringe_widths, update_window_fringes):
	Move fringe handling vars and code to new file fringe.c.
	(handle_display_prop): Handle left-fringe and right-fringe
	display properties; store user fringe bitmaps in iterator.
	(move_it_in_display_line_to): Handle cursor in fringe at eob.
	(clear_garbaged_frames): Set force_flush_display_p if resized.
	(redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
	(display_line): Handle cursor in fringe at eob.
	(display_line): Set row user fringe bitmaps from iterator.

	* xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
	Use cursor color for displaying cursor in fringe.
	(x_redisplay_interface): Add null handlers for
	define_fringe_bitmap and destroy_fringe_bitmap functions.

652 653 654 655 656 657 658
2004-02-07  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* macfns.c (Fx_change_window_property): Make doc string and
	parameters same as for X version.

	* w32fns.c (Fx_change_window_property): Ditto.

659 660
2004-02-07  Kim F. Storm  <storm@cua.dk>

661 662 663 664
	* xdisp.c (hscroll_window_tree): Position cursor near to right
	margin in hscrolled window when jumping to end of line (rather
	than centering cursor).

665 666 667
	* process.c (wait_reading_process_input): Don't do adaptive read
	buffering if waiting for a specific process.

668 669 670 671 672 673 674 675 676 677 678 679 680 681 682
2004-02-05  Luc Teirlinck  <teirllm@auburn.edu>

	* minibuf.c (Fminibufferp, Fread_from_minibuffer)
	(Fread_minibuffer, Feval_minibuffer)
	(Fread_string, Fread_no_blanks_input)
	(Fcompleting_read): Doc fixes.
	(syms_of_minibuf): Doc fixes for minibuffer-completion-table and
	completion-regexp-list.  Define Qcase_fold_search and staticpro it.
	(read_minibuf): Fix initial comment.
	(Ftry_completion, Fall_completions, Ftest_completion): Bind
	case-fold-serach to the value of completion-ignore-case when
	checking completion-regexp-list.
	(Fdisplay_completion_list): Make it handle arguments that are
	symbols.  Doc fix.

683
2004-02-05  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>
684

685
	* xterm.h: Add declaration of free_frame_menubar.
686

687 688
	* xfns.c (x_create_bitmap_mask): Removed unused variable depth.
	(x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
689
	(Fx_change_window_property): Add declaration of parameters type and
690
	format.  Remove unused variable cons.
Jan Djärv's avatar
Jan Djärv committed
691 692 693

	* xselect.c: Include stdio,h.

694 695
2004-02-05  Kenichi Handa  <handa@m17n.org>

696 697
	* fns.c (Fset_char_table_range): Fix previous change.

698 699
	* buffer.c (Fset_buffer_multibyte): Fix docstring.

700 701 702 703
2004-02-04  Luc Teirlinck  <teirllm@auburn.edu>

	* editfns.c (Fchar_after, Fchar_before): Doc fixes.

Stefan Monnier's avatar
Stefan Monnier committed
704 705 706 707 708
2004-02-04  Stefan Monnier  <monnier@iro.umontreal.ca>

	* keymap.c (Vmouse_events): Rename from Vmenu_events.
	(syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.

709 710 711 712 713
2004-02-04  Kenichi Handa  <handa@m17n.org>

	* fns.c (Fset_char_table_range): Handle charsets ascii,
	eight-bit-control, and eight-bit-graphic correctly.

714 715 716 717 718 719
2004-02-03  Jason Rumney  <jasonr@gnu.org>

	* w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.

	* w32fns.c (x_to_w32_font): Likewise.

720 721 722 723 724 725 726 727 728 729 730 731
2004-02-03  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.h: Add x_handle_dnd_message, x_check_property_data,
	x_fill_property_data, x_property_data_to_lisp and check_x_display_info.

	* xterm.c (handle_one_xevent): Call x_handle_dnd_message for
	ClientMessages.

	* xselect.c: Include termhooks.h and X11/Xproto.h
	(x_check_property_data, x_fill_property_data)
	(x_property_data_to_lisp, mouse_position_for_drop)
	(Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
Stefan Monnier's avatar
Stefan Monnier committed
732
	(Fx_send_client_event): Move here from xfns.c.
733 734
	(syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.

Stefan Monnier's avatar
Stefan Monnier committed
735
	* xfns.c (x-send-client-message): Move to xselect.c
736 737 738 739 740 741 742
	(Fx_change_window_property): Add optional arguments TYPE, FORMAT and
	OUTER_P.
	(Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
	VECTOR_RET_P.  Handle AnyPropertyType.  Call x_property_data_to_lisp
	if vector_ret_p is true.
	(syms_of_xfns): Sx_send_client_message moved to xselect.c.

743 744 745 746 747
2004-02-02  Eli Zaretskii  <eliz@elta.co.il>

	* fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
	basename of FILE relative to it, not FILE itself.

748 749 750 751 752
2004-02-02  Kenichi Handa  <handa@m17n.org>

	* coding.c (coding_restore_composition): Check invalid
	composition data more rigidly.

Luc Teirlinck's avatar
Luc Teirlinck committed
753 754 755 756 757 758 759 760 761
2004-01-30  Luc Teirlinck  <teirllm@auburn.edu>

	* fileio.c (Fread_file_name_internal): Correctly handle the case
	where insert-default-directory is nil.
	(Fread_file_name): Always return an empty string if the user exits
	with an empty minibuffer.  Adapt the docstring accordingly.
	(syms_of_fileio): Adapt the docstring of insert-default-directory
	to the change in Fread_file_name.

Eli Zaretskii's avatar
Eli Zaretskii committed
762 763 764 765
2004-01-29  Eli Zaretskii  <eliz@elta.co.il>

	* alloca.c [!alloca]: Fix the prototype for xfree.

766 767 768 769 770
2004-01-29  Kenichi Handa  <handa@m17n.org>

	* fns.c (string_char_to_byte): Optimize for ASCII only string.
	(string_byte_to_char): Likewise.

Jason Rumney's avatar
Jason Rumney committed
771 772 773 774
2004-01-28  Peter Runestig  <peter@runestig.com>

	* makefile.w32-in, w32fns.c: Add `default-printer-name' function.

Juanma Barranquero's avatar
Juanma Barranquero committed
775
2004-01-27  Steven Tamm  <steventamm@mac.com>
776 777 778 779

	* unexmacosx.c (unexec_copy): Do not copy more than was
	requested to prevent overwriting during unexec.

780 781
2004-01-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

782 783
	* process.c (sigchld_handler): Add comment about not calling malloc.

784 785
	* process.h: Add extern to synch_process_termsig.

Juanma Barranquero's avatar
Juanma Barranquero committed
786
2004-01-27  Steven Tamm  <steventamm@mac.com>
787

Stefan Monnier's avatar
Stefan Monnier committed
788 789 790
	* macterm.c (make_mac_frame, make_mac_terminal_frame):
	Move setting of scroll bars from make_mac_frame to
	make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
791

792 793 794 795 796 797 798 799 800 801 802 803
2004-01-26  Richard M. Stallman  <rms@gnu.org>

	* search.c (Freplace_match): Handle nonexistent
	back-references properly.

2004-01-03  Richard M. Stallman  <rms@gnu.org>

	* window.c (decode_any_window): New function.
	(Fwindow_height, Fwindow_width, Fwindow_edges)
	(Fwindow_pixel_edges, Fwindow_inside_edges)
	(Fwindow_inside_pixel_edges): Use decode_any_window.

804 805 806 807 808 809 810 811 812 813 814 815 816
2004-01-27  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* process.h: synch_process_termsig new variable.

	* callproc.c: Define synch_process_termsig.
	(Fcall_process): Initiate synch_process_termsig to zero and
	check if non-zero and get signal name after subprocess has ended.

	* process.c (sigchld_handler): Set synch_process_termsig
	if terminated by a signal.  synch_process_death setting removed.

	* sysdep.c (mkdir, rmdir): Also check synch_process_termsig.

817 818 819 820 821 822 823
2004-01-26  Andreas Schwab  <schwab@suse.de>

	* print.c (print_preprocess): Declare size as EMACS_INT to not
	lose bits.
	(print_object): Likewise.
	* alloc.c (Fpurecopy): Likewise.

Luc Teirlinck's avatar
Luc Teirlinck committed
824 825 826 827
2004-01-25  Luc Teirlinck  <teirllm@auburn.edu>

	* window.c (Fwindow_minibuffer_p): Doc fix.

Jonathan Yavner's avatar
Jonathan Yavner committed
828 829 830 831
2004-01-24  Jonathan Yavner  <jyavner@member.fsf.org>

	* editfns.c (Fformat): Make both passes accept the same set of flags.

832 833 834 835 836
2004-01-23  Kenichi Handa  <handa@m17n.org>

	* fns.c (Fmd5): If OBJECT is a buffer different from the current
	one, set buffer to OBJECT temporarily.

Stefan Monnier's avatar
Stefan Monnier committed
837 838
2004-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
839 840 841 842 843 844
	* keyboard.c (kbd_buffer_gcpro): Remove.
	(kbd_buffer_store_event, clear_event, Fdiscard_input)
	(stuff_buffered_input, init_keyboard, syms_of_keyboard):
	Don't initialize and/or maintain the variable any more.  It was made
	redundant by my commit of 2003-06-15.

Stefan Monnier's avatar
Stefan Monnier committed
845 846
	* lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.

Jan Djärv's avatar
Jan Djärv committed
847 848 849 850
2004-01-21  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* lisp.h: Add undef DECL_ALIGN.

Stefan Monnier's avatar
Stefan Monnier committed
851 852 853 854 855 856 857 858 859 860 861
2004-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>

	* process.c (wait_reading_process_input) [SYNC_INPUT]:
	Check interrupt_input_pending explicitly.

	* lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.

	* keyboard.c (handle_async_input): New fun,
	extracted from input_available_signal.
	(input_available_signal, reinvoke_input_signal): Use it.

862 863
2004-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881
	* buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.

	* lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
	manipulation macros for when tags are in the lower bits.
	(struct Lisp_Free) [USE_LSB_TAG]: Add padding.
	(DECL_ALIGN): New macro.
	(DEFUN): Use it.

	* lisp.h [ENABLE_CHECKING]: Don't force union type.

	* s/darwin.h (__attribute__): Remove outdated workaround.

	* macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.

	* alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
	Don't check range of malloc address.
	(pure_alloc) [USE_LSB_TAG]: Enforce alignment.

882 883 884 885
	* process.c (wait_reading_process_input): Lisp_Object/int mixup.

	* dired.c (Ffile_attributes): Lisp_Object/int mixup.

Kenichi Handa's avatar
Kenichi Handa committed
886 887 888 889
2004-01-19  Kenichi Handa  <handa@m17n.org>

	* fontset.c (fontset_font_pattern): Fix previous change.

890 891 892 893 894 895 896 897 898
2004-01-16  Miles Bader  <miles@gnu.ai.mit.edu>

	* xdisp.c (Voverflow_newline_into_fringe)
	(move_it_in_display_line_to, redisplay_internal)
	(update_window_fringes, redisplay_window, display_line, window):
	Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
	that it compiles without a window-system.
	* dispnew.c (direct_output_for_insert, update_window): Likewise.

Kim F. Storm's avatar
Kim F. Storm committed
899 900 901 902
2004-01-16  Kim F. Storm  <storm@cua.dk>

	* buffer.h (struct buffer): New member indicate_buffer_boundaries.

Juanma Barranquero's avatar
Juanma Barranquero committed
903
	* buffer.c (init_buffer_once): Set buffer_defaults and
Kim F. Storm's avatar
Kim F. Storm committed
904 905 906 907 908 909
	buffer_local_flags for indicate_buffer_boundaries.
	(syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
	default- variable for it.

	* dispextern.h (struct glyph_row): New members left_fringe_bitmap,
	right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
Stefan Monnier's avatar
Stefan Monnier committed
910
	New members exact_window_width_line_p and cursor_in_fringe_p for
Kim F. Storm's avatar
Kim F. Storm committed
911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954
	overflowing newlines into right fringe.
	New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
	and indicate_bottom_line_p for buffer boundaries and scrolling.
	(enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
	FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
	HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
	and HOLLOW_SQUARE_BITMAP.
	(draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
	Add prototypes.

	* dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
	instead of related indicator fields.
	Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
	(direct_output_for_insert): Handle exact width lines like
	contined lines.  Call update_window_fringes.
	(update_window): Call update_window_fringes.
	(scrolling_window): Don't skip desired rows with changed bitmaps.
	Check if fringe bitmaps changes when assigning scrolled rows.

	* xdisp.c (Voverflow_newline_into_fringe): New variable.
	(IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
	(move_it_in_display_line_to): Overflow newline into fringe for
	rows that are exactly as wide as the window.
	(up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
	(filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
	(hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
	(fringe_bitmaps): Add new bitmaps.
	(draw_fringe_bitmap): Make extern.  Remove WHICH arg.
	Select proper bitmap for cursor in fringe when appropriate.
	Handle alignment of bitmap to top or bottom of row.
	(draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
	done by update_window_fringes.
	(update_window_fringes, draw_window_fringes): New functions.
	(redisplay_internal): Call update_window_fringes in case only
	cursor row is updated.
	(redisplay_window): Call update_window_fringes.
	Explicitly call draw_window_fringes if redisplay was done using
	the current matrix or the overlay arrow is in the window.
	(try_window_reusing_current_matrix): Mark scrolled rows for
	fringe update (to update buffer-boundaries / scrolling icons).
	(find_last_unchanged_at_beg_row): Handle exact width lines line
	continued lines.
	(display_line): Overflow newline into fringe for rows that are
	exactly as wide as the window.  Don't append space for newline
Stefan Monnier's avatar
Stefan Monnier committed
955
	in this case.
Kim F. Storm's avatar
Kim F. Storm committed
956 957 958
	(notice_overwritten_cursor): Explicitly clear cursor bitmap
	in fringe as if it had been overwritten.
	(erase_phys_cursor): Erase cursor bitmap in fringe.
Stefan Monnier's avatar
Stefan Monnier committed
959
	(syms_of_xdisp): Mark show-trailing-whitespace and
Kim F. Storm's avatar
Kim F. Storm committed
960 961
	void-text-area-pointer as user options.
	DEFVAR_LISP Voverflow_newline_into_fringe.  Enable by default.
Stefan Monnier's avatar
Stefan Monnier committed
962

Kim F. Storm's avatar
Kim F. Storm committed
963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980
	* xterm.c (x_update_window_end): Call draw_window_fringes.
	(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
	in row instead of actually drawing fringe bitmaps.
	(x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
	(x_draw_window_cursor): Draw cursor in fringe.

	* w32term.c (x_update_window_end): Call draw_window_fringes.
	(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
	in row instead of actually drawing fringe bitmaps.
	(w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
	(w32_draw_window_cursor): Draw cursor in fringe.

	* macterm.c (x_update_window_end): Call draw_window_fringes.
	(x_after_update_window_line): Just set redraw_fringe_bitmaps_p
	in row instead of actually drawing fringe bitmaps.
	(x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
	(mac_draw_window_cursor): Draw cursor in fringe.

981 982 983 984 985
2004-01-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.c (handle_one_xevent): Don't handle characters that are part
	of an old style (XLookupString) compose sequence.

986 987 988 989 990
2004-01-15  Kenichi Handa  <handa@m17n.org>

	* search.c (Freplace_match): Use make_multibyte_string or
	make_unibyte_string according to the buffer multibyteness.

Stefan Monnier's avatar
Stefan Monnier committed
991 992 993 994 995 996 997 998 999 1000 1001 1002 1003
2004-01-14  Stefan Monnier  <monnier@iro.umontreal.ca>

	* alloc.c (struct interval_block, struct string_block)
	(struct symbol_block, struct marker_block, live_string_p)
	(live_cons_p, live_symbol_p, live_float_p, live_misc_p):
	Better preserve alignment for objects in blocks.
	(FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.

	* lread.c (defvar_per_buffer): Remove dead declaration.

	* macterm.c (do_check_ram_size): Don't hardcode the lisp address
	space size.

1004 1005 1006 1007 1008 1009 1010 1011 1012 1013
2004-01-12  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xmenu.c (popup_get_selection): Check new parameter down_on_keypress
	if a key press should pop down.  Only pop down if a key is pressed
	outside the menu/dialog.
	(create_and_show_popup_menu): Pass 0 for down_on_keypress to
	popup_get_selection.
	(create_and_show_dialog): Pass 1 for down_on_keypress to
	popup_get_selection.

1014 1015 1016 1017 1018
2004-01-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* alloc.c (allocate_vectorlike): Surround calls to mallopt with
	BLOCK/UNBLOCK_INPUT.

1019 1020 1021 1022 1023
2004-01-08  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
	specified.

Kenichi Handa's avatar
Kenichi Handa committed
1024 1025 1026 1027
2004-01-08  Kenichi Handa  <handa@m17n.org>

	* editfns.c (Fformat): Fix '&' to '&&'.

1028 1029 1030 1031 1032
2004-01-08  Andreas Schwab  <schwab@suse.de>

	* print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
	size if PSEUDOVECTOR_FLAG is set.

1033 1034
2004-01-07  Kenichi Handa  <handa@m17n.org>

1035 1036
	* charset.c (Fdeclare_equiv_charset): Fix docstring.

1037 1038
	* fontset.c (fontset_ref_via_base): Fix previous change.

Kim F. Storm's avatar
Kim F. Storm committed
1039 1040 1041 1042 1043
2004-01-07  Kim F. Storm  <storm@cua.dk>

	* process.c (read_process_output): Only activate adaptive
	buffering if we read less than 256 bytes at a time.

Kim F. Storm's avatar
Kim F. Storm committed
1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066
2004-01-06  Kim F. Storm  <storm@cua.dk>

	* dispnew.c (buffer_posn_from_coords): Return both buffer/string
	object and image object.  Return glyph width and height.
	(mode_line_string, marginal_area_string): Ditto.

	* dispextern.h (buffer_posn_from_coords, mode_line_string)
	(marginal_area_string): Fix prototypes.

	* keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
	POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
	(POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.

	* keyboard.c (make_lispy_position): Use modified mode_line_string,
	buffer_posn_from_coords, and marginal_area_string functions to
	include both string object and image object in the lispy position.
	Also add actual glyph width and height to position.
	(read_key_sequence): Use real buffer position from mouse
	event to find keymap property even when click is in marginal area.

	* xdisp.c (note_mode_line_or_margin_highlight): Use modified
	mode_line_string and marginal_area_string functions to handle
	both string object and image object properties.
Stefan Monnier's avatar
Stefan Monnier committed
1067

1068 1069 1070 1071 1072
2004-01-06  Andreas Schwab  <schwab@suse.de>

	* syntax.c (skip_chars): Treat '-' at end of string as ordinary
	character.

1073 1074
2004-01-02  Andreas Schwab  <schwab@suse.de>

Stefan Monnier's avatar
Stefan Monnier committed
1075 1076
	* macterm.c (emacs_options, x_initialized, same_x_server):
	Remove unused (and duplicated) definitions.
1077

Kim F. Storm's avatar
Kim F. Storm committed
1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103
2004-01-02  Kim F. Storm  <storm@cua.dk>

	* process.h (struct Lisp_Process): New members for adaptive read
	buffering: adaptive_read_buffering, read_output_delay, and
	read_output_skip.

	* process.c (ADAPTIVE_READ_BUFFERING): New conditional.
	(READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
	(READ_OUTPUT_DELAY_MAX_MAX): New constants.
	(process_output_delay_count, process_output_skip): New vars.
	(Vprocess_adaptive_read_buffering): New variable.
	(make_process): Initialize adaptive read buffering members.
	(Fstart_process): Set adaptive_read_buffering member.
	(deactivate_process): Cleanup adaptive read buffering.
	(wait_reading_process_input): Temporarily omit delayed
	subprocesses from the set of file descriptors to read from;
	adjust the select timeout if we skipped any subprocesses.
	(read_process_output): Increase adaptive read buffering delay if
	we read less than a full buffer; reduce delay when we read a
	full buffer.
	(send_process): Simplify using local Lisp_Process var.
	Reset adaptive read buffering delay after write.
	(init_process): Initialize process_output_delay_count and
	process_output_skip.
	(syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.

1104 1105
2004-01-01  Jason Rumney  <jasonr@gnu.org>

Stefan Monnier's avatar
Stefan Monnier committed
1106
	* w32term.c (w32_text_out): Use s->font, for consistency with callers.
1107

Luc Teirlinck's avatar
Luc Teirlinck committed
1108 1109 1110 1111 1112 1113
2003-12-30  Luc Teirlinck  <teirllm@auburn.edu>

	* print.c (Ferror_message_string): Add hyperlink in the docstring
	to the definition of `signal' in the Elisp manual.
	* eval.c (Fsignal): Ditto.

Juanma Barranquero's avatar
Juanma Barranquero committed
1114
2003-12-29  James Clark  <jjc@jclark.com>  (tiny change)
Eli Zaretskii's avatar
Eli Zaretskii committed
1115 1116 1117

	* fns.c (internal_equal): Return t for two NaN arguments.

1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130
2003-12-29  Richard M. Stallman  <rms@gnu.org>

	* data.c (store_symval_forwarding): Handle setting
	default-fill-column, etc., by changing the value in
	buffers that use the default.

	* minibuf.c (Fset_minibuffer_window): Doc fix.

	* fileio.c (choose_write_coding_system): Ignore auto_saving
	if using the visited file for auto saves.
	(Fwrite_region): Don't update SAVE_MODIFF
	if auto-saving in visited file.

Kenichi Handa's avatar
Kenichi Handa committed
1131 1132 1133 1134 1135 1136
2003-12-29  Kenichi Handa  <handa@m17n.org>

	* dispextern.h (face_font_available_p): Extern it.

	* fontset.c (Voverriding_fontspec_alist): New variable.
	(lookup_overriding_fontspec): New function.
Stefan Monnier's avatar
Stefan Monnier committed
1137
	(fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
Kenichi Handa's avatar
Kenichi Handa committed
1138 1139 1140 1141
	(fontset_font_pattern): Likewise.
	(regulalize_fontname): New function.
	(Fset_fontset_font): Call regulalize_fontname.
	(Fset_overriding_fontspec_internal): New function.
Stefan Monnier's avatar
Stefan Monnier committed
1142 1143
	(syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
	Defsubr Sset_overriding_fontspec_internal.
Kenichi Handa's avatar
Kenichi Handa committed
1144 1145 1146

	* xfaces.c (face_font_available_p): New function.

1147 1148 1149 1150 1151 1152 1153 1154
2003-12-28  Richard M. Stallman  <rms@gnu.org>

	* buffer.c (Fother_buffer): Don't crash if BUF is nil
	or if its name is nil.

	* buffer.c (Fkill_buffer): Don't delete auto-save file
	if it's the same as the visited file.

1155 1156 1157 1158
2003-12-28  Luc Teirlinck  <teirllm@auburn.edu>

	* coding.c (Fcheck_coding_system): Doc fix.

1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199
2003-12-28  Kim F. Storm  <storm@cua.dk>

	* Makefile.in (eval.o): Depend on dispextern.h.

	* dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
	image glyph using image's ascent.
	(mode_line_string): Return image glyph as object clicked on.
	Adjust y0 for image glyph using image's ascent.

	* dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
	(struct glyph): New members, ascent and descent.  Used to save
	this glyph's ascent and descent, instead of having.
	(struct glyph): Declare member face_id using FACE_ID_BITS.
	(find_hot_spot): Add prototype.

	* keyboard.c (Qimage): Remove extern (now in lisp.h).
	(QCmap): Declare extern.
	(make_lispy_position): When position is inside image hot-spot,
	use hot-spot element's id as posn element.

	* lisp.h (IMAGEP): New macro to test for image object type.
	(Qimage): Declare extern.

	* macfns.c (Qimage): Remove extern (now in lisp.h).
	(valid_image_p, parse_image_spec): Use IMAGEP macro.

	* macterm.c (Qface, Qmouse_face): Remove unused externs.

	* w32fns.c (Qimage): Remove extern (now in lisp.h).
	(valid_image_p, parse_image_spec): Use IMAGEP macro.

	* w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.

	* w32term.c (Qface, Qmouse_face): Remove unused externs.

	* xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
	pointer types.
	(Qrelative_width, Qalign_to): Remove unused variables.
	(Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
	(QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
	image maps.
Stefan Monnier's avatar
Stefan Monnier committed
1200
	(x_y_to_hpos_vpos): Return glyph relative coordinates through
1201 1202 1203 1204 1205 1206 1207 1208 1209
	new dx and dy args.
	Remove buffer_only_p arg (always 0).  Simplify code accordingly.
	(get_glyph_string_clip_rect): Draw cursor using glyph's rather
	than row's ascent and height, to get sensible height on tall rows.
	(build_desired_tool_bar_string): Remove Qimage extern.
	(get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
	(produce_image_glyph): Adjust it.ascent to minimum row ascent if
	image glyph is alone on the last line.
	(append_glyph, append_composite_glyph, produce_image_glyph)
Stefan Monnier's avatar
Stefan Monnier committed
1210
	(append_stretch_glyph): Set glyph's ascent and descent.
1211
	(on_hot_spot_p): New function to check if position is inside an
Stefan Monnier's avatar
Stefan Monnier committed
1212
	rectangular, circular, or polygon-shaped image hot-spot,
1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235
	(find_hot_spot): New function to search for image hot-spot.
	(Flookup_image_map): New defun to search for image hot-spot.
	(define_frame_cursor1): New aux function to determine frame pointer.
	(note_mode_line_or_margin_highlight, note_mouse_highlight):
	Handle `pointer' text property and :pointer image property to
	control frame pointer shape.  Detect image hot-spots for pointer
	and help_echo properties.  Use define_frame_cursor1.
	(note_mouse_highlight):	Use Vvoid_text_area_pointer.
	(syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
	DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.

	* xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.

	* xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
	(Qimage): Remove extern (now in lisp.h).
	(valid_image_p, parse_image_spec): Use IMAGEP macro.

	* xmenu.c (show_help_event): Remove unused code.

	* xterm.c (Qface, Qmouse_face): Remove unused externs.
	(x_draw_hollow_cursor): Draw cursor using glyph's rather than
	row's ascent and descent, to get a sensible height on tall rows.

Luc Teirlinck's avatar
Luc Teirlinck committed
1236 1237 1238 1239
2003-12-25  Luc Teirlinck  <teirllm@auburn.edu>

	* minibuf.c (Fcompleting_read): Undo previous change.

Juanma Barranquero's avatar
Juanma Barranquero committed
1240
2003-12-25  Lars Hansen  <larsh@math.ku.dk>
1241 1242 1243 1244

	* dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
	Arguments GCPRO'ed in call to file name handler.

1245 1246 1247 1248 1249
2003-12-25  Thien-Thi Nguyen  <ttn@gnu.org>

	* termcap.c (tgetst1): Scan for "%pN"; if all
	N are continuous in [1,9], remove all "%pN".

1250 1251
2003-12-24  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1252 1253
	* gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.

1254 1255 1256
	* xfaces.c (lface_fully_specified_p): Take into account that
	MAC OS always have unspecified stipple.

Thien-Thi Nguyen's avatar
Thien-Thi Nguyen committed
1257 1258 1259 1260 1261
2003-12-24  Thien-Thi Nguyen  <ttn@gnu.org>

	* tparam.c (tparam1): Add handling for `%pN', which
	means use param N for the next substitution.

1262 1263 1264 1265 1266 1267
2003-12-24  Thien-Thi Nguyen  <ttn@gnu.org>

	* xfaces.c (Fcolor_gray_p): Fix omission bug:
	In case `frame' is nil, consult the selected frame.
	(Fcolor_supported_p): Likewise.

1268 1269
2003-12-23  Luc Teirlinck  <teirllm@auburn.edu>

Luc Teirlinck's avatar
Luc Teirlinck committed
1270 1271
	* fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
	Doc fixes.
1272 1273 1274

	* minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
	and an integer.  Adapt the introductory comment accordingly.
1275 1276 1277 1278 1279
	(Fread_from_minibuffer): Delete code moved into read_minibuf.
	Doc fix.
	(Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
	read_minibuf.
	(Fcompleting_read): Delete code moved into read_minibuf.
Stefan Monnier's avatar
Stefan Monnier committed
1280
	(Ftest_completion): Make it handle obarrays and hash tables correctly.
1281

Kenichi Handa's avatar
Kenichi Handa committed
1282 1283 1284 1285 1286
2003-12-03  Kenichi Handa  <handa@m17n.org>

	* coding.c (decode_coding_iso2022): Fix for preserving UTF-8
	encoding sequence.

Kenichi Handa's avatar
Kenichi Handa committed
1287 1288 1289 1290 1291
2003-12-01  Kenichi Handa  <handa@m17n.org>

	* composite.c (syms_of_composite): Don't make the compostion hash
	table week.

Luc Teirlinck's avatar
Luc Teirlinck committed
1292 1293 1294 1295 1296 1297
2003-11-30  Luc Teirlinck  <teirllm@auburn.edu>

	* intervals.h: Add EXFUN for Fget_char_property_and_overlay.
	* textprop.c (Fget_char_property_and_overlay): New function.
	(syms_of_textprop): Defsubr it.

1298 1299
2003-11-29  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1300 1301 1302
	* dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
	to compile on terminal configuration.

1303 1304 1305 1306 1307 1308
	* fileio.c (Fread_file_name): Check use_file_dialog also before
	calling Fx_file_dialog.

	* fns.c: use_file_dialog: New variable.
	(syms_of_fns): DEFVAR_BOOL use-file-dialog.

1309 1310 1311 1312 1313
2003-11-29  Kim F. Storm  <storm@cua.dk>

	* msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
	(syms_of_msdos): Don't intern and staticpro them.

Kim F. Storm's avatar
Kim F. Storm committed
1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365
2003-11-27  Kim F. Storm  <storm@cua.dk>

	* dispnew.c (buffer_posn_from_coords): Calculate and return pixel
	coordinates relative to glyph at posn.  If glyph is an image,
	return that as object at posn.  Callers changed.
	(mode_line_string, marginal_area_string): Calculate and return
	pixel coordinates relative to glyph.  Callers changed.

	* dispextern.h (buffer_posn_from_coords, mode_line_string)
	(marginal_area_string): Fix prototypes.
	(window_box_left_offset, window_box_right_offset): Add prototypes.

	* frame.h (get_specified_cursor_type, get_window_cursor_type):
	Remove prototypes.

	* keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.

	* keyboard.c (make_lispy_position): Add x and y coordinates
	relative to the current glyph as 7th element of position.
	If glyph is an image, return it in the object element.
	(read_key_sequence): Skip checks for keymap property in cases
	where POSN_STRING is not a string (e.g. an image).

	* xdisp.c (Vdisplay_pixels_per_inch): New variable.
	(Vshow_text_cursor_in_void): New variable.
	(glyph_to_pixel_coords): Don't use negative hpos.
	(x_y_to_hpos_vpos): Fix for partially visible first glyph.
	(append_stretch_glyph): Change ascent arg to be actual value
	in pixels rather than ratio to height. Callers changed.
	(calc_pixel_width_or_height): New aux function, implementing
	pixel based artihmetic for glyph widths and heights.
	(produce_stretch_glyph): Use calc_pixel_width_or_height for
	:width, :height, :align-to, and :ascent, thus allowing these to
	be specified in pixels as well as multiples of characters.
	Don't produce stretch glyphs with zero width or height.
	(get_specified_cursor_type): Declare static.
	(get_window_cursor_type): Declare static.  Add glyph arg to be
	able to know when cursor is on an image; always substitute
	hollow-box cursor for filled-box cursor on images, to avoid
	negative images and flicker when blinking the cursor.
	(display_and_set_cursor): Pass glyph to	get_window_cursor_type.
	(note_mode_line_or_margin_highlight): Use non-text cursor rather
	than vertical scroll-bar cursor in display margins.
	(note_mouse_highlight): Use non-text cursor rather than text
	cursor in fringes and over images in the text area.
	Use non-text cursor when mouse pointer is outside editable text,
	i.e. in the void after end-of-line or end-of-buffer; this was
	already done for W32, but is now standard for all systems --
	user can toggle show-text-cursor-in-void to get old behaviour.
	(syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
	Vdisplay_pixels_per_inch.

1366 1367 1368 1369 1370 1371
2003-11-25  Andreas Schwab  <schwab@suse.de>

	* fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
	EMACS_INT to not lose bits.
	(Ffillarray): Don't set bits beyond the size of a bool vector.

Kim F. Storm's avatar
Kim F. Storm committed
1372 1373 1374 1375 1376
2003-11-25  Kim F. Storm  <storm@cua.dk>

	* print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
	define this defun on systems that cannot use stderr as lvalue.

Gerd Moellmann's avatar
Gerd Moellmann committed
1377 1378 1379 1380 1381 1382
2003-11-24  Gerd Moellmann  <gerd@gnu.org>

	* s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
	[__FreeBSD_version >= 500042]: Define as -znocombreloc because
	ld's default is incompatible with unexec.

1383 1384
2003-11-23  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
1385 1386 1387 1388 1389 1390
	* window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
	(window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
	(Fforce_window_update): New defun.
	(syms_of_window): Defsubr it.
	(Fset_window_margins, Fset_window_fringes): Doc fix.

1391 1392 1393
	* print.c (Fredirect_debugging_output): New defun.
	(syms_of_print): Defsubr it.

Luc Teirlinck's avatar
Luc Teirlinck committed
1394 1395 1396 1397
2003-11-22  Luc Teirlinck  <teirllm@auburn.edu>

	* fns.c (Fset_char_table_parent): Doc fix.

1398
2003-11-22  Kim F. Storm  <storm@cua.dk>
1399 1400 1401 1402 1403 1404 1405

	* dispnew.c (buffer_posn_from_coords): Return actual row/column
	for glyph clicked on, rather than (unused) pixel positions.
	(mode_line_string, marginal_area_string): Change X and Y args to
	pointers for returning actual row/column for glyph clicked on.
	Simplify and optimize loops.

Luc Teirlinck's avatar
Luc Teirlinck committed
1406 1407
	* dispextern.h (mode_line_string, marginal_area_string):
	Update prototypes.
1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428

	* keyboard.c (make_lispy_position): New function for generating
	mouse click positions from frame and pixel coordinates.
	Enhanced to return buffer position and actual row/column for
	events outside the text area using updated mode_line_string and
	marginal_area_string functions.
	Return left-fringe and right-fringe clicks as such, rather than
	clicks in text area.
	(make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
	pixel_to_glyph_coords, as we never use the results.
	(make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
	WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
	Eliminate unused code in WHEEL_EVENT handling.
	(make_lispy_movement): Use make_lispy_position.

	* window.c (coordinates_in_window): Remove redundant tests.
	Fix returned X pixel value for left-margin.

	* xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
	mode_line_string and marginal_area_string parameters.

Juanma Barranquero's avatar
Juanma Barranquero committed
1429
2003-11-22  Lars Hansen  <larsh@math.ku.dk>
Lars Hansen's avatar
Lars Hansen committed
1430

Stefan Monnier's avatar
Stefan Monnier committed
1431 1432
	* w32.c (struct the_group, getgrgid): Add.
	* mac.c (struct my_group, getgrgid): Add.
Luc Teirlinck's avatar
Luc Teirlinck committed
1433

Luc Teirlinck's avatar
Luc Teirlinck committed
1434 1435 1436 1437
2003-11-21  Luc Teirlinck  <teirllm@auburn.edu>

	* fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.

Lars Hansen's avatar
Lars Hansen committed
1438
2003-11-21  Lars Hansen  <larsh@math.ku.dk>
Luc Teirlinck's avatar
Luc Teirlinck committed
1439

Stefan Monnier's avatar
Stefan Monnier committed
1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452
	* dired.c (Ffile_attributes): Add parameter ID-FORMAT and
	include in call to file name handler.  Optionally translate numeric
	UID and GID to strings.  Update docstring.
	(directory_files_internal): Add parameter ID-FORMAT.
	(Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
	include in call to file name handler and call to
	directory_files_internal.  Update Docstring.
	(Fdirectory_files): Add dummy parameter in call to
	directory_files_internal.
	* lisp.h (Qinteger): Add.
	(Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
	(Ffile_attributes): Add parameter.
	* data.c (Qinteger): Export.
Lars Hansen's avatar
Lars Hansen committed
1453

Luc Teirlinck's avatar
Luc Teirlinck committed
1454 1455
2003-11-21  Luc Teirlinck  <teirllm@auburn.edu>

Luc Teirlinck's avatar
Luc Teirlinck committed
1456
	* fns.c (Freverse, Fnreverse): Doc fixes.
Luc Teirlinck's avatar
Luc Teirlinck committed
1457

Kim F. Storm's avatar
Kim F. Storm committed
1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472
2003-11-19  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (init_iterator): Initialize it->start to position
	before reseating (in case start position is invisible).
	(init_to_row_start): Set it->start to row-start.
	(redisplay_window): Accept optional_new_start if start position
	is invisible (in which case IT_CHARPOS overshoots PT).
	(display_line): Setup row->start from it->start (rather than
	it->current which is wrong if first char on line is invisible).
	When done, reseat it->start to it->current (= start of next row).
	(expose_area): Fix exposure of text area when first char (e.g. TAB)
	is only partially visible.

	* dispextern.h (struct it): New member start.

1473 1474
2003-11-17  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
1475 1476 1477 1478 1479 1480 1481
	* alloc.c (make_float, Fcons): Clear the markbit at init time.
	(make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
	of block_index outside of the macro call.
	(Fgarbage_collect): Remove null code.

	* m/amdx86-64.h: Don't redefine XPNTR.

1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500
	* keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
	of VALMASK.

	* fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
	(sxhash_string, sxhash): Use INTMASK instead of VALMASK.
	(maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.

	* lisp.h (VALMASK): Only define for non-union type.
	(MARKBIT): Remove.
	(ARRAY_MARK_FLAG): Use previous value of MARKBIT.
	(XTYPE): Define unconditionally.
	(XSETTYPE): Remove one more remnant.
	(EQ): Define differently for the union and non-union cases.
	(INTMASK): New bit mask.
	(struct Lisp_Marker): Move down to prepare for upcoming patch.
	(GC_EQ): Delegate to EQ.

	* coding.c (coding_restore_composition): Lisp_Object/int mixup.

1501 1502 1503 1504 1505
2003-11-17  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.c (x_window_to_scroll_bar): Move check of display to
	where window_id is compared.

Kim F. Storm's avatar
Kim F. Storm committed
1506 1507 1508 1509 1510 1511 1512 1513
2003-11-17  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (struct it): New member first_vpos.

	* xdisp.c (start_display): Set it->first_vpos.
	(try_window_id): Use first_vpos to start display in first _text_
	line if no reusable lines at start of window with header line.

1514 1515
2003-11-16  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

1516
	* w32fns.c (XPutPixel):
1517 1518 1519 1520 1521 1522
	* w32bdf.c (w32_init_bdf_font):
	* sunfns.c (sel_read):
	* process.c (Fmake_network_process):
	* frame.c (store_frame_param):
	* fontset.c (Fset_fontset_font):
	* emacs.c (shut_down_emacs):
Juanma Barranquero's avatar
Juanma Barranquero committed
1523
	* ccl.c (ccl_driver): Remove period at end of error message.
1524

Jan Djärv's avatar
Jan Djärv committed
1525 1526
	* config.in: Regenerate.

1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539
	* xfns.c (x_window_to_frame, x_any_window_to_frame)
	(x_non_menubar_window_to_frame, x_menubar_window_to_frame)
	(x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
	(x_create_bitmap_mask, xg_set_icon, create_frame_xic)
	(xic_set_statusarea, x_window, gif_load): Formatting adjustments.

	* xterm.h (struct x_display_info): New field xg_cursor for GTK.

	* xterm.c: Add Display * to x_window_to_scroll_bar declaration.
	(XTmouse_position, handle_one_xevent): Pass Display* to
	x_window_to_scroll_bar.
	(x_window_to_scroll_bar): Take a Display* argument.
	Check that display for frame is equal to Display* argument.
1540
	(event_handler_gdk): Remove current_dpyinfo.  Get dpyinfo from
1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559
	x_display_info_for_display instead.  Use Display in xev instead
	of GDK_DISPLAY.
	(x_dispatch_event): Call x_display_info_for_display.
	(XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
	(x_connection_closed): Call xg_display_close for GTK.
	(x_term_init): Call xg_display_open for additional displays.
	Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
	for GTK.

	* xmenu.c (single_menu_item, mouse_position_for_popup)
	(x_activate_menubar): Formatting adjustments.

	* xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
	adjustments.

	* gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
	(xg_display_close, xg_create_default_cursor)
	(xg_get_gdk_pixmap_and_mask): New functions for multiple display
	handling.
1560 1561
	(xg_left_ptr_cursor): Remove.
	(xg_set_cursor): Change cursor to GdkCursor*.  Do not create
1562 1563 1564 1565 1566 1567 1568 1569 1570
	cursor here.
	(xg_win_to_widget): Take Display* argument, call
	gdk_xid_table_lookup_for_display.
	(xg_create_frame_widgets, xg_get_file_name, create_menus)
	(xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
	(xg_create_widget, xg_create_scroll_bar): Use xg_cursor
	in FRAME_X_DISPLAY_INFO.
	(xg_get_scroll_id_for_window): Take Display* argument.
	(update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
1571
	(xg_initialize): Remove xg_left_ptr_cursor.
1572 1573 1574 1575 1576

	* gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
	Display* argument also.  Declare xg_display_open,
	xg_display_close, xg_create_default_cursor.

1577 1578 1579 1580 1581
2003-11-14  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.c (x_detect_focus_change): Do not change focus frame for
	Enter/LeaveNotify if the current focus frame has explicit focus.

Kim F. Storm's avatar
Kim F. Storm committed
1582 1583 1584 1585
2003-11-14  Kim F. Storm  <storm@cua.dk>

	* dispnew.c (update_text_area): Fix redisplay error when hscroll
	is active and first glyph is only partially visible.
1586

1587 1588 1589 1590 1591 1592 1593 1594
2003-11-13  Kenichi Handa  <handa@m17n.org>

	* xdisp.c (select_frame_for_redisplay): New function.
	(redisplay_internal): Record also selected_frame for
	unwind_redisplay.  Call select_frame_for_redisplay before
	redrawing each frame.
	(unwind_redisplay): Argument changed to a cons.

Luc Teirlinck's avatar
Luc Teirlinck committed
1595 1596 1597 1598
2003-11-12  Luc Teirlinck  <teirllm@auburn.edu>

	* fns.c (Fstring_to_multibyte): Doc fix.

Kenichi Handa's avatar