ChangeLog 465 KB
Newer Older
1 2 3 4 5
2004-03-20  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xterm.c (handle_one_xevent): Do not pass key press events to
	GTK.

6 7 8 9
2004-03-19  Richard M. Stallman  <rms@gnu.org>

	* s/sol2-6.h: Delete previous change.

Kim F. Storm's avatar
Kim F. Storm committed
10 11 12 13 14 15
2004-03-19  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
	to_charpos corresponds to newline in right fringe.  Use local
	BUFFER_POS_REACHED_P macro.

16 17 18 19 20
2004-03-19  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

	* xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
	to compile on non-window system.

Kim F. Storm's avatar
Kim F. Storm committed
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
2004-03-19  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (calc_pixel_width_or_height): Add prototype.

	* image.c (Qcenter): Move to xdisp.c.

	* xdisp.c (Qcenter): Declare here.
	(syms_of_xdisp): intern and staticpro it.
	(handle_single_display_prop): Allow space display property on all
	platforms.
	(display_mode_line): Set mode_line_p before displaying line.
	(calc_pixel_width_or_height): Declare extern.  Add separate :align-to
	handling.  Remove complex cases for fringes and scroll-bars.
	Add left, right, and center alignment positions. Add text (area)
	width/height.  Return width or height for image specs.
	(produce_stretch_glyph): Improve handling of :align-to.  Is now
	relative to left of text area by default, but other base offsets
	can be specified -- also for text lines.

	* term.c (produce_glyphs): Handle IT_STRETCH.
	(produce_stretch_glyph): New function to handle space width and
	align-to display properties on non-window systems.

Stefan Monnier's avatar
Stefan Monnier committed
44 45 46 47 48
2004-03-17  Stefan Monnier  <monnier@iro.umontreal.ca>

	* fileio.c (Fread_file_name): Set completion-ignore-case for
	case-insensitive systems.

49 50 51 52 53
2004-03-14  Masatake YAMATO  <jet@gyve.org>

	* xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
	when keymap and cursor are setup.

54 55 56 57 58
2004-03-14  Steven Tamm <steventamm@mac.com>

	* Makefile.in (XMENU_OBJ): Do not include xmenu.o if
	HAVE_CARBON is defined.

Kim F. Storm's avatar
Kim F. Storm committed
59 60 61 62 63 64 65 66
2004-03-14  Kim F. Storm  <storm@cua.dk>

	* dispextern.h (x_find_image_file): Add prototype.

	* image.c (x_find_image_file): Make extern.

	* xfns.c (x_find_image_file): Remove prototype.

Eli Zaretskii's avatar
Eli Zaretskii committed
67 68
2004-03-13  Eli Zaretskii  <eliz@elta.co.il>

Stefan Monnier's avatar
Stefan Monnier committed
69
	* Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
Eli Zaretskii's avatar
Eli Zaretskii committed
70

Stefan Monnier's avatar
Stefan Monnier committed
71
	* emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
Eli Zaretskii's avatar
Eli Zaretskii committed
72

73 74 75 76 77 78 79
2004-03-12  Richard M. Stallman  <rms@gnu.org>

	* fns.c (internal_equal): New arg PROPS controls comparing
	text properties.  All callers changed.
	(Fequal_including_properties): New function.
	(syms_of_fns): defsubr it.

Kim F. Storm's avatar
Kim F. Storm committed
80 81 82
2004-03-12  Kim F. Storm  <storm@cua.dk>

	Fix image support on MAC.  From YAMAMOTO Mitsuharu.
Stefan Monnier's avatar
Stefan Monnier committed
83

Kim F. Storm's avatar
Kim F. Storm committed
84 85 86
	* dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
	(image_background, image_background_transparent): Fix prototypes.

Stefan Monnier's avatar
Stefan Monnier committed
87
	* image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
