2004-05-11  David Reveman  <c99drn@cs.umu.se>

	* src/glitz.h (GLITZ_REVISION): Bump version to 0.1.2.

	* configure.in: Bump version to 0.1.2.

	* src/glitzint.h: Convolution filter optimizations.

	* src/glitz_program.c: Convolution filter optimizations.

2004-05-10  David Reveman  <c99drn@cs.umu.se>

	* TODO: Added polygon opacity support.

	* src/glitz_tri.c (glitz_int_composite_triangles): Added polygon
	opacity support.

	* src/glitz_trap.c (glitz_composite_trapezoids): Added polygon
	opacity support.

	* src/glitz_surface.c (glitz_surface_init): Initialize polyopacity
	to 1.0.
	Added glitz_surface_set_polyopacity.

	* src/glitzint.h: Added surface attribute polyopacity.
	Added glitz_surface_set_polyopacity.

	* src/glitz.h: Added glitz_surface_set_polyopacity.

	* src/glitz_agl_surface.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitz_glx_surface.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitz_tri.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitz_trap.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitz_rect.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitz_surface.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitz_matrix.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitz.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitz_util.c: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* src/glitzint.h: region_box -> bounding_box,
	sub_pixel_region_box -> bounding_box_double.

	* TODO: Fixed simultaneous transform and repeat.

	* src/glitz_tri.c (glitz_int_composite_triangles): Use ARGB32 format
	for mask surface.

	* src/glitz_trap.c (glitz_composite_trapezoids): Use ARGB32 format
	for mask surface.

	* src/glitz.c: Added glitz_repeat_direction_t type.
	(glitz_composite): Fixed simultaneous transform and repeat.

2004-05-09  David Reveman  <c99drn@cs.umu.se>

	* TODO: Added library cleanup functions.
	
	* src/glitzint.h: Fixed program identifier types. Added
	glitz_programs_fini.

	* src/glitz_program.c: Fixed program identifier types. Added 
	glitz_programs_fini.

	* src/glitz_glxint.h: GLX procedure addresses are now thread
	specific. Added glitz_glx_context_destroy.

	* src/glitz_glxext.h: GLX procedure addresses are now thread
	specific.

	* src/glitz_glx_surface.c: GLX procedure addresses are now thread
	specific.

	* src/glitz_glx_pbuffer.c: GLX procedure addresses are now thread
	specific.

	* src/glitz_glx_info.c: GLX procedure addresses are now thread
	specific. Added glitz_glx_thread_info_init,
	glitz_glx_thread_info_fini, glitz_glx_screen_destroy,
	glitz_glx_display_destroy, glitz_glx_init and glitz_glx_fini.

	* src/glitz_glx_format.c: GLX procedure addresses are now thread
	specific.

	* src/glitz_glx_extension.c (glitz_glx_query_extensions): GLX 
	procedure addresses are now thread specific.

	* src/glitz_glx_context.c: GLX procedure addresses are now thread
	specific. Added glitz_glx_context_destroy.
	(_glitz_glx_context_create_glx13): Free visual info structure.
	(glitz_glx_ensure_pbuffer_support): Free fbconfigs.

	* src/glitz_aglint.h: Added glitz_agl_context_destroy.

	* src/glitz_agl_info.c: Added glitz_agl_thread_info_fini,
	glitz_agl_init and glitz_agl_fini.

	* src/glitz_agl_context.c: Added glitz_agl_context_destroy.

	* src/glitz-agl.h: Added glitz_agl_init and glitz_agl_fini.

2004-05-06  David Reveman  <c99drn@cs.umu.se>

	* src/glitzint.h: Better texture handling.

	* src/glitz_texture.c: Better texture handling.

	* src/glitz_programmatic.c: Better texture handling.

	* src/glitz_surface.c: Better texture handling.

	* src/glitz_glxint.h: Better texture handling.

	* src/glitz_glx_surface.c: Better texture handling.

	* src/glitz_aglint.h: Better texture handling.

	* src/glitz_agl_surface.c: Fixed indentation.
	Better texture handling.

	* src/glitz_agl_pbuffer.c: Better texture handling.

	* src/glitz.c (_glitz_composite_direct): Fixed dirty region.
	Better texture handling.

2004-05-04  David Reveman  <c99drn@cs.umu.se>

	* src/glitz_glx_format.c (_glitz_glx_format_compare): Higher
	priority to multisample formats.

	* src/glitz_agl_surface.c (_glitz_agl_set_features): The feature 
	mask should not represent the features of the current surface
	but the features of the graphics hardware.

	* src/glitz_glx_surface.c (_glitz_glx_set_features): The feature 
	mask should not represent the features of the current surface
	but the features of the graphics hardware.

