pjs/gfx/cairo
Jeff Muizelaar 7ef4e883a8 Bug 715704. Add a quartz implementation of mark_dirty_rectangle. r=roc
We need to drop our CGImage cache when the surface has been changed by outside users.
2012-01-05 18:40:01 -05:00
..
cairo Bug 715704. Add a quartz implementation of mark_dirty_rectangle. r=roc 2012-01-05 18:40:01 -05:00
glitz/src
libpixman Bug 710992 - Fix third argument in memcmp call in pixman-image.c; r=roc 2012-01-02 19:15:04 +01:00
Makefile.in Bug 567750 - Build option to use the system Pixman. r=khuey. a=dougt 2010-09-20 21:16:37 -07:00
README Bug 715704. Add a quartz implementation of mark_dirty_rectangle. r=roc 2012-01-05 18:40:01 -05:00
add-a-stash-of-cairo_t-s.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
bad-memset.patch Bug 710992 - Fix third argument in memcmp call in pixman-image.c; r=roc 2012-01-02 19:15:04 +01:00
bgr.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
buggy-repeat.patch
cache-size.patch
cairo-qt-compile.patch Bug 561891 - QPainter is is busted after last cairo merge. r=jmuizelaar. 2010-04-29 06:25:02 -04:00
cairo-version-fixes.patch
cairo-x-visual.patch Bug 567065 - Try to create offscreen Xlib surface from existing visual if possible. r=jmuizelaar. 2010-06-16 04:32:26 -04:00
cairo_qt_a8_fallback.diff Bug 602171 - CAIRO_FORMAT_A8 not allowed for cairo-qt image backend r=jmuizelaar a=npodb 2010-12-04 00:04:47 +02:00
cairo_qt_glyphs.patch Bug 550673 - Fix glyphs rendering for cairo-qpainter-surface. r=jmuizelaar 2010-07-17 09:52:35 +03:00
clip-invariant.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
clip-rects-surface-extents.patch b=562574 fixes for cairo_copy_clip_rectangle_list and empty cairo_clip_extents r=jrmuizel 2010-07-23 10:22:51 +12:00
copyarea-with-alpha.patch b=583115 use XCopyArea for operator SOURCE with compatible COLOR_ALPHA surfaces to support simple overlapping self-copies r=jrmuizel 2010-08-03 13:26:27 +12:00
d2d.patch Bug 614721 - Remove some DirectDraw left overs. r=joedrew,jrmuizel 2011-06-10 18:27:01 +02:00
disable-previous-scaled-font-cache.patch Bug 518172. cairo: Disable the previous_scaled_font cache. r=karlt 2010-08-02 10:00:21 -04:00
disable-printing.patch
disable-server-gradients.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
disable-subpixel-antialiasing.patch Bug 363861. cairo patch for changeset 8857392e37ae; a=NPOTB 2011-01-19 21:27:54 +13:00
dwrite-glyph-extents.patch bug 568191 followup - add patch file to gfx/cairo directory, and note in README. (NPOTB) 2010-06-10 19:20:37 +01:00
empty-clip-extents.patch b=562574 fixes for cairo_copy_clip_rectangle_list and empty cairo_clip_extents r=jrmuizel 2010-07-23 10:22:51 +12:00
empty-clip-rectangles.patch b=562574 fixes for cairo_copy_clip_rectangle_list and empty cairo_clip_extents r=jrmuizel 2010-07-23 10:22:51 +12:00
ensure-text-flushed.patch Bug 563255. cairo: PDF-operators: ensure text operations flushed before emitting clip 2010-06-15 15:34:09 -04:00
fix-cairo-surface-wrapper-flush-build-warning.patch Bug 631155 - undefined return value in function '_cairo_surface_wrapper_flush'; r=jrmuizel 2011-07-11 09:14:12 -04:00
fix-cairo-win32-print-gdi-error.diff Bug 624198 - Don't use fwprintf with char* format. Flush stderr so that all error messages appears before exit. r=vlad a=jst 2011-01-21 04:26:39 +01:00
fix-clip-copy.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
fix-clip-region-simplification.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
fix-clip-test.patch cairo: Fix a clip test to test the right coordinate. r=ehsan,a=gavin 2010-08-17 20:08:57 -04:00
fix-ps-output.patch Bug 563255. cairo: PS: Add missing 'q' when resetting clip path 2010-06-15 15:15:01 -04:00
fix-unnecessary-fallback.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
fix-win32-show-glyphs-clipping.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
fix-xcopyarea-with-clips.patch b=571448 In the XCopyArea region code, don't modify src_x/y when they are later used in the unbounded fixup code r=jrmuizel 2010-06-27 20:03:16 +12:00
fix-zero-length-gradient.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
fixup-unbounded.patch Bug 668921. cairo: Fix fixup_unbounded_boxes() to work even if the box is smaller than the extents. r=ickle 2011-08-19 11:26:23 -04:00
handle-a1.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
ignore-rank0.patch
lround-c99-only.patch Revert to 176fae7de173 which was fine. 2011-09-02 09:15:54 -04:00
max-font-size.patch
missing-cairo-clip-init.diff Bug 624198 - Crash due to missing cairo_clip_init call in cairo_gstate_show_text_glyphs. r=vlad a=jst 2011-01-21 04:26:39 +01:00
native-clipping.patch Bug 562334. cairo: Fix checking in the broken version of 4efebc9638e7 2010-04-30 14:10:19 -04:00
nonfatal-assertions.patch
on-edge.patch Bug 498428. Reverting f2ef72fbe01c because of tSVG regression 2009-06-18 16:44:02 -04:00
pattern_get_surface-no-error.patch Bug 593604. cairo patch for changeset e427b4ea7e2f; a=NPOTB 2011-01-19 21:27:54 +13:00
pixman-android-cpu-detect.patch [android] read /proc/cpuinfo for cpu info 2010-05-07 16:48:33 -04:00
pixman-component-alpha.patch Bug 484954 - Propogate the component alpha flag when wrapping image surfaces to fix RGBA text on win32. r=vlad 2009-05-07 15:15:34 -04:00
pixman-export.patch Bug 648911 - Remove support for non-libxul builds. r=ted,joedrew 2011-05-23 18:54:47 +02:00
pixman-image-transform.patch Bug 637828. Reset the transform on the dest image. r=joe a=blocking-fennec 2011-03-07 19:17:37 -05:00
pixman-rename-and-endian.patch b=518506 make public pixman symbols available in --disable-libxul and --enable-system-cairo builds r=bsmedberg 2009-12-14 10:00:31 +13:00
premultiply-alpha-solid-gradients.patch Bug 539165. Fix single and multi-stop solid gradients by multiplying by the alpha component. r=roc 2010-01-18 10:36:43 -05:00
quartz-cache-CGImageRef.patch Bug 552537. Add patch to list. 2010-06-01 14:05:55 +12:00
quartz-cg-layers-fix-fallback.patch Bug 572912. Fix surface type passed to cairo_quartz_surface_create during fallback for CGLayers. r=jrmuizel 2010-06-18 21:24:15 +12:00
quartz-cglayers.patch Bug 568189. Add patches to list. 2010-06-01 14:09:44 +12:00
quartz-check-imageSurfaceEquiv.patch Bug 612662 patch 3: Drop cairo_quartz_surface_t's "imageSurfaceEquiv" member if we fail to create it. r=roc a=blocking-final+ 2010-11-19 08:56:06 -08:00
quartz-const-globals.patch Add cairo patches for Quartz gradient fixes 2009-08-26 10:05:44 -07:00
quartz-create-for-data.patch Bug 611433 - Add cairo_quartz_surface_create_for_data. r=jrmuizel a=blocking2.0 2010-12-16 23:33:07 -08:00
quartz-fallback.patch Add cairo patches for Quartz gradient fixes 2009-08-26 10:05:44 -07:00
quartz-first-stop.patch Bug 513395: Make sure the Cairo/Quartz backend returns the first stop for negative positions on the gradient line of a nonrepeating linear gradient. r=jrmuizel 2009-11-02 09:20:40 -08:00
quartz-fix-PAD.patch Bug 593270. Part 2: Treat EXTEND_PAD like EXTEND_NONE when painting. r=jrmuizel,a=joe 2010-11-12 14:42:22 +13:00
quartz-get-image-performance.patch Bug 675837 - Only flush Quartz surfaces on the success paths during cairo_quartz_get_image. r=roc 2011-08-27 12:02:03 +12:00
quartz-get-image.patch Bug 575521 - Add cairo_quartz_surface_get_image to get the image associated with a quartz surface, if it exists. r=jrmuizel,vlad,bas 2010-11-11 15:31:23 -05:00
quartz-glyph-extents.patch Add patch file to Cairo directory for bug 534260. (NPOTB) 2009-12-24 07:23:28 +00:00
quartz-is-clear.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
quartz-layers-content.patch Bug 579985. Part 3.1: Pass cairo_content_t parameter when creating CGLayer surfaces. r=jrmuizel,a=blocking 2010-11-12 14:42:22 +13:00
quartz-mark-dirty.patch Bug 715704. Add a quartz implementation of mark_dirty_rectangle. r=roc 2012-01-05 18:40:01 -05:00
quartz-mask-non-OVER.patch Bug 579985. Using CGContextSetAlpha to implement mask alpha doesn't work for some operators. r=jrmuizel,a=blocking 2010-11-12 14:42:22 +13:00
quartz-minimize-gradient-repeat.patch Add cairo patches for Quartz gradient fixes 2009-08-26 10:05:44 -07:00
quartz-optimize-OVER.patch Bug 579885. Part 4: Paint opaque surfaces using kPrivateCGCompositeCopy when possible. r=jrmuizel,a=blocking 2010-11-12 14:43:42 +13:00
quartz-refactor-surface-setup.patch Bug 593270. Part 1: Move surface setup code to a helper function. r=jrmuizel,a=joe 2010-11-12 14:42:22 +13:00
quartz-remove-snapshot.patch Bug 568189. Add patches to list. 2010-06-01 14:09:44 +12:00
quartz-repeating-radial-gradients.patch Add cairo patches for Quartz gradient fixes 2009-08-26 10:05:44 -07:00
quartz-state.patch Bug 552859. Fix cairo patch to relfect what I actually landed. Not part of the build. 2010-05-21 20:48:55 +12:00
surface-clipper.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
tee-surfaces-pointwise.patch Bug 593604. cairo patch for changeset bacc54d452a9l a=NPOTB 2011-01-19 21:27:54 +13:00
text-path-filling-threshold.patch Followup to bustage fix for bug 491595 2009-05-14 11:19:51 +12:00
unicode-printing.patch Bug 454532. cairo: Print as Unicode. r=jrmuizel 2011-09-14 11:44:15 -07:00
win32-canvas-glyph-position.patch
win32-cleartype-clipping.patch
win32-composite-src-mod.patch Bug 498428. Reverting f2ef72fbe01c because of tSVG regression 2009-06-18 16:44:02 -04:00
win32-ddb-dib.patch Bug 504920. Use cairo_set_can_convert_to_dib(TRUE) when creating optimized DDB image surfaces. r=vlad 2009-08-12 10:44:53 -04:00
win32-inline-cpp-keyword.patch Bug 694797 - Cairo fails to build with VC11 because it tries to #define inline, which is a keyword in C++; r=jrmuizel 2011-10-17 10:42:45 -04:00
win32-logical-font-scale.patch Fix DOS line endings rs=joedrew! 2011-05-26 20:41:33 +01:00
win32-raster.patch Bug 498689. Use scanline rasterizer on win32. r=joedrew, r=zweinberg 2009-06-22 15:01:50 -04:00
win32-transparent-surface.patch Bug 577200. Part 1: Add cairo API to set up a Win32 surface for an HDC with an alpha channel. r=jrmuizel 2010-07-16 09:07:44 +12:00
win32-vertically-offset-glyph.patch
wrap-source_image.patch Bug 526976: SIGFPE [@ _moz_cairo_format_stride_for_width] on BGR frame buffer r=jrmuizel 2010-03-08 17:37:58 +08:00
xlib-initialize-members.patch Bug 548793. Initialize XRender version fields if XRender isn't available. r=jrmuizel 2010-03-05 13:10:42 +13:00
zero-sized.patch
zombie-face.patch Bug 498428. Reverting f2ef72fbe01c because of tSVG regression 2009-06-18 16:44:02 -04:00