Kim F. Storm's avatar
Kim F. Storm committed
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

	* macfns.c (x_list_fonts, x_get_font_info, x_load_font)
	(x_query_font, x_find_ccl_program, x_set_window_size)
	(x_make_frame_visible, mac_initialize, XCreatePixmap)
	(XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
	(mac_draw_line_to_pixmap): Move prototypes to macterm.h.

	* macterm.h (x_list_fonts, x_get_font_info, x_load_font)
	(x_query_font, x_find_ccl_program, x_set_window_size)
	(x_make_frame_visible, mac_initialize, XCreatePixmap)
	(XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
	(mac_draw_line_to_pixmap): Add prototypes.

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

	* macterm.c (XTread_socket): Fix mouse click on tool bar.

105 106
2004-03-11  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
107 108 109
	* dispextern.h: Move image related prototypes from xfns.c section
	to image.c.  Condition them by HAVE_WINDOW_SYSTEM rather than
	HAVE_X_WINDOWS.
Stefan Monnier's avatar
Stefan Monnier committed
110

Kim F. Storm's avatar
Typo  
Kim F. Storm committed
111
	* Makefile.in (XOBJ): Consolidate into one list.  Add image.o.
Stefan Monnier's avatar
Stefan Monnier committed
112
	Move gtkutil.o to new GTK_OBJ list.
113 114 115 116
	(XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
	(GTK_OBJ) [USE_GTK]: New declaration.
	(obj): Add $(GTK_OBJ) to list.

117
2004-03-11  Steven Tamm <steventamm@mac.com>
Eli Zaretskii's avatar
Eli Zaretskii committed
118

119 120 121 122 123
	* image.c [MAC_OSX]: Include sys/stat.h

	* macfns.c (syms_of_macfns): Remove definitions of things now
	defined in image.c

Kim F. Storm's avatar
Kim F. Storm committed
124 125 126 127 128 129 130 131 132 133 134
2004-03-11  Kim F. Storm  <storm@cua.dk>

	The following changes consolidates the identical/similar image
	support code previously found in xfns.c, w32fns.c, and macfns.c
	into a new file image.c.

	* makefile.w32-in (OBJ1): Add image.o.
	($(BLD)/image.$(O)): Add dependencies.

	* Makefile.in (XOBJ, MAC_OBJ): Add image.o.
	(image.o): Add dependencies.
Stefan Monnier's avatar
Stefan Monnier committed
135

Kim F. Storm's avatar
Kim F. Storm committed
136 137 138 139 140 141 142 143 144 145 146 147 148
	* image.c: New file with consolidated image support code.
	(COLOR_TABLE_SUPPORT): New define to control whether
	color table support is available (X only).
	(Bitmap_Record): Common name for x_bitmap_record,
	w32_bitmap_record, and mac_bitmap_record.
	(XImagePtr): Common name for pointer to XImage or equivalent.
	(XImagePtr_or_DC): New type to simplify code sharing; equivalent
	to XImagePtr on X+MAC, and to HDC on W32.
	(GET_PIXEL): Wrapper for XGetPixel or equivalent.
	(NO_PIXMAP): Common name for "None" or equivalent.
	(PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
	(RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
	(PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
Stefan Monnier's avatar
Stefan Monnier committed
149 150
	(FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
	Define with suitable equivalents on W32 and MAC for code sharing.
Kim F. Storm's avatar
Kim F. Storm committed
151 152 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
	(XDrawLine): Define on MAC for code sharing.
	(Destroy_Image, Free_Pixmap): Wrappers for code sharing.
	(IF_LIB_AVAILABLE): Macro to simplify code sharing.
	(Vx_bitmap_file_path, Vimage_cache_eviction_delay)
	(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
	(x_reference_bitmap, x_create_bitmap_from_data)
	(x_create_bitmap_from_file, x_destroy_bitmap)
	(x_destroy_all_bitmaps, x_create_bitmap_mask)
	(XGetImage, XPutPixel, XGetPixel, XDestroyImage)
	(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
	(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
	(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
	(define_image_type, lookup_image_type, valid_image_p)
	(image_error, enum image_value_type, struct image_keyword)
	(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
	(make_image, free_image, prepare_image_for_display, image_ascent)
	(four_corners_best, image_background, image_background_transparent)
	(x_clear_image_1,  x_clear_image, x_alloc_image_color)
	(make_image_cache, free_image_cache, clear_image_cache)
	(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
	(forall_images_in_image_cache, x_create_x_image_and_pixmap)
	(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
	(find_image_fsspec, image_load_qt_1, image_load_quicktime)
	(init_image_func_pointer, image_load_quartz2d)
	(struct ct_color, init_color_table, free_color_table)
	(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
	(cross_disabled_images, x_to_xcolors, x_from_xcolors)
	(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
	(x_disable_image, x_build_heuristic_mask)
	(XBM support, XPM support, PBM support, PNG support, JPEG support)
	(TIFF support, GIF support, Ghostscript support): Consolidate image
	code from xfns.c, w32fns.c, and macfns.c.
	(syms_of_image): Consolidate image related symbol setup here.
	(init_image): Consolidate image related initializations here.
Stefan Monnier's avatar
Stefan Monnier committed
185

Kim F. Storm's avatar
Kim F. Storm committed
186 187 188
	* emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
	and init_image.  Remove call to init_xfns.

Stefan Monnier's avatar
Stefan Monnier committed
189 190
	* macterm.h (struct mac_bitmap_record): Add file member.
	Not currently used, but simplifies code sharing.
Kim F. Storm's avatar
Kim F. Storm committed
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 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297

	* macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
	(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
	(x_reference_bitmap, x_create_bitmap_from_data)
	(x_create_bitmap_from_file, x_destroy_bitmap)
	(x_destroy_all_bitmaps, x_create_bitmap_mask)
	(XGetImage, XPutPixel, XGetPixel, XDestroyImage)
	(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
	(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
	(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
	(define_image_type, lookup_image_type, valid_image_p)
	(image_error, enum image_value_type, struct image_keyword)
	(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
	(make_image, free_image, prepare_image_for_display, image_ascent)
	(four_corners_best, image_background, image_background_transparent)
	(x_clear_image_1,  x_clear_image, x_alloc_image_color)
	(make_image_cache, free_image_cache, clear_image_cache)
	(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
	(forall_images_in_image_cache, x_create_x_image_and_pixmap)
	(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
	(find_image_fsspec, image_load_qt_1, image_load_quicktime)
	(init_image_func_pointer, image_load_quartz2d)
	(struct ct_color, init_color_table, free_color_table)
	(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
	(cross_disabled_images, x_to_xcolors, x_from_xcolors)
	(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
	(x_disable_image, x_build_heuristic_mask)
	(XBM support, XPM support, PBM support, PNG support, JPEG support)
	(TIFF support, GIF support, Ghostscript support): Merge with image
	code from xfns.c and macfns.c into image.c.
	(syms_of_xfns): Move image related symbols to image.c.
	(init_external_image_libraries, init_xfns): Remove; initialization
	moved to init_image in image.c.

	* w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
	(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
	(x_reference_bitmap, x_create_bitmap_from_data)
	(x_create_bitmap_from_file, x_destroy_bitmap)
	(x_destroy_all_bitmaps, x_create_bitmap_mask)
	(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
	(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
	(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
	(define_image_type, lookup_image_type, valid_image_p)
	(image_error, enum image_value_type, struct image_keyword)
	(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
	(make_image, free_image, prepare_image_for_display, image_ascent)
	(four_corners_best, image_background, image_background_transparent)
	(x_clear_image_1,  x_clear_image, x_alloc_image_color)
	(make_image_cache, free_image_cache, clear_image_cache)
	(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
	(forall_images_in_image_cache, x_create_x_image_and_pixmap)
	(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
	(struct ct_color, init_color_table, free_color_table)
	(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
	(cross_disabled_images, x_to_xcolors, x_from_xcolors)
	(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
	(x_disable_image, x_build_heuristic_mask)
	(XBM support, XPM support, PBM support, PNG support, JPEG support)
	(TIFF support, GIF support, Ghostscript support): Merge with image
	code from xfns.c and macfns.c into image.c.
	(syms_of_xfns): Move image related symbols to image.c.
	(init_external_image_libraries, init_xfns): Remove; initialization
	moved to init_image in image.c.

	* xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
	(x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
	(x_reference_bitmap, x_create_bitmap_from_data)
	(x_create_bitmap_from_file, x_destroy_bitmap)
	(x_destroy_all_bitmaps, x_create_bitmap_mask)
	(QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
	(QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
	(Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
	(define_image_type, lookup_image_type, valid_image_p)
	(image_error, enum image_value_type, struct image_keyword)
	(parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
	(make_image, free_image, prepare_image_for_display, image_ascent)
	(four_corners_best, image_background, image_background_transparent)
	(x_clear_image_1,  x_clear_image, x_alloc_image_color)
	(make_image_cache, free_image_cache, clear_image_cache)
	(Fclear_image_cache, postprocess_image, lookup_image, cache_image)
	(forall_images_in_image_cache, x_create_x_image_and_pixmap)
	(x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
	(struct ct_color, init_color_table, free_color_table)
	(lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
	(cross_disabled_images, x_to_xcolors, x_from_xcolors)
	(x_detect_edges, x_emboss, x_laplace, x_edge_detection)
	(x_disable_image, x_build_heuristic_mask)
	(XBM support, XPM support, PBM support, PNG support, JPEG support)
	(TIFF support, GIF support, Ghostscript support): Merge with
	w32fns.c and macfns.c image code into image.c.
	(syms_of_xfns): Move image related symbols to image.c.
	(init_xfns): Remove; initialization moved to init_image in image.c.

	* lisp.h (syms_of_image, init_image): Add protoypes.
	(init_xfns): Remove prototype.

	* dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
	(x_reference_bitmap, x_create_bitmap_from_data)
	(x_create_bitmap_from_file, x_destroy_bitmap)
	(x_create_bitmap_mask): Move prototypes from dispextern.h.
	(gamma_correct) [MAC_OS]: Add prototype.

	* xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
	(x_reference_bitmap, x_create_bitmap_from_data)
	(x_create_bitmap_from_file, x_destroy_bitmap)
	(x_create_bitmap_mask): Move prototypes to dispextern.h.

298 299 300 301 302
2004-03-09  Kenichi Handa  <handa@etlken2>

	* coding.c (decode_coding_emacs_mule): Handle insufficent source
	correctly.

303 304
2004-03-04  Richard M. Stallman  <rms@gnu.org>

305 306
	* s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.

307 308 309 310
	* window.c (Fdisplay_buffer): Doc fix.

	* buffer.c (Fpop_to_buffer): Doc fix.

Kim F. Storm's avatar
Kim F. Storm committed
311 312 313 314
2004-03-03  Kim F. Storm  <storm@cua.dk>

	* xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.

Stefan Monnier's avatar
Stefan Monnier committed
315 316 317 318
2004-03-02  Stefan Monnier  <monnier@iro.umontreal.ca>

	* editfns.c (Ftranslate_region): Lisp_Object/int mixup.

319 320 321 322
2004-03-02  Richard M. Stallman  <rms@gnu.org>

	* indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.

323 324 325 326
2004-03-02  Kenichi Handa  <handa@m17n.org>

	* doc.c (Fsubstitute_command_keys): Fix counding bytes.

Kim F. Storm's avatar
Kim F. Storm committed
327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350
2004-03-02  Kim F. Storm  <storm@cua.dk>

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

	* window.c (make_window): Initialize overlay_arrow_bitmap.

	* xdisp.c (Voverlay_arrow_variable_list): New variable to properly
	implement and integrate multiple overlay arrows with redisplay.
	(syms_of_xdisp): DEFVAR_LISP and initialize it.
	(last_arrow_position, last_arrow_string): Replace by properties.
	(Qlast_arrow_position, Qlast_arrow_string)
	(Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
	(syms_of_xdisp): Intern and staticpro them.
	(overlay_arrow_string_or_property, update_overlay_arrows)
	(overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
	(overlay_arrow_at_row): New functions for multiple overlay arrows.
	(redisplay_internal): Use them instead of directly accessing
	Voverlay_arrow_position etc. for multiple overlay arrows.
	(mark_window_display_accurate): Use update_overlay_arrows.
	(try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
	(try_window_id): Use overlay_arrows_changed_p.
	(get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
	(display_line): Use overlay_arrow_at_row to check multiple
	overlay arrows, and get relevant overlay-arrow-string and
Stefan Monnier's avatar
Stefan Monnier committed
351
	overlay-arrow-bitmap.  Set w->overlay_arrow_bitmap accordingly.
Kim F. Storm's avatar
Kim F. Storm committed
352 353 354 355 356 357
	(produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
	(syms_of_xdisp): Remove last_arrow_position and last_arrow_string.

	* fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
	(update_window_fringes): Remove unused code.

358 359 360 361
2004-03-01  Jason Rumney  <jasonr@gnu.org>

	* w32term.c (w32_read_socket): Fix last change to ButtonPress handling.

Juanma Barranquero's avatar
Juanma Barranquero committed
362 363 364 365 366 367
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.

368 369 370 371 372
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
373 374 375 376 377
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
378 379 380 381 382 383 384 385 386 387 388
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.

389 390
2004-02-28  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

Stefan Monnier's avatar
Stefan Monnier committed
391
	* xfns.c (x_window): Fix indentation.
392 393 394

	* xterm.c (x_calc_absolute_position): Call x_real_positions
	to get WM window sizes and use those to calculate position.
Stefan Monnier's avatar
Stefan Monnier committed
395
	(x_set_offset): Remove code commented out.
396

397 398 399 400
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
401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418
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
419
	* macterm.c (XTread_socket): Remove bufp_r and
Kim F. Storm's avatar
Kim F. Storm committed
420 421 422 423 424 425 426 427 428 429 430
	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
431
	* term.c (read_socket_hook): Fix arg list.
Kim F. Storm's avatar
Kim F. Storm committed
432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452

	* 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.

Stefan Monnier's avatar
Stefan Monnier committed
453 454 455
	* xterm.c (x_focus_changed, x_detect_focus_change):
	Remove numchars arg.  Always store event into bufp arg.
	Return nothing.  Callers changed accordingly.
Kim F. Storm's avatar
Kim F. Storm committed
456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484
	(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.

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

Stefan Monnier's avatar
Stefan Monnier committed
487
	* s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
Juanma Barranquero's avatar
Juanma Barranquero committed
488

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

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

494 495 496 497 498 499 500 501
	* 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.

Stefan Monnier's avatar
Stefan Monnier committed
502
	* macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
Juanma Barranquero's avatar
Juanma Barranquero committed
503

Stefan Monnier's avatar
Stefan Monnier committed
504 505 506
	* macterm.h [MAC_OSX]: Don't 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
507 508 509 510
	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
511

512 513 514 515 516 517 518 519 520 521
	* 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)
Stefan Monnier's avatar
Stefan Monnier committed
522 523
	(find_image_fsspec, image_load_qt_1, image_load_quicktime):
	New functions.
524
	(four_corners_best, x_create_x_image_and_pixmap)
Stefan Monnier's avatar
Stefan Monnier committed
525 526
	(x_destroy_x_image, unwind_create_frame, x_disable_image)
	(x_edge_detection, init_color_table, colors_in_color_table)
527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544
	(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)
Stefan Monnier's avatar
Stefan Monnier committed
545
	(enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
546 547 548 549
	(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.
Stefan Monnier's avatar
Stefan Monnier committed
550 551
	(unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
	New functions (from xfns.c).
552 553 554 555 556 557 558 559 560 561 562
	(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)
Stefan Monnier's avatar
Stefan Monnier committed
563 564
	(image_background_transparent): New function (from xfns.c).
	Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
565 566 567 568
	(image_load_quicktime): Add declaration.
	[MAC_OSX] (image_load_quartz2d): Likewise.
	[MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
	[MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
Stefan Monnier's avatar
Stefan Monnier committed
569
	[MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
570 571 572 573 574 575 576 577
	(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).
Stefan Monnier's avatar
Stefan Monnier committed
578 579 580 581
	(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.
582 583 584
	(HAVE_PBM): Remove #ifdef.
	(pbm_load): Sync with xfns.c.  Set img->width and img->height
	before IMAGE_BACKGROUND.
Stefan Monnier's avatar
Stefan Monnier committed
585
	(png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
586 587 588
	(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
Stefan Monnier's avatar
Stefan Monnier committed
589 590
	symbol _CGImageCreateWithPNGDataProvider is defined.
	Otherwise use image_load_quicktime.
591
	[!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
Stefan Monnier's avatar
Stefan Monnier committed
592 593
	[HAVE_PNG] (png_load): Sync with xfns.c.
	Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
594 595 596 597 598 599 600 601 602 603 604 605
	(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.
Stefan Monnier's avatar
Stefan Monnier committed
606 607
	[HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
	New functions (from xfns.c).
608
	[HAVE_TIFF] (tiff_load): Sync with xfns.c.
Stefan Monnier's avatar
Stefan Monnier committed
609
	(gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625
	(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
Stefan Monnier's avatar
Stefan Monnier committed
626 627
	HAVE_PNG.  Call EnterMovies to support animated gifs.
	Call init_image_func_pointer to bind a symbol
628
	_CGImageCreateWithPNGDataProvider if it is defined.
Juanma Barranquero's avatar
Juanma Barranquero committed
629

Stefan Monnier's avatar
Stefan Monnier committed
630
	* macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
631 632 633 634 635 636 637
	(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)
Stefan Monnier's avatar
Stefan Monnier committed
638 639 640 641 642
	(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 *.
643 644 645
	(reflect_byte): New function (from w32fns.c).
	(mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
	due to byte alignment.
Stefan Monnier's avatar
Stefan Monnier committed
646 647
	(mac_scroll_area) [TARGET_API_MAC_CARBON]:
	Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664
	(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.
Stefan Monnier's avatar
Stefan Monnier committed
665 666
	(mac_initialize_display_info): Remove dpyinfo->n_cbits.
	Set dpyinfo->color_p.  Determine dpyinfo->n_planes using HasDepth.
667 668 669 670 671
	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
Stefan Monnier's avatar
Stefan Monnier committed
672
	from a mac font name to an XLFD font name according to its script code.
673
	(x_font_name_to_mac_font_name): Apply code conversion from an XLFD
Stefan Monnier's avatar
Stefan Monnier committed
674
	font name to a mac font name according to REGISTRY and ENCODING fields.
675 676 677 678 679 680 681 682 683 684 685 686
	(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
687 688
2004-02-26  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
689 690 691 692
	* 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
693 694 695 696 697 698 699 700
	* 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).

701 702 703 704 705 706 707 708 709 710 711 712 713 714
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
715
2004-02-24  Michael Mauger  <mmaug@yahoo.com>
Jason Rumney's avatar
Jason Rumney committed
716 717 718 719

	* 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
720 721 722 723
2004-02-23  Luc Teirlinck  <teirllm@auburn.edu>

	* abbrev.c (Finsert_abbrev_table_description): Doc fix.

Jason Rumney's avatar
Jason Rumney committed
724 725 726 727 728
2004-02-22  Jason Rumney  <jasonr@gnu.org>

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

729 730 731 732
2004-02-21  Eli Zaretskii  <eliz@elta.co.il>

	* emacs.c (USAGE1): Split into two halves.
	(USAGE2): Second half of the old USAGE1.
Stefan Monnier's avatar
Stefan Monnier committed
733 734
	(USAGE3): Rename from USAGE2.
	(USAGE4): Rename from USAGE3.
735

Eli Zaretskii's avatar
Eli Zaretskii committed
736 737 738 739 740 741 742
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
743 744 745 746 747 748
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
749 750 751 752 753 754 755 756
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
Stefan Monnier's avatar
Stefan Monnier committed
757 758
	in read_socket_hook case, and repeat if full buffer is read.
	Use new local variable 'discard' to skip input after C-g.
Kim F. Storm's avatar
Kim F. Storm committed
759 760 761
	In non-read_socket_hook case, just use a single input_event, and
	call kbd_buffer_store_event on the fly for each character.

762 763 764 765 766
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
767 768 769 770 771
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
772 773 774 775 776
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
777 778
2004-02-17  Kim F. Storm  <storm@cua.dk>

Kim F. Storm's avatar
Kim F. Storm committed
779 780 781 782
	* 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
783

Kim F. Storm's avatar
Kim F. Storm committed
784 785 786 787
	* 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
788
	(in_read_avail_input): New static variable to handle re-entrancy.
Kim F. Storm's avatar
Kim F. Storm committed
789
	(read_avail_input): Change buf to pinter to read_avail_input_buf.
Kim F. Storm's avatar
Kim F. Storm committed
790 791 792
	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
793 794 795 796
	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
797 798 799 800
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
801 802 803 804 805 806
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
807 808 809 810 811
2004-02-16  Eli Zaretskii  <eliz@elta.co.il>

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

812 813 814 815
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
816 817
2004-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>

818 819 820
	* data.c (Fbyteorder):
	* fringe.c (Fdefine_fringe_bitmap):
	* xdisp.c (handle_single_display_prop):
Stefan Monnier's avatar
Stefan Monnier committed
821 822
	* xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.

Jason Rumney's avatar
Jason Rumney committed
823 824 825 826
2004-02-16  Jason Rumney  <jasonr@gnu.org>

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

827 828 829 830 831 832
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
833
	(mac_event_to_emacs_modifiers, XTread_socket): Ditto.
834

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

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

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

842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858
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
859
	(Ffringe_bitmaps_at_pos): Add missing arg declarations.
860 861 862 863 864 865 866 867 868 869

	* 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
870 871 872 873
2004-02-12  Kim F. Storm  <storm@cua.dk>

	* window.c (Fwindow_fringes): Doc fix.

874 875 876 877 878 879 880 881 882
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.

883 884 885 886 887 888 889 890 891 892
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.

893 894 895 896
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
897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926
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.
927

Kim F. Storm's avatar
Kim F. Storm committed
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 955 956 957 958 959 960 961 962 963
	* 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
964
	* macterm.c (mac_draw_bitmap): Add overlay_p arg.
Juanma Barranquero's avatar
Juanma Barranquero committed
965
	(x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
Kim F. Storm's avatar
Kim F. Storm committed
966 967
	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
968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002
	(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.

1003 1004 1005 1006 1007 1008 1009
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.

1010 1011
2004-02-07  Kim F. Storm  <storm@cua.dk>

1012 1013 1014 1015
	* xdisp.c (hscroll_window_tree): Position cursor near to right
	margin in hscrolled window when jumping to end of line (rather
	than centering cursor).

1016 1017 1018
	* process.c (wait_reading_process_input): Don't do adaptive read
	buffering if waiting for a specific process.

1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033
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.

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

1036
	* xterm.h: Add declaration of free_frame_menubar.
1037

1038 1039
	* xfns.c (x_create_bitmap_mask): Removed unused variable depth.
	(x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
1040
	(Fx_change_window_property): Add declaration of parameters type and
1041
	format.  Remove unused variable cons.
Jan Djärv's avatar
Jan Djärv committed
1042 1043 1044

	* xselect.c: Include stdio,h.

1045 1046
2004-02-05  Kenichi Handa  <handa@m17n.org>

1047 1048
	* fns.c (Fset_char_table_range): Fix previous change.

1049 1050
	* buffer.c (Fset_buffer_multibyte): Fix docstring.

1051 1052 1053 1054
2004-02-04  Luc Teirlinck  <teirllm@auburn.edu>

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

Stefan Monnier's avatar
Stefan Monnier committed
1055 1056 1057 1058 1059
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.

1060 1061 1062 1063 1064
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.

1065 1066 1067 1068 1069 1070
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.

1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082
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
1083
	(Fx_send_client_event): Move here from xfns.c.
1084 1085
	(syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.

Stefan Monnier's avatar
Stefan Monnier committed
1086
	* xfns.c (x-send-client-message): Move to xselect.c
1087 1088 1089 1090 1091 1092 1093
	(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.

1094 1095 1096 1097 1098
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.

1099 1100 1101 1102 1103
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
1104 1105 1106 1107 1108 1109 1110 1111 1112
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
1113 1114 1115 1116
2004-01-29  Eli Zaretskii  <eliz@elta.co.il>

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

1117 1118 1119 1120 1121
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
1122 1123 1124 1125
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
1126
2004-01-27  Steven Tamm  <steventamm@mac.com>
1127 1128 1129 1130

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

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

1133 1134
	* process.c (sigchld_handler): Add comment about not calling malloc.

1135 1136
	* process.h: Add extern to synch_process_termsig.

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

Stefan Monnier's avatar
Stefan Monnier committed
1139 1140 1141
	* 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.
1142

1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154
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.

1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167
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.

1168 1169 1170 1171 1172 1173 1174
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
1175 1176 1177 1178
2004-01-25  Luc Teirlinck  <teirllm@auburn.edu>

	* window.c (Fwindow_minibuffer_p): Doc fix.

Jonathan Yavner's avatar
Jonathan Yavner committed
1179 1180 1181 1182
2004-01-24  Jonathan Yavner  <jyavner@member.fsf.org>

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

1183 1184 1185 1186 1187
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
1188 1189
2004-01-21  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
1190 1191 1192 1193 1194 1195
	* 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
1196 1197
	* lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.

Jan Djärv's avatar
Jan Djärv committed
1198 1199 1200 1201
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
1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212
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.

1213 1214
2004-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>

Stefan Monnier's avatar
Stefan Monnier committed
1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232
	* 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.

1233 1234 1235 1236
	* 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
1237 1238 1239 1240
2004-01-19  Kenichi Handa  <handa@m17n.org>

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

1241 1242 1243 1244 1245 1246 1247 1248 1249
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
1250 1251 1252 1253
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
1254
	* buffer.c (init_buffer_once): Set buffer_defaults and
Kim F. Storm's avatar
Kim F. Storm committed
1255 1256 1257 1258 1259 1260
	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
1261
	New members exact_window_width_line_p and cursor_in_fringe_p for
Kim F. Storm's avatar
Kim F. Storm committed
1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305
	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
1306
	in this case.
Kim F. Storm's avatar
Kim F. Storm committed
1307 1308 1309
	(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
1310
	(syms_of_xdisp): Mark show-trailing-whitespace and
Kim F. Storm's avatar
Kim F. Storm committed
1311 1312
	void-text-area-pointer as user options.
	DEFVAR_LISP Voverflow_newline_into_fringe.  Enable by default.
Stefan Monnier's avatar
Stefan Monnier committed
1313

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
	* 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.

1332 1333 1334 1335 1336
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.

1337 1338 1339 1340 1341
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
1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354
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.

1355 1356 1357 1358 1359 1360 1361 1362 1363 1364
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.

1365 1366 1367 1368 1369
2004-01-11  Jan Dj,Ad(Brv  <jan.h.d@swipnet.se>

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

1370 1371 1372 1373 1374
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
1375 1376 1377 1378
2004-01-08  Kenichi Handa  <handa@m17n.org>

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

1379 1380 1381 1382 1383
2004-01-08  Andreas Schwab  <schwab@suse.de>

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

1384 1385
2004-01-07  Kenichi Handa  <handa@m17n.org>

1386 1387
	* charset.c (Fdeclare_equiv_charset): Fix docstring.

1388 1389
	* fontset.c (fontset_ref_via_base): Fix previous change.

Kim F. Storm's avatar
Kim F. Storm committed
1390 1391 1392 1393 1394
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
1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417
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
1418

1419 1420 1421 1422 1423
2004-01-06  Andreas Schwab  <schwab@suse.de>

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

1424 1425
2004-01-02  Andreas Schwab  <schwab@suse.de>

Stefan Monnier's avatar
Stefan Monnier committed
1426 1427
	* macterm.c (emacs_options, x_initialized, same_x_server):
	Remove unused (and duplicated) definitions.
1428

Kim F. Storm's avatar
Kim F. Storm committed
1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454
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.

1455 1456
2004-01-01  Jason Rumney  <jasonr@gnu.org>

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

Luc Teirlinck's avatar
Luc Teirlinck committed
1459 1460 1461 1462 1463 1464
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
1465
2003-12-29  James Clark  <jjc@jclark.com>  (tiny change)
Eli Zaretskii's avatar
Eli Zaretskii committed
1466 1467 1468

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

1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481
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
1482 1483 1484 1485 1486 1487
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
1488
	(fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
Kenichi Handa's avatar
Kenichi Handa committed
1489 1490 1491 1492
	(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
1493 1494
	(syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
	Defsubr Sset_overriding_fontspec_internal.
Kenichi Handa's avatar
Kenichi Handa committed
1495 1496 1497

	* xfaces.c (face_font_available_p): New function.

1498 1499 1500 1501 1502 1503 1504 1505
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.

1506 1507 1508 1509
2003-12-28  Luc Teirlinck  <teirllm@auburn.edu>

	* coding.c (Fcheck_coding_system): Doc fix.

1510 1511 1512 1513