2004-05-02  David Reveman  <c99drn@cs.umu.se>

	* src/glitz_glx_format.c (glitz_glx_query_formats): Make sure
	pbuffers are really working before we allow full offscreen support.

	* src/glitz_glxint.h: Added glitz_glx_ensure_pbuffer_support.

	* src/glitz_glx_context.c: Added glitz_glx_ensure_pbuffer_support.

	* src/glitz_glx_extension.c (glitz_glx_query_extensions): Moved
	renderer declaration.

	* TODO: Added planned features and some ideas.

2004-05-01  David Reveman  <c99drn@cs.umu.se>

	* src/glitz_agl_format.c (glitz_agl_query_formats): Cleaned up 
	creation of fake offscreen formats.

	* src/glitz_glx_info.c (glitz_glx_thread_info_get): Do
	proc address lookup.
	(glitz_glx_screen_info_get): Handle errors better.
	(glitz_glx_create_root_context): Better root context creation.

	* src/glitz_glx_format.c: Cleaned up creation of fake offscreen
	formats.

	* src/glitz_glx_extension.c (glitz_glx_query_extensions): Pbuffer
	multi-sampling supported on Quadro cards.

	* src/glitz_format.c: Fixed indentation.

2004-04-30  David Reveman  <c99drn@cs.umu.se>

	* configure.in: Bump version to 0.1.1.

	* src/glitz.h (GLITZ_REVISION): Bump version to 0.1.1.

	* src/glitzint.h: Updated linear and radial surfaces.

	* src/glitz_surface.c: Updated linear and radial surfaces.

	* src/glitz_programmatic.c: Updated linear and radial surfaces.

	* src/glitz_program.c: Updated linear and radial surfaces.

	* src/glitz_matrix.c: Fixed indentation.

	* src/glitz.h: Removed glitz_distance_fixed_t. Updated linear
	and radial surfaces.

	* src/glitz.c (_glitz_composite_direct): Fixed rare source/mask
	offset bug.

2004-04-28  David Reveman  <c99drn@cs.umu.se>

	* src/glitzint.h: Added internal_format to glitz_texture_t. Added
	SURFACE_SOLID macro. Removed glitz_format_find_sufficient_standard.

	* src/glitz_util.c (glitz_get_gl_format_from_bpp): 
	Use GLITZ_GL_LUMINANCE_ALPHA instead of GLITZ_GL_ALPHA for
	A8 surfaces.

	* src/glitz_texture.c: Added support for direct compositing with mask
	surface only using multi-texturing.

	* src/glitz_surface.c: Added _glitz_surface_try_push_current.
	Added support for direct compositing with mask surface only using
	multi-texturing.
	(glitz_surface_gl_begin): Removed unnecessary set of surface status.

	* src/glitz_program.c: Added support for direct compositing with
	mask surface only using multi-texturing.

	* src/glitz_gl.h: Added GLITZ_GL_MODULATE and GLITZ_GL_LUMINANCE_ALPHA.

	* src/glitz_format.c: Removed glitz_format_find_sufficient_standard.

	* src/glitz_glxint.h: Added GLITZ_AGL_FEATURE_ARB_MULTITEXTURE_MASK.
	
	* src/glitz_aglint.h: Added GLITZ_AGL_FEATURE_ARB_MULTITEXTURE_MASK.

	* src/glitz_glx_surface.c (_glitz_glx_surface_create_similar): 
	Always use glitz_format_find_standard for similar surface formats.
	(_glitz_glx_surface_push_current): Fixed invalid set of surface status.
	
	* src/glitz_agl_surface.c (_glitz_agl_surface_create_similar): 
	Always use glitz_format_find_standard for similar surface formats.
	(_glitz_agl_surface_push_current): Fixed invalid set of surface status.

	* src/glitz_agl_pbuffer.c (glitz_agl_pbuffer_create): Use internal
	format for pbuffer.

	* src/glitz_glx_extension.c: Detect GL_ARB_multitexture extension.
	
	* src/glitz_agl_extension.c: Detect GL_ARB_multitexture extension.

	* src/glitz.h (GLITZ_FEATURE_OFFSCREEN_MULTISAMPLE_MASK): Added
	GLITZ_FEATURE_ARB_MULTITEXTURE_MASK.

	* src/glitz.c (_glitz_composite_direct): Added support for
	direct compositing with mask surface only using multi-texturing.
	(glitz_composite): Solid mask surfaces are now supported by all
	hardware.

