cairo/src
Chris Wilson 03df52a833 image: Correct origin of unbound recording surface source
Clearly demonstrated by using the test-base with the recording surfaces
and exemplified by the fallback-resolution with PDF, which is *almost*
fixed!

We're very close to making a release candidate for 1.12 now...

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2012-03-03 12:35:07 +00:00
..
drm Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
skia skia: fix compilation 2011-09-14 20:21:03 +01:00
win32 win32: Cast the surface to an image-surface to find its parent (compile fix) 2012-02-15 19:48:07 +00:00
.gitignore [build] Include all generated win32 build files in the repo 2009-01-09 15:55:24 -05:00
cairo-analysis-surface-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-analysis-surface.c analysis: replace open-coded _cairo_box_add_box() 2012-02-10 00:03:51 +00:00
cairo-arc-private.h skia: Update to use cairo_backend_t interface 2011-08-13 09:58:02 +01:00
cairo-arc.c arc: Clamp to 65536 full circles 2010-12-09 17:33:12 +01:00
cairo-array-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-array.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-atomic-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-atomic.c atomic: Tweak for compilation x86. 2010-04-29 10:04:54 +01:00
cairo-backend-private.h skia: Update to use cairo_backend_t interface 2011-08-13 09:58:02 +01:00
cairo-base64-stream.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-base85-stream.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-bentley-ottmann-rectangular.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-bentley-ottmann-rectilinear.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-bentley-ottmann.c bentley-ottman: End subsumed colinear traps 2011-09-16 13:49:24 +01:00
cairo-beos-surface.cpp doc: Move tmpl/ docs to inline docs 2010-07-08 14:27:16 +02:00
cairo-beos.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-botor-scan-converter.c botor: Remove a couple of inlines to cleanup -Winline 2011-10-10 15:22:37 +01:00
cairo-box-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-boxes-intersect.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-boxes-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-boxes.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-cache-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-cache.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-cff-subset.c cff: fallback if seac style endchar is found 2011-10-09 15:25:42 +10:30
cairo-clip-boxes.c clip: Check whether an extents only clip contains the box 2012-02-09 22:06:18 +00:00
cairo-clip-polygon.c observer: further classify general clips 2011-08-18 12:37:57 +01:00
cairo-clip-private.h spans+image: Fix clipping with polygons and spans 2012-02-28 22:27:18 +00:00
cairo-clip-region.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-clip-surface.c clip: Apply the partial boxes for clip_combine_with_surface 2012-02-09 22:08:08 +00:00
cairo-clip-tor-scan-converter.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-clip.c spans+image: Fix clipping with polygons and spans 2012-02-28 22:27:18 +00:00
cairo-cogl-context-private.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl-context.c cogl: Fix 'make check' 2011-11-09 12:34:16 +01:00
cairo-cogl-gradient-private.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl-gradient.c Remove useless checks for NULL before freeing 2011-11-12 20:49:08 +01:00
cairo-cogl-private.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-cogl-utils-private.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl-utils.c backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-cogl.h backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-color.c color: Remove unused functions 2011-07-08 11:14:16 +02:00
cairo-combsort-private.h record: Use a bbtree to reduce is-visible checking overheads 2011-07-28 14:10:13 +01:00
cairo-compiler-private.h Avoid defining inline when compling C++ on MSVC. 2011-10-17 10:48:50 -04:00
cairo-composite-rectangles-private.h xcb: track fallback damage 2011-09-19 15:23:57 +01:00
cairo-composite-rectangles.c xcb: track fallback damage 2011-09-19 15:23:57 +01:00
cairo-compositor-private.h spans+image: Fix clipping with polygons and spans 2012-02-28 22:27:18 +00:00
cairo-compositor.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-contour-private.h stroke: Convert the outlines into contour and then into a polygon 2011-08-15 10:31:47 +01:00
cairo-contour.c stroke: Convert the outlines into contour and then into a polygon 2011-08-15 10:31:47 +01:00
cairo-damage-private.h Add preliminary damage tracking 2012-02-15 14:21:00 +00:00
cairo-damage.c Add preliminary damage tracking 2012-02-15 14:21:00 +00:00
cairo-debug.c backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-default-context-private.h qt: Fix compilation, also minor fix for building against Qt5 2012-02-12 09:57:00 +00:00
cairo-default-context.c backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
cairo-deflate-stream.c Remove if's from Makefile.sources 2011-06-14 15:25:08 +02:00
cairo-deprecated.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-device-private.h device: Make flush vfunc return a cairo_status_t 2010-06-07 13:37:48 +02:00
cairo-device.c device: Flush on a finished device is a no-op 2011-07-29 13:01:59 +02:00
cairo-directfb-surface.c directfb: Discard long broken code and return to basics 2012-02-09 16:20:26 +00:00
cairo-directfb.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-drm.h drm: code dump, sorry. 2010-05-12 20:54:49 +01:00
cairo-egl-context.c egl: do not destroy dummy_surface if it does not exist 2011-12-16 16:30:12 +00:00
cairo-error-private.h skia: Update to use cairo_backend_t interface 2011-08-13 09:58:02 +01:00
cairo-error.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-fallback-compositor.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-features-uninstalled.pc.in build: Fudge the build system some more so it handles extra libs 2010-08-10 01:24:30 +02:00
cairo-features.pc.in build: Fudge the build system some more so it handles extra libs 2010-08-10 01:24:30 +02:00
cairo-fixed-private.h clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-fixed-type-private.h Update license blocks to use "Mozilla Foundation" instead of "Mozilla Corporation" 2010-05-06 16:07:43 -04:00
cairo-fixed.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-font-face-twin-data.c [twin] Improve glyph hints 2008-12-25 02:46:27 -05:00
cairo-font-face-twin.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-font-face.c doc: Fix some broken references and gtk-doc warnings 2011-01-16 18:40:49 +01:00
cairo-font-options.c doc: Fix some broken references and gtk-doc warnings 2011-01-16 18:40:49 +01:00
cairo-fontconfig-private.h Make distcheck happy. 2010-07-12 11:05:57 +01:00
cairo-freed-pool-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-freed-pool.c freed-pool: Don't access beyond the end of the array. 2010-05-20 21:57:58 +01:00
cairo-freelist-private.h botor: Remove a couple of inlines to cleanup -Winline 2011-10-10 15:22:37 +01:00
cairo-freelist-type-private.h freelist: Separate freelist inlines from the datatype in headers. 2010-09-02 14:51:30 +01:00
cairo-freelist.c drm: code dump, sorry. 2010-05-12 20:54:49 +01:00
cairo-ft-font.c ft: Export FreeType synthesis options 2012-02-29 12:04:54 +00:00
cairo-ft-private.h scaled-font: Make unscaled font utility functions static 2011-08-01 19:22:51 +02:00
cairo-ft.h ft: Export FreeType synthesis options 2012-02-29 12:04:54 +00:00
cairo-gl-composite.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl-device.c gl: Disable the msaa compositor by default (for release testing) 2011-12-15 19:12:00 +00:00
cairo-gl-dispatch-private.h gl/msaa: Add clipping support 2011-10-13 14:42:23 +01:00
cairo-gl-dispatch.c gl: Add fallback path for GLES2 implementations not supporting GL_OES_mapbuffer 2011-05-10 08:37:51 +01:00
cairo-gl-ext-def-private.h gl: Fix build issues for GLES2 2011-05-10 08:35:26 +01:00
cairo-gl-glyphs.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl-gradient-private.h gl: Compile fix, missing include cairo-pattern-private.h 2011-07-18 10:31:25 +01:00
cairo-gl-gradient.c gl: Need to increment reference count when copying operands 2011-10-09 19:54:15 +01:00
cairo-gl-info.c gl: Store the GL flavor (Desktop or ES) in the device struct 2011-05-10 08:18:15 +01:00
cairo-gl-msaa-compositor.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl-operand.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl-private.h gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl-shaders.c gl: Include use-coverage in shader hash 2011-10-11 11:39:27 +01:00
cairo-gl-source.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl-spans-compositor.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl-surface-legacy.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-gl-surface.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl-traps-compositor.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-gl.h gl: Fix build issues for GLES2 2011-05-10 08:35:26 +01:00
cairo-glx-context.c gl: Check against user-provided invalid sizes 2011-12-05 17:17:26 +00:00
cairo-gstate-private.h clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-gstate.c gstate: Prevent leak of old clip when creating a group with translation 2011-10-12 17:09:12 +01:00
cairo-hash-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-hash.c hash: Code cleanup 2011-08-03 12:31:41 +02:00
cairo-hull.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-image-compositor.c spans+image: Fix clipping with polygons and spans 2012-02-28 22:27:18 +00:00
cairo-image-info-private.h Convert mime data length to use unsigned long 2010-07-10 11:16:19 +01:00
cairo-image-info.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-image-mask-compositor.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-image-source.c image: Correct origin of unbound recording surface source 2012-03-03 12:35:07 +00:00
cairo-image-surface-private.h win32: Fix lifetime tracking of create_similar_image() 2012-02-15 18:29:26 +00:00
cairo-image-surface.c image: Add the get-font-options callback again. 2012-02-20 21:05:54 +00:00
cairo-list-private.h drm: code dump, sorry. 2010-05-12 20:54:49 +01:00
cairo-lzw.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-malloc-private.h malloc: Fix build on suncc 2011-09-04 16:23:37 -07:00
cairo-mask-compositor.c {mask,traps}-composite: Restore unsetting of the is-clear flags for the mask 2012-02-24 12:14:48 +00:00
cairo-matrix.c surface-wrapper: Apply the scaled-font ctm and non-default font-options 2012-02-28 18:11:22 +00:00
cairo-mesh-pattern-rasterizer.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-misc.c Remove useless checks for NULL before freeing 2011-07-31 16:46:36 +02:00
cairo-mono-scan-converter.c mono: Always bias initial edge advancement 2012-03-01 14:41:58 +00:00
cairo-mutex-impl-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-mutex-list-private.h Make error contexts static 2011-07-05 10:00:14 +02:00
cairo-mutex-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-mutex-type-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-mutex.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-no-compositor.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-observer.c gstate: Update cached matrix state after device transform changes on the target 2010-06-11 16:08:17 +01:00
cairo-os2-private.h os2: Fix blitting 24 bpp pixel data. 2010-08-08 22:29:39 +03:00
cairo-os2-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-os2.h os2: New API to create surfaces without a persistent HPS. 2010-08-08 22:29:39 +03:00
cairo-output-stream-private.h Convert mime data length to use unsigned long 2010-07-10 11:16:19 +01:00
cairo-output-stream.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-paginated-private.h image: extend support of direct replay for paginated surfaces 2011-07-29 18:39:27 +01:00
cairo-paginated-surface-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-paginated-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-path-bounds.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-path-fill.c fill: Fix unantialiased rectilinear-fill-to-boxes 2011-09-30 15:58:14 +01:00
cairo-path-fixed-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-path-fixed.c path-fixed: Silence gcc warnings 2012-02-20 12:32:53 +01:00
cairo-path-in-fill.c stroke: Convert the outlines into contour and then into a polygon 2011-08-15 10:31:47 +01:00
cairo-path-private.h Implement cairo_backend_t 2011-07-15 11:05:19 +01:00
cairo-path-stroke-boxes.c stroke: Use the tessellator to resolve overlapping strokes 2011-09-29 00:26:06 +01:00
cairo-path-stroke-polygon.c stroke: Fix typos 2011-11-02 13:13:32 +01:00
cairo-path-stroke-tristrip.c stroke: Fix typos 2011-11-02 13:13:32 +01:00
cairo-path-stroke.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-path.c Remove useless checks for NULL before freeing 2011-07-31 16:46:36 +02:00
cairo-pattern-private.h Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-pattern.c doc: fix typo 2012-02-14 21:04:25 +01:00
cairo-pdf-operators-private.h check: make check-headers happy 2011-08-15 00:26:09 +01:00
cairo-pdf-operators.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-pdf-shading-private.h Update FSF address 2011-07-31 13:05:21 +02:00
cairo-pdf-shading.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-pdf-surface-private.h pdf: support RASTER_SOURCE patterns 2012-01-11 23:06:34 +10:30
cairo-pdf-surface.c pdf: ensure all transparency groups are isolated 2012-02-25 16:57:58 +10:30
cairo-pdf.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-pen.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-png.c image: move surface definition to new header for subclassing 2011-08-13 09:54:28 +01:00
cairo-polygon-intersect.c polygon-intersection: The edge direction is immaterial 2012-02-09 22:44:47 +00:00
cairo-polygon-reduce.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-polygon.c polygon: Tweak the y-coordinates of the edge so that it is inside the clip 2011-12-06 14:49:27 +00:00
cairo-private.h Implement cairo_backend_t 2011-07-15 11:05:19 +01:00
cairo-ps-surface-private.h ps: support RASTER_SOURCE patterns 2012-01-31 23:53:45 +10:30
cairo-ps-surface.c pdf,ps: The device offset only needs to taken into account for raster patterns 2012-02-24 16:15:31 +00:00
cairo-ps.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-qt-surface.cpp qt: Fix compilation, also minor fix for building against Qt5 2012-02-12 09:57:00 +00:00
cairo-qt.h qt: Define cairo-qt's API as C symbols 2010-07-11 18:53:42 +02:00
cairo-quartz-font.c quartz: Fix the 32-bits build on MacOSX 10.7 2011-10-01 09:24:08 -07:00
cairo-quartz-image-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-quartz-image.h Update license blocks to use "Mozilla Foundation" instead of "Mozilla Corporation" 2010-05-06 16:07:43 -04:00
cairo-quartz-private.h quartz: Do not export private functions 2012-01-15 16:23:14 +01:00
cairo-quartz-surface.c quartz: Add missing source hook 2012-02-10 09:21:32 +00:00
cairo-quartz.h quartz: Fix the 32-bits build on MacOSX 10.7 2011-10-01 09:24:08 -07:00
cairo-raster-source-pattern.c raster-source: Do not return value in void function 2012-01-15 16:49:08 +01:00
cairo-recording-surface-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-recording-surface.c recording: Remove superfluous reset 2012-02-24 14:07:10 +00:00
cairo-rectangle.c rectangle: Fix warning 2011-10-26 15:10:59 +02:00
cairo-rectangular-scan-converter.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-reference-count-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-region-private.h Add preliminary damage tracking 2012-02-15 14:21:00 +00:00
cairo-region.c Add preliminary damage tracking 2012-02-15 14:21:00 +00:00
cairo-rtree-private.h gl: Decouple the glyph upon eviction 2011-12-07 18:00:18 +00:00
cairo-rtree.c gl: Decouple the glyph upon eviction 2011-12-07 18:00:18 +00:00
cairo-scaled-font-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-scaled-font-subsets-private.h subsetting: Support unicode fontnames 2011-09-15 22:05:22 +09:30
cairo-scaled-font-subsets.c subsets: latin char map needs to belong to the font, not the subset 2011-09-20 00:03:33 +09:30
cairo-scaled-font.c scaled-font: Assign a temporary hash value for the placeholder 2012-02-28 17:44:15 +00:00
cairo-script-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-script-surface.c script: Update mesh pattern for earlier change of csi operators 2012-02-22 17:42:16 +00:00
cairo-script.h script: Add documentation 2011-12-02 16:12:02 +00:00
cairo-shape-mask-compositor.c spans+image: Fix clipping with polygons and spans 2012-02-28 22:27:18 +00:00
cairo-skia-surface.cpp pattern: Use double precision for gradient extreme objects 2011-01-02 18:33:14 +01:00
cairo-skia.h skia: Update to use cairo_backend_t interface 2011-08-13 09:58:02 +01:00
cairo-slope-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-slope.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-spans-compositor-private.h image: Enable use of LERP_SRC for masked source composition 2011-09-30 13:07:23 +01:00
cairo-spans-compositor.c spans,traps-compositor: Check for all-clipped after intersecting clip with boxes 2012-02-29 14:40:06 +00:00
cairo-spans-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-spans.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-spline.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-stroke-dash-private.h stroke: Rely on the tessellator to remove self-intersections 2011-08-13 16:41:28 +01:00
cairo-stroke-dash.c stroke: Rely on the tessellator to remove self-intersections 2011-08-13 16:41:28 +01:00
cairo-stroke-style.c stroke-style: Silence gcc warning 2012-02-20 12:32:53 +01:00
cairo-surface-backend-private.h win32: Rebase on the new compositor infrastructure 2012-02-15 14:37:11 +00:00
cairo-surface-clipper-private.h clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-surface-clipper.c surface-clipper: Fix path leak due to typo 2011-10-12 15:56:36 +01:00
cairo-surface-fallback-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-surface-fallback.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-surface-observer-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-surface-observer.c observer: Silence gcc warning 2012-02-11 15:10:22 +01:00
cairo-surface-offset-private.h clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-surface-offset.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-surface-private.h win32: Rebase on the new compositor infrastructure 2012-02-15 14:37:11 +00:00
cairo-surface-snapshot-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-surface-snapshot.c debug: Add some TRACE statements for recording surfaces and snapshots 2012-02-24 13:51:25 +00:00
cairo-surface-subsurface-private.h subsurface: Fix 'make check' 2011-11-23 20:17:56 +01:00
cairo-surface-subsurface.c subsurface: Fix typo in snapshot creation 2012-02-24 13:51:25 +00:00
cairo-surface-wrapper-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-surface-wrapper.c surface-wrapper: Apply the scaled-font ctm and non-default font-options 2012-02-28 18:11:22 +00:00
cairo-surface.c gl: Various fixes for glyphs 2012-02-29 10:27:39 +00:00
cairo-svg-surface-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-svg-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-svg.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-tee-surface-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-tee-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-tee.h clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-time-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-time.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-tor-scan-converter.c tor: Restore the 256x15 sampling of the original rasteriser 2012-02-09 19:45:24 +00:00
cairo-tor22-scan-converter.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-toy-font-face.c font-face: Cleanup backend-specific destruction code 2011-07-31 16:46:36 +02:00
cairo-traps-compositor.c spans,traps-compositor: Check for all-clipped after intersecting clip with boxes 2012-02-29 14:40:06 +00:00
cairo-traps-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-traps.c debug-traps 2011-10-11 09:05:44 +01:00
cairo-tristrip-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-tristrip.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-truetype-subset-private.h win32: add synthetic font subsetting support 2010-11-23 00:13:56 +10:30
cairo-truetype-subset.c truetype-subset: remove unused variable 2011-12-06 20:44:22 +10:30
cairo-type1-fallback.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-type1-glyph-names.c Type 1 glyph names: Do not use an array of pointers for winansi glyph names 2010-11-06 22:45:11 +10:30
cairo-type1-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-type1-subset.c type1-subset: ensure additional glyphs required by seac operator are parsed 2012-02-18 21:49:47 +10:30
cairo-type3-glyph-surface-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-type3-glyph-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-types-private.h Add preliminary damage tracking 2012-02-15 14:21:00 +00:00
cairo-unicode.c Update FSF address 2010-04-27 11:13:38 +02:00
cairo-uninstalled.pc.in Build -uninstalled.pc files 2008-09-11 00:38:30 -04:00
cairo-user-font-private.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-user-font.c api: Extend cairo_antialias_t to include performace/quality hints 2011-08-30 15:17:38 +01:00
cairo-version.c doc: Move tmpl/ docs to inline docs 2010-07-08 14:27:16 +02:00
cairo-version.h Some nasty tracks to make changing version number not cause a total rebuild 2008-08-28 18:18:23 -04:00
cairo-vg-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-vg.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-wgl-context.c gl: Check against user-provided invalid sizes 2011-12-05 17:17:26 +00:00
cairo-wideint-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-wideint-type-private.h Add UINT32_MAX define. 2011-03-03 16:31:03 -05:00
cairo-wideint.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-win32.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-xcb-connection-core.c xcb: Use int instead of uint16_t for rowstride 2012-01-12 20:31:16 +01:00
cairo-xcb-connection-render.c xcb: Remove CAIRO_XCB_RENDER_HAS_COMPOSITE_SPANS 2011-02-28 15:54:02 +01:00
cairo-xcb-connection-shm.c Remove if's from Makefile.sources 2011-06-14 15:25:08 +02:00
cairo-xcb-connection.c xcb: Silence compiler warnings about ignored return values 2011-12-11 11:17:06 +01:00
cairo-xcb-private.h xcb: Use int instead of uint16_t for rowstride 2012-01-12 20:31:16 +01:00
cairo-xcb-screen.c surface: Bump reference count around finish 2011-11-23 17:35:39 +00:00
cairo-xcb-shm.c Revert "xcb: Fix xcb-huge-image-shm" 2011-11-18 09:59:34 +00:00
cairo-xcb-surface-cairo.c clip: Rudimentary support for clip-polygon extraction 2011-07-19 21:14:34 +01:00
cairo-xcb-surface-core.c Convert cairo_mime_surface_t to cairo_raster_source_pattern_t 2011-11-25 10:35:42 +00:00
cairo-xcb-surface-render.c xcb: Add a special case for recording surface 2011-12-11 14:04:16 +01:00
cairo-xcb-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-xcb.h Add cairo_xcb_surface_set_drawable 2011-12-02 15:31:51 +00:00
cairo-xlib-core-compositor.c xlib: Make the core compositor actually paint 2012-02-22 15:44:55 +00:00
cairo-xlib-display.c xlib: Replace obsolete disable-xrender with shiny new device debug interface 2012-02-22 10:41:37 +00:00
cairo-xlib-fallback-compositor.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-xlib-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-xlib-render-compositor.c xlib: Handle window-to-window copies by avoiding the use of a clip region 2012-02-23 13:44:28 +00:00
cairo-xlib-screen.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-xlib-source.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-xlib-surface-private.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo-xlib-surface.c xlib: Tidy conversion of xrender format to cairo_content_t 2012-02-23 13:44:28 +00:00
cairo-xlib-visual.c xlib: Fix build of xlib-xcb 2011-06-16 15:11:24 +02:00
cairo-xlib-xcb-surface.c xlib-xcb: Wrap cairo_xlib_device_debug_cap_xrender_version 2012-02-22 21:33:43 +00:00
cairo-xlib-xrender-private.h xlib: Fix compilation when gradient functions are not available 2011-02-14 11:07:02 +01:00
cairo-xlib-xrender.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo-xlib.h xlib: Replace obsolete disable-xrender with shiny new device debug interface 2012-02-22 10:41:37 +00:00
cairo-xml-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
cairo-xml.h Update FSF address 2010-04-27 11:13:38 +02:00
cairo.c Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
cairo.h device: Minor documentation fixes 2012-02-15 23:37:30 +01:00
cairo.pc.in Improve backend .pc files generation: 2006-07-12 04:27:55 -04:00
cairoint.h surface-wrapper: Apply the scaled-font ctm and non-default font-options 2012-02-28 18:11:22 +00:00
check-def.sh check: Fix for link-time-optimisation 2010-09-06 13:11:21 +01:00
check-doc-syntax.sh check: Allow unprefix type names in the title 2010-07-11 23:32:12 +02:00
check-has-hidden-symbols.c [check] Move the hidden symbol check into check-{def,plt}.sh 2008-01-11 21:21:34 +00:00
check-headers.sh Set LC_ALL=C instead of LANG=C 2009-09-16 15:50:34 -04:00
check-link.c [src/check-link.c] Simple test to check we can link to the built cairo.so 2008-09-02 21:31:43 -04:00
check-plt.sh Set LC_ALL=C instead of LANG=C 2009-09-16 15:50:34 -04:00
check-preprocessor-syntax.sh Set LC_ALL=C instead of LANG=C 2009-09-16 15:50:34 -04:00
Makefile.am Use detected EGREP instead of generic grep 2011-06-08 16:01:03 +02:00
Makefile.am.analysis Improve headers-standalone target 2011-03-21 09:51:00 +01:00
Makefile.sources spans+image: Fix clipping with polygons and spans 2012-02-28 22:27:18 +00:00
Makefile.win32 build: Clean up environment variables and flags for the win32 build 2011-06-20 10:24:21 +02:00
Makefile.win32.features backends: Adds a new Cogl based backend 2011-10-11 09:05:45 +01:00
README Fix various README typos 2009-01-02 02:56:38 -05:00
test-base-compositor-surface.c base: Remove the double application of the clip boxes 2012-03-02 12:31:41 +00:00
test-compositor-surface-private.h check: Make the newly added privates pass make check 2011-09-15 15:55:52 +01:00
test-compositor-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
test-compositor-surface.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
test-null-compositor-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
test-null-compositor-surface.h Introduce a new compositor architecture 2011-09-12 08:29:48 +01:00
test-paginated-surface.c Replace the ad-hoc surface unwrappers with a function pointer 2012-02-09 13:01:17 +00:00
test-paginated-surface.h Update FSF address 2010-04-27 11:13:38 +02:00

