gecko-dev/gfx/cairo
jrmuizel@ironman.ca.mozilla.com e1a193f8d7 Bug 567295. d2d: Support antialiased clipping. r=bas
This switches from using CombineGeometry() to accumulate
clip paths to using a stack of Layers each with a
geometric mask. This avoids any imprecision that occurs
when using CombineGeometry().

There maybe some performance regressions but we need the
correctness and may be able to get some of the performance
back.
2010-06-30 14:55:21 -04:00
..
cairo Bug 567295. d2d: Support antialiased clipping. r=bas 2010-06-30 14:55:21 -04:00
glitz/src bug 445321 - remove --enable-glitz and related defines. r=vlad,ted 2008-09-30 13:53:38 -04:00
libpixman Bug 467051 - Introduce GLOBAL_DEPS to build system (gfx/cairo) r=vlad, feedback+=ted 2010-05-30 22:49:32 -04: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
bgr.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
buggy-repeat.patch b=456467; revisit cairo xlib buggy repeat handling; r=roc 2008-09-25 13:07:11 -07:00
cache-size.patch Bug 484076 - Shrink the glyph cache to fix tp_Rss regression. r=me 2009-03-23 21:53:40 -04:00
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 18829 6014c4fca4a1 2008-09-04 21:44 -0700 vladimir 2008-09-06 14:29:16 -07:00
clip-invariant.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
d2d.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
disable-printing.patch Bug 462911 - support NS_PRINTING in gfx / cairo. r=vlad 2008-11-04 07:43:45 -08:00
disable-server-gradients.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04: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
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-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-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
handle-a1.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
ignore-rank0.patch Add bug 474886 to cairo README 2009-02-06 17:33:13 -05:00
Makefile.in Bug 474825 - honor mozilla.widget.disable-native-theme preference on windows. r/sr=stuart 2009-01-28 15:39:13 -08:00
max-font-size.patch b=421017; upgrade cairo to 1.5.12-14-gd89edde -- additional fixes ; r=me 2008-03-04 21:45:09 -08: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 b=462938, Upgrade cairo to 1.8.2 and pixman to 0.12.0 [cairo piece] 2008-11-05 23:48:23 -08:00
on-edge.patch Bug 498428. Reverting f2ef72fbe01c because of tSVG regression 2009-06-18 16:44:02 -04: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-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-const-globals.patch Add cairo patches for Quartz gradient fixes 2009-08-26 10:05:44 -07: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-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-minimize-gradient-repeat.patch Add cairo patches for Quartz gradient fixes 2009-08-26 10:05:44 -07: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
README 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
surface-clipper.patch Bug 542605. Update cairo to 12d521df8acc483b2daa844d4f05dc2fe2765ba6. r=vlad,jwatt,bas 2010-04-05 22:28:54 -04:00
text-path-filling-threshold.patch Followup to bustage fix for bug 491595 2009-05-14 11:19:51 +12:00
win32-canvas-glyph-position.patch Bug 475092. Fix horizontal offsets for vertically-offset glyphs on Windows. r=vlad,r+sr=roc 2009-02-10 21:34:51 +13:00
win32-cleartype-clipping.patch Bug 445087; add extra pixel on each side of the glyph's black box returned by GetGlyphOutlineW, to avoid clipping ClearType pixels; r=(roc + vladimir) sr=roc 2009-02-24 17:53:31 +01:00
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-logical-font-scale.patch
win32-raster.patch Bug 498689. Use scanline rasterizer on win32. r=joedrew, r=zweinberg 2009-06-22 15:01:50 -04:00
win32-vertically-offset-glyph.patch Bug 454098. Fix signs for baseline offsets for glyphs on Windows. r+sr=roc 2009-01-28 22:39:35 +13:00
wince-fixes.patch Bug 461860 - windows mobile fixes in gfx r+sr=vlad 2008-12-03 08:42:03 -05:00
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 Bug 484076 - Update pixman and cairo. This upgrades Cairo to git revision c932a809d6484503d7ee267d934bbc87c8d44092. r=vlad 2009-03-20 16:02:45 -04:00
zombie-face.patch Bug 498428. Reverting f2ef72fbe01c because of tSVG regression 2009-06-18 16:44:02 -04:00

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

wince-fixes.patch: stubs out win32 functions we use but are not supported on win32.  Also implements ExtSelectClipRgn in terms of other functions available on wince.

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

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

==== 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

==== disable printing patch ====

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