2004-04-25  David Reveman  <c99drn@cs.umu.se>

	* src/glitz_programmatic.c (glitz_programmatic_surface_bind):
	* src/glitz_program.c: Removed unnecessary parameter from linear
	gradient program.

	* src/glitz_glx_surface.c (_glitz_glx_surface_push_current):
	* src/glitz_agl_surface.c (_glitz_agl_surface_push_current):
	Context procedure address lookup can no longer accidentally
	raise "not supported" flag during surface initialization.

2004-04-15  David Reveman  <c99drn@cs.umu.se>

	* src/Makefile.am (libglitz_agl_la_SOURCES): glitz_aglext.h not
	needed.
	(libglitz_la_SOURCES): Fixed end of line.

2004-04-10  David Reveman  <c99drn@cs.umu.se>

	* configure.in: Backend detection similar to cairo.

2004-04-06  David Reveman  <c99drn@cs.umu.se>

	* ChangeLog: Added name to ChangeLog entries.

	* src/glitz_rect.c (glitz_int_fill_rectangles): Use glClear
	for solid color and stencil fills.

	* src/glitz_surface.c (glitz_int_surface_clip_rectangles): Use
	internal stencil operators with glitz_int_fill_rectangles.

	* src/glitzint.h: Added STENCIL_RECT operators.

	* autogen.sh (AUTOMAKE_FLAGS): Removed --foreign flag.

2004-04-03  David Reveman  <c99drn@cs.umu.se>

	* src/glitz_agl_surface.c (_glitz_agl_set_features):
	* src/glitz_glx_surface.c (_glitz_glx_set_features): Fixed 
	detection of convolution filter support.

	* src/glitz_glx_pbuffer.c:
	* src/glitz_glx_context.c:
	* src/glitz_glx_surface.c:
	* src/glitz_glxint.h:
	* src/glitzint.h:
	* src/glitz_glxext.h: Removed ATI_render_texture support.

2004-04-01  David Reveman  <c99drn@cs.umu.se>

	* src/glitzint.h: Removed __internal_linkage from functions that
	should be exported to backend libraries.

2004-03-31  David Reveman  <c99drn@cs.umu.se>

	* configure.in: Fixed misplacement of AM_CONDITIONAL macros.

2004-03-30  David Reveman  <c99drn@cs.umu.se>

	Name change (libglc -> libglitz)

2004-03-27  David Reveman  <c99drn@cs.umu.se>

	Added clipping support.
	Added new polygon drawing code.

2004-03-20  David Reveman  <c99drn@cs.umu.se>

	Added color range interface.
	New fragment program for radial gradient.

2004-03-15  David Reveman  <c99drn@cs.umu.se>

	* src/glc_programmatic.c: Divide by zero fix.

2004-03-14  David Reveman  <c99drn@cs.umu.se>

	* src/Makefile.am: Don't install GL extension headers. 

	Fixed polygon bounds.

2004-03-13  David Reveman  <c99drn@cs.umu.se>

	* src/glc_glx_format.c: Use GLX13 to find visual info if GLX13 is 
	present.

2004-03-12  David Reveman  <c99drn@cs.umu.se>

	* src/glc_trap.c: Removed ugly trapezoid hack.

2004-03-08  David Reveman  <c99drn@cs.umu.se>

	Fragment program updates. Added support for combined 
	convolution and solid programmatic surface operation.

2004-03-06  David Reveman  <c99drn@cs.umu.se>

	Included our own GL extension definitions.

2004-03-05  David Reveman  <c99drn@cs.umu.se>

	Added solid programmatic surfaces.

2004-02-28  David Reveman  <c99drn@cs.umu.se>

	* src/glc_agl_extension.c: Added NPOT texture support.

	* src/glc_glx_extension.c: Added NPOT texture support.

	* src/glcint.h: Added NPOT texture support.

	* src/glc_texture.c: Added NPOT texture support.

2004-02-27  David Reveman  <c99drn@cs.umu.se>

	* src/glc.c (_glc_composite_direct): Texture coordinate fix.

	* src/glc_tri.c: Important fix for source offset bug.

	* src/glc_trap.c (glc_composite_trapezoids): Important fix for
	source offset bug.

	* src/glc.c (glc_composite): Reduced programmatic surface size.

	* src/glc_program.c: Corrected some values in the expand map.

2004-02-26  David Reveman  <c99drn@cs.umu.se>

	Added programmatic surface support. Two types on programmatic
	surfaces are currently supported, linear and radial gradients.
	I also like to have a function based gradient and linear and
	radial guassian shadings.