Cairo Library Source Code
=========================

This directory contains the source code of the cairo library.


Source Code Listing
-------------------

The canonical list of source files is the file Makefile.sources.  See that
file for how it works.


New Backends
------------

The rule of the thumb for adding new backends is to see how other
backends are integrated.  Pick one of the simpler, unsupported, backends
and search the entire tree for it, and go from there.

To add new backends you need to basically:

  * Modify $(top_srcdir)/configure.in to add checks for your backend.

  * Modify Makefile.sources to add source files for your backend,

  * Modify $(top_srcdir)/boilerplate/ to add boilerplate code for
    testing your new backend.


New API
-------

After adding new API, run "make check" in this directory and fix any
reported issues.  Also add new API to the right location in
$(top_srcdir)/doc/public/cairo-sections.txt and run "make check"
in $(top_builddir)/doc/public to make sure that any newly added
documentation is correctly hooked up.

Do not forget to add tests for the new API.  See next section.


Tests
-----

There are some tests in this directory that check the source code and
the build for various issues.  The tests are very quick to run, and
particularly should be run after any documentation or API changes.  It
does not hurt to run them after any source modification either.  Run
them simply by calling:

	make check

There are also extensive regression tests in $(top_srcdir)/test.  It is
a good idea to run that test suite for any changes made to the source
code.  Moreover, for any new feature, API, or bug fix, new tests should
be added to the regression test suite to test the new code.


Bibliography
------------

A detailed list of academic publications used in cairo code is available
in the file $(top_srcdir)/BIBLIOGRAPHY.  Feel free to update as you
implement more papers.

For more technical publications (eg. Adobe technical reports) just
point them out in a comment in the header of the file implementing them.