README

Snapshots of cairo and glitz for mozilla usage.

We only include the relevant parts of each release (generally, src/*.[ch]),
as we have Makefile.in's that integrate into the Mozilla build system.  For
documentation and similar, please see the official tarballs at
http://www.cairographics.org/.

VERSIONS:

  cairo (12d521df8acc483b2daa844d4f05dc2fe2765ba6)
  pixman (2f4f2fb4859931bf6dc5632d8c919e7296736427)

***** NOTE FOR VISUAL C++ 6.0 *****

VC6 is not supported.  Please upgrade to VC8.

==== Patches ====

Some specific things:

max-font-size.patch: Clamp freetype font size to 1000 to avoid overflow issues

win32-logical-font-scale.patch: set CAIRO_WIN32_LOGICAL_FONT_SCALE to 1

nonfatal-assertions.patch: Make assertions non-fatal

buggy-repeat.patch: Unconditionally turn on buggy-repeat handling to bandaid bug 413583.

cairo-version-fixes.patch: fix up cairo-version.c/cairo-version.h for in-place builds

win32-ddb-dib.patch: fix for bug 455513; not upstream yet pending feebdack

win32-vertically-offset-glyph.patch: bug 454098; vertical positioning errors when drawing glyph runs including delta-y offsets on screen via GDI

ignore-rank0.patch: bug 474886; Not redrawing the background when changing page on flickr

win32-canvas-glyph-position.patch: bug 475092; horizontal positioning errors when drawing glyph runs with delta-y offsets to canvas through win32-font

win32-cleartype-clipping.patch: bug 445087; some glyphs are clipped, mainly on right-hand edge, when ClearType is enabled and drawing to RGBA canvas

on-edge.patch: reverts the in-fill semantic change.

wrap-source_image.patch: make sure we don't free the source image until we're done with it.

zero-sized.patch: deal with zero sized surface in ways less likely to crash.

text-path-filling-threshold.patch: use path filling instead of platform glyph rasterization at a smaller size threshold of 256 device pixels, if the backend supports native filling (which we assume will be fast).

zombie-face.patch: bug 486974; leak and possible crash with @font-face{src:url()}.  Upstream commit: 0238fe2cafea2e1ed19bb222117bd73ee6898d4d

win32-raster.patch: bug 498689; use scanline rasterizer on win32

quartz-falback.patch: try to fix Quartz fallback-to-pixman path; possiby incorrect and obsoleted by Andrea Canciani patch

quartz-repeating-radial-gradients.patch: use Quartz to render repeating radial gradients instead of falling back

quartz-const-globals.patch: make some Quartz color function data const globals instead of local variables

quartz-minimze-gradient-repeat.patch: reduce the number of gradient stop repetitions we use, to improve quality of Quartz's gradient rendering

quartz-first-stop.patch: return the first stop for negative positions on the gradient line of a nonrepeating linear gradient

quartz-glyph-extents.patch: bug 534260; work around incorrect glyph extents returned by quartz for anomalous empty glyphs

quartz-state.patch: bug 522859; refactor cairo-quartz-surface so that state local to a drawing operation is stored in a cairo_quartz_drawing_state_t instead of the surface

quartz-cache-CGImageRef.patch: cache CGImageRef for a CGBitmapContext; when we reuse it, Quartz will cache stuff, improving performance

quartz-remove-snapshot.patch: remove broken implementation of backend snapshot

quartz-cglayers.patch: add support for cairo surfaces backed by CGLayers

quartz-cglayers-fix-fallback.patch: Bug 572912; fix bug in fallback code in previous patch

quartz-get-image.patch: Bug 575521; add a way to get the image surface associated with a surface

quartz-create-for-data.patch: Bug 575521; add a way to create quartz surfaces backed with application-provided data

premultiply-alpha-solid-gradients.patch: bug 539165; multiply the solid color by the alpha component before using it for a solid surface

xlib-initialize-members.path: bug 548793; initialize XRender version if the server doesn't have the extension

remove-comma: remove a comma from enum

d2d.patch: add d2d support

fix-zero-len-graident.patch: fix zero length gradients

fix-clip-copy.patch: fix clip copying

fix-clip-region-simplification.patch: fixes a bug in clip region simplifications

expand-in-stroke-limits.patch: expand the in-stroke limits to avoid a bug

d2d-dwrite.patch: update the d2d/dwrite stuff

add-a-stash-of-cairo_t-s.patch: use the stash to avoid malloc/freeing cairo_t's

bgr.patch: fix image wrapping

disable-server-graidents.patch: disable server-side gradients

clip-invariant.patch: make rasterization closer to being clip invariant

fix-unnecessary-fallback.patch: avoid unnecessary fallback

handle-a1-upload.patch: handle a1 image uploads through converter

surface-clipper.patch: remove an incorrect optimization

fix-win32-show-glyphs-clipping.patch: fix a clipping bug

native-clipping.patch: Add support for a native clipping api

quartz-is-clear.patch: Propagate the quartz is_clear flag.

cairo-qt-compile.patch: Fix compile error, return not reached, and clone_similar interface

dwrite-glyph-extents.patch: Add padding to extents of antialiased glyphs, to avoid unwanted clipping. (bug 568191)

fix-ps-output.patch: PS: Add missing 'q' when resetting clip path (42b5cac7668625c9761113ff72b47af5cfd10377)

ensure-text-flushed.patch: PDF-operators: ensure text operations flushed before emitting clip (42b5cac7668625c9761113ff72b47af5cfd10377)

fix-xcopyarea-with-clips.patch: 5d07307b691afccccbb15f773d5231669ba44f5a

cairo-x-visual.patch: make valid visua for cairo_xlib_surface_create_with_xrender_format (55037bfb2454a671332d961e061c712ab5471580)

win32-transparent-surface.patch: add API so we can create a win32 surface for an HDC and indicate the surface has an alpha channel

cairo_qt_glyphs.patch: Drop X surface from Qt surface, add support for new qt glyphs api

empty-clip-rectangles.patch: f2fa15680ec3ac95cb68d4957557f06561a7dc55

empty-clip-extents.patch: b79ea8a6cab8bd28aebecf6e1e8229d5ac017264

clip-rects-surface-extents.patch: 108b1c7825116ed3f93aa57384bbd3290cdc9181

disable-previous-scaled-font-cache.patch: Disable the previous-scaled-font-cache until we figure out our ctm handling (#583035)
 
copyarea-with-alpha.patch: support simple overlapping self copies in (some) color_alpha xlib surfaces. https://bugs.freedesktop.org/show_bug.cgi?id=29250

fix-clip-test.patch: Use y 498c10032ea3f8631a928cd7df96766f2c8ddca4

quartz-refactor-surface-setup.patch: Extract the surface-source setup chunk of _cairo_quartz_setup_state into its own function

quartz-fix-PAD.patch: Treat PAD like NONE instead of REPEAT

quartz-mask-non-OVER.patch: Don't use CGContextSetAlpha to optimize alpha masking for non-OVER operators

quartz-layers-content.patch: Store cairo content type in CGLayer surfaces

quartz-optimize-OVER.patch: Optimize OVER to SOURCE for opaque patterns

quartz-check-imageSurfaceEquiv.patch: Drop cairo_quartz_surface_t's "imageSurfaceEquiv" member variable if we have problems creating it

disable-subpixel-antialiasing.patch: Add API to disable subpixel antialiasing completely for a target surface

tee-surfaces-pointwise.patch: Composite tee subsurfaces pointwise if possible

pattern_get_surface-no-error.patch: Don't put a pattern into error if cairo_pattern_get_surface fails

missing-cairo-clip-init.diff: Missing cairo_clip_init call in cairo_gstate_show_text_glyphs lead to crash

fix-cairo-win32-print-gdi-error.diff: Don't use fwprintf with char* format.  Flush stderr so that all error messages appears before exit.

pixman-image-transform.patch: Reset the transform on pixman images when using them as destinations.

fix-cairo-surface-wrapper-flush-build-warning.patch: Ensures that _cairo_surface_wrapper_flush always returns a status, to silence the build warning

fixup-unbounded.patch: Hack to work around bad assumption.

quartz-get-image-performance: Make cairo_quartz_get_image faster in the failure case by not flushing unless we are going to succeed.

lround-c99-only.patch: Only use lround in C99 programs.

unicode-printing.patch: Print as unicode (bug 454532)

quartz-mark-dirty.patch: Add a quartz implementation of mark_dirty_rectangle (bug 715704)

==== pixman patches ====

pixman-android-cpu-detect.patch: Add CPU detection support for Android, where we can't reliably access /proc/self/auxv.

pixman-rename-and-endian.patch: include cairo-platform.h for renaming of external symbols and endian macros

NOTE: we previously supported ARM assembler on MSVC, this has been removed because of the maintenance burden

pixman-export.patch: use cairo_public for PIXMAN_EXPORT to make sure pixman symbols are not exported in libxul

bad-memset.patch: Fix third argument in memcmp call in pixman-image.c

==== disable printing patch ====

disable-printing.patch:  allows us to use NS_PRINTING to disable printing.