2004-02-23  David Reveman  <c99drn@cs.umu.se>

	* src/glc_glx_format.c (glc_glx_query_formats_glx13): 
	Use GLC_GLX_FEATURE_GLX13_MASK.

	* src/glc_glx_context.c (glc_glx_context_get): Check
	GLC_GLX_FEATURE_GLX13_MASK instead of 
	GLC_FEATURE_OFFSCREEN_DRAWING_MASK.

	* src/glc_glx_extension.c (glc_glx_query_extensions): 
	Added GLC_GLX_FEATURE_GLX13_MASK.

	* src/glcint.h: Added GLC_GLX_FEATURE_GLX13_MASK.

2004-02-21  David Reveman  <c99drn@cs.umu.se>

	* src/glc_matrix.c: Added glc_matrix_transform_region function.

	* src/glcint.h: Added push/pop functionality for transform
	matrix. Added glc_matrix_transform_region function.

	* src/glc_surface.c: Added push/pop functionality for transform
	matrix.

	* src/glc.c: Only one intermediate surface is now needed when
	doing none direct compositing with mask and the area of that
	intermediate surface is now also minimized.

2004-02-20  David Reveman  <c99drn@cs.umu.se>

	Added convolution filter support.

2004-02-18  David Reveman  <c99drn@cs.umu.se>

	Fixed dynamic lookup handling and texture rectangle support.

2004-02-16  David Reveman  <c99drn@cs.umu.se>

	* configure.in: Check version of GL headers.

	Dynamic lookup of all GL and GLX extension symbols.

2004-02-12  David Reveman  <c99drn@cs.umu.se>

	Added pixel read/draw format info.

2004-02-11  David Reveman  <c99drn@cs.umu.se>

	* src/glc.c: Sub-pixel positioning fixes.

	* src/glc_glx_surface.c: Tracking changes of format pointer location.

	Merged fragment program code. 

2004-02-06  David Reveman  <c99drn@cs.umu.se>

	* src/glc_glx_extension.c (glc_glx_query_extensions): Add offscreen
	multisample support for geforce fx cards.

	* src/glc_tri.c (glc_color_triangles): Removed component masking.

	* src/glc_trap.c (glc_color_trapezoids): Removed component masking.

	* src/glc_rect.c: Removed component masking.

	* src/glc.c (glc_composite): Removed component masking.

	* src/glc_glx_format.c: Add a few more fake
	offscreen formats.

	* src/glc_agl_format.c (glc_agl_query_formats): Add a few more fake
	offscreen formats.

	* src/glc_surface.c (glc_surface_create_similar): Force all channels
	on for intermediates.

	* src/glc_format.c (glc_format_find_standard): All componenets must
	match exactly when searching for standard formats.

	* src/glc_glx_format.c (glc_glx_query_formats_glx12): 
	Fixed so that the correct visual IDs are retrieved.

2004-02-05  David Reveman  <c99drn@cs.umu.se>

	Merged new format handling code.

2004-02-03  David Reveman  <c99drn@cs.umu.se>

	* src/glc_glx_format.c (glc_glx_find_visual_format): Don't add options
	when searching for specific visual.
	(glc_glx_find_standard_format): Remove doublebuffer flag from standard
	formats.

	* src/glc_agl_surface.c (_glc_agl_surface_swap_buffers): When surface
	is single buffered, call glFlush instead of swapping buffers.

	* src/glc_glx_surface.c (_glc_glx_surface_swap_buffers): When surface
	is single buffered, call glFlush instead of swapping buffers.

	* src/glc_agl_format.c (_glc_add_options): Force single buffering
	when double buffering is not specified.

	* src/glc_glx_format.c (_glc_add_options): Force single buffering
	when double buffering is not specified.

	Restructuring of internal rendering model. 
	AGL backend added.

2003-12-13  David Reveman  <c99drn@cs.umu.se>

	* configure.in: Added --disable-glx switch.

	* configure.in: External slim package is no longer required.

	* src/glc.h: Directly fold in slim stuff rather than
	depending on it from an external package.

	* src/glcint.h: Directly fold in slim stuff rather than
	depending on it from an external package.

2003-12-09  David Reveman  <c99drn@cs.umu.se>

	* src/glc_tri.c: Always turn off polygon smooth after rendering.

	* src/glc_trap.c: Always turn off polygon smooth after rendering.

	* src/glc_util.c: Added extension check functions.

	* src/glcint.h: Moved out extension check functions from glx backend.

	* src/glc_glx_extension.c: Check for client glx extensions and 
	validate fbconfig and pbuffer support.

	* src/glc_surface.c (glc_surface_draw_pixels): Do not draw to both
	back and front buffer.

2003-12-09  Peter Nilsson  <c99pnn@cs.umu.se>

	* src/glc.h: Moved read/draw pixels from glx backend to glc 
	core.  
	
	* src/glc_glx_surface.c: Moved read/draw pixels from glx backend to glc 
	core.  

	* src/glc_surface.c: Moved read/draw pixels from glx backend to glc 
	core. 
	
2003-12-08  David Reveman  <c99drn@cs.umu.se>

	Texture format fixes. Linux and MacOSX ATI drivers should now work.

2003-12-07  David Reveman  <c99drn@cs.umu.se>

	New system for handling texture coordinates.

	* src/glc_glx_surface.c (_glc_glx_surface_destroy): Make sure drawable
	is not current when destroying it.

	* src/glc_glx_context.c (glc_glx_context_release): Make sure context
	is not current when destroying it.

2003-12-05  David Reveman  <c99drn@cs.umu.se>

	* configure.in: Keeping up with cairo.

	* src/glcint.h: Added glc_intersect_region function.

	* src/glc_util.c: Added glc_intersect_region function. 

	* src/glc.c (glc_composite): Added support for combined repeat and 
	transformations.

	* Added conditional backend building.

2003-12-04  David Reveman  <c99drn@cs.umu.se>

	* src/glc.c (glc_composite): Use GLC_OPERATOR_IN instead of
	GLC_OPERATOR_MASK.

	* src/glc_operator.c: Removed GLC_OPERATOR_MASK.

	* src/glcint.h: Removed GLC_OPERATOR_MASK. 

	* src/glc_texture.c (glc_texture_create): Use GL_RGBA as internal 
	texture format instead of GL_RGBA8.

	* src/glc_glx_surface.c (glc_glx_surface_draw_pixels): Added glFlush
	after glTexSubImage2D.

	* src/glc_tri.c (glc_color_triangles): Added glFlush after 
	glCopyTexSubImage2D.

	* src/glc_trap.c (glc_color_trapezoids): Added glFlush after 
	glCopyTexSubImage2D.

	* src/glc_rect.c: Added glFlush after glCopyTexSubImage2D.

	* src/glc.c (glc_composite): Repeat for none power of two textures
	implemented.
	(glc_composite): Added glFlush after glCopyTexSubImage2D.

2003-12-04  David Reveman  <c99drn@cs.umu.se>

	* src/glc_surface.c (glc_surface_setup_environment): Set pack/unpack
	alignment.

	* src/glc_glx_info.c (glc_glx_screen_info_get): Set pack/unpack
	alignment.

	* src/glc_glx_surface.c (glc_glx_surface_swap_buffers): Added
	glFlush before glXSwapBuffers.

2003-12-03  David Reveman  <c99drn@cs.umu.se>

	* src/glc_texture.c: Internal texture format fixed.

	* src/glc_util.c: New transformation model.

	* src/glcint.h: New transformation model.

	* src/glc.c (glc_composite): New transformation model.
	(glc_composite): Set color mask.
	(glc_composite): glCopyTexSubImage Y offset fix.
	(glc_composite): Render to offscreen fix.

	* src/glc_surface.c (glc_surface_setup_environment): Set polygon mode.
	(glc_surface_set_transform): New transformation model.
	
	* src/glc_tri.c (glc_color_triangles): glCopyTexSubImage Y offset fix.

	* src/glc_trap.c (glc_color_trapezoids): glCopyTexSubImage Y offset
	fix.

	* src/glc_glx_surface.c (glc_glx_surface_draw_pixels): Texture Y 
	offset fix.

2003-12-01  David Reveman  <c99drn@cs.umu.se>

	* src/glc.c (glc_composite): Only pop matrix if transformations has
	been used.

	* src/glc_tri.c (glc_color_triangles): Removed unwanted 
	transformations.

	* src/glc_trap.c (glc_color_trapezoids): Removed unwanted 
	transformations.

	* src/glc_rect.c: Removed unwanted transformations.

	* src/glc.c (glc_composite): Removed unwanted transformations.

	* src/glc_surface.c: Added disable/enable transform functions.

	* src/glcint.h: Added disable/enable transform functions.

2003-11-27  David Reveman  <c99drn@cs.umu.se>

	* src/glc_glx_info.c (glc_glx_thread_info_get): Type fix for not thread
	safe building.

	* src/glc_glx_context.c: Use XID instead of GLXFBConfigID.

	* src/glc_glxint.h: Use XID instead of GLXFBConfigID.

